운영체제 서론 (Operationg System)
프로세서 & 메인메모리
인스트럭션(Instruction)?
컴퓨터가 어느 정보를 가지고 어떠한 처리를 하는가를 나타낸다. 즉 명령어
컴퓨터를 키는 순간부터, 프로세서가 메인메모리에서 명령을 받아와서 실행시키는 일을 반복한다.
만약, 메인메모리에 운영체제가 존재하지 않는다면, 메인메모리에는 쓰레기값이 들어가 있기 때문에 할 수 있는 것이 아무것도 없다.
컴퓨터를 킨 순간부터 컴퓨터는 어떤 일을 하는가?
프로그램을 실행하려면, 컴퓨터의 하드디스크에 실행 파일들이 들어있어 이 실행 파일들을 메인메모리에 올려야 실행할 수 있다. 이런 실행 파일들을 옮겨와주는 것이 운영체제이다.
하드 디스크에서 실행하려는 파일을 찾아서 메모리에 올려주는 일을 운영체제가 한다.
프로세스는 하나이다. 그렇다면 어떻게 실행 파일들을 동시에 실행할까?
이런 역할도 운영체제가 해준다. 문서 편집 후 하드 디스크 저장, 파일 인쇄하기 등의 일들을 운영체제가 해준다.
운영체제란?
- 컴퓨터 하드웨어를 관리한다.
- 프로세서, 메모리, 디스크, 키보드, 마우스, GPS, 스피커, 네트워크, 모니터….
- 성능 향상
- 사용자에게 편의성 제공
부팅
프로세스와 메인 메모리, 하드디스크(보조기억장치)
메인 메모리
- RAM
- 메인 메모리에 대부분을 차지한다.
- 수백 메가바이트 ~ 수 기가바이트
- 휘발성 메모리라서 전원을 껐다 키면 다 사라진다.
- 메인 메모리에 대부분을 차지한다.
- ROM
- 극히 일부분이다.
- 수십 키로바이트 ~ 수백 키로바이트
- 전원과 상관없이 내용이 유지된다.
- 전원을 켰을 때 해야할 명령들이 순서대로 메모되어있다.
- 극히 일부분이다.
- 컴퓨터 전원을 켰을 때 (ROM에 적혀있는 내용)
- POST(Power-On Self Test) : 컴퓨터가 전원이 켜질때 하는 셀프 테스트
- Boot Loader : 하드디스크 안을 뒤져서 OS(Operating System)를 메인메모리에 들고온다. (RAM으로)
- ROM의 역할은 끝!!
OS가 RAM에 올라온 후부터는 전원을 끌 때까지 OS는 메인 메모리(RAM)에 항상 올라와있다.
다른 프로그램은 실행할 때만 메인메모리에 올라와있는 것과는 달리!!
그래서 OS를 다른 말로 Resident
라고 한다. (상주한다)
또한 OS는 여러가지 하드웨어를 관리한다.
App[Command Interpreter(shell)[kernel[OS[하드웨어]OS]kernel]Command Interpreter(shell)]App
윈도우는 GUI로 명령을 내리지만, 리눅스는 Text로 명령을 내린다. (ls, who, df)
kernel & command interpreter(shell)
운영체제(OS)
- kernel
-
shell
- kernel
- cpu, 메모리, 디스크를 관리한다.
- 잘 보이지않음
- shell
- 사용자의 명령어를 해석하여 그 결과를 보여준다.
운영체제의 위치
App은 OS 위에서 실행된다. 한 프로그램이 돌기 위해서는 OS가 꼭 필요하다.
- 하드웨어 > OS > Application
- 운영체제는 정부와 비슷하다.
- 자원 관리자 (Resource Management)
- 자원 할당자 (Resource Allocation)
- 주어진 자원 활용
- 업무별로 나누어지는 부서(프로세스, 메모리, 입출력 장치, 파일시스템)
- 직접 일하지는 않는다.
Process Management CPU 관리자가 제일 중요함! 그 다음엔 Memory Management 메모리 관리자가 중요!