while(1) 작심삼일();

1. 운영체제의 개요 본문

CS/operation system

1. 운영체제의 개요

hanjongho 2021. 10. 4. 16:34

운영체제의 역할

  • 자원관리(↔효율성) : 자원을 요청한 여러 프로그램에 적당한 순서로 나눠주고, 적절한 시점에 회수한다.
  • 자원보호(↔안정성) : 특정 응용프로그램이 다른 영역을 침범하거나 덮어쓰는 일이 없도록 함
  • 하드웨어 인터페이스 제공(↔확장성) : 일관된 방법으로 하드웨어를 사용할 수 있도록 지원
  • 그래픽 유저 인터페이스 제공(↔편리성) : 사용자가 편리하게 사용할 수 있게 지원

운영체제커널에 명령을 전달하고 결과를 보여주는 인터페이스와, 커널로 분리된다.

 

커널 : 운영체제의 핵심적인 기능을 관리함 

  • 시스템 콜 : 커널이 응용프로그램으로부터 자원을 보호하기 위해 만든 인터페이스이다. 
  • 드라이버 :  기본적인 입출력 드라이버는 커널이 제공하지만 그래픽, 프린터 같은 무거운 드라이버는 제작자가 제공하는 드라이버를 직접 설치해야한다.
  • 프로세스 관리 : 프로세스에 CPU를 배분하고 작업에 필요한 환경 제공
  • 메모리 관리 : 프로세스에 작업 공간을 배치하고, 실제 메모리보다 큰 가상공간을 제공
  • 프로세스 간 통신 : 공동 작업을 위한 각 프로세스 간 통신환경 지원
  • 파일 시스템 관리 : 데이터를 저장/접근할 수 있는 인터페이스 제공

커널의 구조

  • 단일형 : MS-DOS, 초기 유닉스 운영체제와 같이 거의 모듈로 분리되어 있지 않음. 모듈 간 통신이 필요없어 운영에는 유리하지만 묶여있기 때문에 의존성이 높고 작은 결함이 시스템 전체의 문제로 확산될 수 있고 이식성이 낮아 수정이 어려움. 현대 운영체제는 크고 복잡하여 구현하기가 어려움.
  • 계층형 : 현대 운영체제의 구조. 비슷한 기능을 모듈로 묶어, 오류를 쉽게 찾을 수 있음
  • 마이크로 : 계층형에서 계층이 늘어나고 무거워지면서, 다시 커널의 본래 기능만(프로세스 관리, 메모리 관리, 프로세스 간 통신) 최소한으로 제공. 모듈이 독립적으로 작동하고 프로세스 간 통신으로 모듈 간 정보교환을 

'CS > operation system' 카테고리의 다른 글

6. 데드락  (0) 2021.10.06
5. 프로세스 동기화  (0) 2021.10.05
4. CPU 스케줄링  (0) 2021.10.05
3. 프로세스와 스레드  (0) 2021.10.05
2. 컴퓨터의 구조  (0) 2021.10.04
Comments