파게로그

운영체제의 구조 본문

콤퓨타 왕왕기초/OS

운영체제의 구조

파게 2020. 11. 13. 14:58
1.4 Operating-System Structure

 

multiprogramming을 가능하게 한다. 이를 통해 CPU 이용률을 향상시킨다.

- 메모리에 동시에 몇 개의 작업을 유지한다.

- 작업은 초기적으로 디스크 상의 job pool에 유지된다. 이는 메인 메모리에의 할당을 위해 디스크에 상주한다.

 

time sharing(시분할, or multitasking)은 멀티프로그래밍의 논리적 확장이다.

- 다수의 작업 간 전환이 굉장히 빠르게 일어나서 사용자들을 그것을 알아차릴 수 없어, interact가 가능하다.

- user는 입력 장치를 통해 OS에 instruction을 주고 -> 출력 장치를 통해 즉각적인 결과를 기다린다.

- 따라서 resopnse time이 짧아야만 한다.

 

프로세스: A program loaded into memory and executing

- 주로 I/O가 일어나기 전까지 짧게 실행된다.

- 예를 들어, 사람이 키보드로 타이핑하는 동안 운영체제는 CPU를 다른 사용자나 다른 프로그램에 할당한다.

 

연관된 개념들

- 이러한 과정에서 메모리에 다른 프로그램을 위한 공간이 없으면 시스템은 job pool에서 '선택'을 해야만 하고, 이러한 결정에는 job scheduling이 포함된다.

- 이는 또한 memory management를 필요로 할 것이다.

- CPU가 어떤 작업을 먼저 처리할 것인가에 대해 선택해야만 하고, 이것이 CPU scheduling이다.

- 시분할에서 합리적인 응답 시간을 확보하고자 메인 메모리와 디스크 사이의 swapping이 이용된다.

- 보다 흔한 방법으로는 완전히 메모리에 올라와있지 않은 프로세스를 실행할 수 있도록 하는 virtual memory가 있다. 이는 physical memory보다 큰 프로그램을 구동할 수 있도록 한다. 이는 크고 균일한 저장소의 배열로서 메인 메모리를 추상화하여 logical memory로 분할한다.

- file system은 disk management를 필요로 한다.

- 시분할 시스템은 적절하지 않은 사용으로부터 자원을 보호하는 방식을 제공한다.

- job synchronization and communication 매커니즘을 질서 있는 실행을 위해 제공한다.

'콤퓨타 왕왕기초 > OS' 카테고리의 다른 글

프로세스 관리  (0) 2020.11.17
운영체제의 작동  (0) 2020.11.17
컴퓨터 시스템 아키텍쳐  (0) 2020.11.10
컴퓨터와 시스템의 작동과 구조  (0) 2020.11.10
운영체제의 역할  (0) 2020.11.09
Comments