전공 이론 공부/운영체제

공룡책으로 공부하는 운영체제 Chapter 2. Operating-System Structures

쿠몬e 2021. 11. 12. 00:18

Reference: Abraham Silberschatz, Peter B. Galvin, Greg Gagne의 『Operating System Concept 9th Edition』

 


2.1 Operating-System Services

운영체제 서비스 구성

1. 사용자 인터페이스 (UI)

  - 거의 모든 운영체제는 사용자 인터페이스를 가진다.

  - CLI(Command-Line Interface): 텍스트 명령어 사용 (터미널 같이)

  - Batch Interface: 명령어들과 디렉티브가 입력된 파일이 실행됨

  - GUI(Graphical User Interface): 가장 보편화됨/ 메뉴를 고르고, 선택을 하고, 텍스트 입력을 위해 키보드 입력을 할 수 있음 (윈도우 화면 생각하면 편함)

 

2. 프로그램 실행 (Program execution)

  - 시스템은 프로그램을 메모리에 적재하고 실행할 수 있어야 한다.

  - 프로그램은 자신의 실행을 비정상적으로든 정상적으로든 멈출 수 있어야 한다.

 

3. I/O 연산들 (I/O operations)

  - 실행중인 프로그램은 파일이나 I/O장치의 I/O를요구할 수 있다.

  - 효율성과 보안 때문에 사용자들은 I/O 장치에 직접적으로 접근이 불가능하므로, 운영체제가 I/O를 할 수 있는 수단을 제공해야 한다.

 

4. 파일 시스템 조작 (File-system manipulation)

  - 프로그램들은 파일과 디렉터리를 읽고 쓰고, 생성, 삭제 등 조작을 할 수 있어야 한다.

  -  많은 운영체제들은 개인의 선택을 허락하고, 특정한 기능(specific features)이나 성능적인 기능(performance characteristics)을 제공하기 위해 다양한 파일 시스템을 제공한다.

 

5. 통신(Communications)

  - 한 프로세스가 다른 프로세스와 정보를 교환해야하는 상황이 자주 발생한다.

  - 통신은 공유메모리(shared memoty)나 Message passing을 통해 구현 가능하다.

 

6. 에러 감지 (Error detection)

  - 운영체제는 에러를 지속적으로 감지하고 고쳐야한다.

  - 각 타입의 에러에 대해 운영체제는 적절한 행동을 취해야한다.

 

7. 자원 할당 (Resource allocation)

  - 다수의 사용자나 동시에 실행되고 있는 다수의 job들이 있을 때, 자원들은 각각에게 할당되어야한다.

 

8. 회계 (Accounting)

- 사용자가 어떤 자원을 얼마나 썼는지 추적할 수 있어야 한다.

- 이 기록은 나중에 회계를 위해 쓰일 수도 있고(요금 납부) 단순히 사용자 통계를 위해 사용할 수도 있다. 

 

9. 보호와 보안 (Protection and security)

 

 

 

2.2 User and Operating-System Interface

2.2.1 Command Interpreters

 

반응형