학부 때 들었던 강의 내용을 복습하면서 정리해보기....
Operating System
- 운영 체제는 응용 프로그램이 실행될 수 있는 환경을 제공할 뿐만 아니라 컴퓨터 하드웨어를 관리하는 소프트웨어이다. (sw와 hw 사의의 sw)
- 어떤 컴퓨팅 자원아게 어떻게 할당할 것인가를 결정하는 자원 관리자의 역할을 한다.
- 컴퓨터의 오류 및 부적절한 사용을 방지하기 위한 제어 프로그램이기도 하다.
컴퓨터의 동작 과정
컴퓨터가 켜질 때 (부팅), Bootstrap 프로그램이 함께 켜진다. 이 프로그램은 ROM 이나 EEPROM에 적재되어 있으며 일반적으로 펌웨어라고 알려져있다.
펌웨어는 시스템을 초기화 하고 운영체제 커널을 로딩하고 실행 시킨다.
실행된 운영체제는 첫 번째 프로세스 실행을 시작하고 일부 이벤트가 발생할 때까지 기다린다.
이벤트의 발생은 일반적으로 하드웨어 또는 소프트웨어로부터의 인터럽트에 의해 트리거된다.
정리
- 컴퓨터가 켜질 때, 펌웨어가 기본적인 체크(베드섹터 등..)를 수행함
- 운영체제 커널을 로딩시킴
- interrupt가 발생하기 전 까지 대기함
- interrupt가 발생하면 다음 동작을 실행함
동작방식
보통은 한 가지 방식 (CPU burst, IO burst)으로 동작하지만, 효율적인 동작을 위해 다음과 같은 두가지 방식으로 동작하게 된다.
Multiprogramming & Multitasking
공통점: 여러개의 Job을 메모리에 올리고 한 프로세스가 CPU를 사용하다가 반납을 하면, 다른 프로세스에 CPU를 할당해서, CPU와 IO를 항상 사용하게끔 함
차이점:
Multiprogramming - 프로세스가 자발적으로 CPU를 반납하기 전까지 다른 프로세스에 CPU할당을 하지않음
Multitasking - Time Quantom(일정 시간)을 이용해 그 시간 동안만 CPU를 할당, 그 안에 프로세스가 끝나지 못하면 다른 프로새스에 Time Quantom만큼 할당
--> 스케쥴링기법
운영체제가 하는일
- 프로세스 관리
- 프로세스는 실행 중인 프로그램을 뜻함 (프로세스는 자원을 필요로 함,, CPU 메모리 등등..)
- 프로세스가 끝나면 자원이 해제되어 다른 프로세스들이 사용할 수 있게끔 됨
- 대부분의 시스템은 많은 프로세스를 갖고 있기에 동시적으로 동작되어야함
- 메모리 관리
- 메모리 생성 및 제거
- 일시정지 및 재실행
- 동기화 및 상호작용
- deadlock handling
- 저장소(RAM, ROM...) 관리
- 기본적으로 파일을 단위로 함
- 보호 및 보안
정보의 출처는 해당 도서입니다.
Provided by Operating Systems Concepts, 10th Edition (Abraham Silberschatz, Peter Baer Galvin, Greg Gagne)
'CS > OS' 카테고리의 다른 글
[OS] 6 - CPU Scheduling (1) (0) | 2024.08.23 |
---|---|
[OS] 5 - Thread (0) | 2024.08.06 |
[OS] 4 - 프로세스 간 통신 (0) | 2024.07.20 |
[OS] 3 - 프로세스 (0) | 2024.06.21 |
[OS]2 - 핵심 컴포넌트 (0) | 2024.06.17 |