CS/운영체제

[OS] 운영체제의 서비스와 구조

yo0oni 2023. 11. 5. 18:20

운영체제의 서비스

1. 부팅 서비스

  • 컴퓨터 하드웨어를 관리하고 프로그램을 실행할 수 있도록 컴퓨터에 시동을 검
  • 운영체제를 메인 메모리에 적재
  • 시스템 장치 초기화, 시간 설정, 명령 해석기 적재 및 준비

 

2. 사용자 서비스

  • 프로그래머가 프로그래밍 작업을 쉽게 수행할 수 있도록 함
  • 사용자 인터페이스 제공 ➡️ 프로그램 실행 ➡️ 입출력 동작 수행 ➡️ 파일 시스템 조작 ➡️ 네트워크 통신 ➡️ 오류 방지

 

3. 시스템 서비스

  • 자원 할당 : 다수의 사용자나 작업을 동시에 실행할 때 자원을 각각 할당하고 관리
  • 계정 : 각 사용자가 자원을 얼마나 사용하는지에 대한 정보를 저장하고 추적
  • 보호와 보안 : 사용자가 다수인 컴퓨터 시스템에서 여러 프로세스를 동시 실행하려면 서로의 활동에서 프로세스를 보호

 

4. 시스템 호출 (API)

  • 응용 프로그램이 사용자 수준에서 지원하지 않는 기능을 운영체제의 루틴을 호출하여 제공받는 방법
  • 시스템 호출을 통해 운영체제에 서비스를 요청함

 

 

운영체제의 구조

1. 단일 구조 운영체제

  • 운영체제의 초기 형태
  • 대부분의 기능을 커널에 그룹화해서 구현하기 때문에 직접 통신하며 자원을 효율적으로 관리 가능
  • 기타 오류를 구분하기 어렵고, 기능 추가 및 유지보수가 매우 어려움

 

2. 계층 구조 운영체제

  • 단일 구조의 문제점을 해결
  • 비슷한 기능을 수행하는 요소를 그룹화하여 계층적으로 구성
  • 시스템 검증 및 오류 수정을 쉽게 가능
  • 사용자 프로세스의 요청을 수행할 때마다 계층을 거쳐야 하기 때문에 추가적인 시스템 호출이 발생 ➡️ 성능이 단일 구조보다 떨어짐
  • 모든 계층이 시스템 제한 없이 접근할 수 있어 오류나 악성 코드에 민감

 

3. 마이크로 커널 구조 운영체제

  • 마이크로 커널은 커널에 기본 기능한 포함
  • 추가 기능들은 사용자 공간으로 옮겨 사용자 영역(서버)에서 수행
  • 서버에서 잘못 수행하더라도 다른 서버와 커널에 치명적인 영향을 주지 않음
  • 서버 개발이 용이하고 운영체제의 기능을 쉽게 변경
  • 모듈화 정도도 높아 확장성, 이식성, 규모 확장성이 높음
  • 하지만 모듈 간에 통신이 빈번하게 발생하여 성능 저하 가능성 있음

 

 


해당 글은 <운영체제: 그림으로 배우는 구조와 원리>를 읽고 정리한 내용입니다.

https://www.google.co.kr/books/edition/IT_CookBook_%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C_%EA%B0%9C%EC%A0%953%ED%8C%90/JPLwDwAAQBAJ?hl=ko&gbpv=0

https://www.google.co.kr/books/edition/IT_CookBook_%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C_%EA%B0%9C%EC%A0%953%ED%8C%90/JPLwDwAAQBAJ?hl=ko&gbpv=0

 

IT CookBook, 운영체제(개정3판)

구현회 koohhoe@gmail.com 배화여자대학교 스마트IT학과 명예교수로 연구와 집필 활동 중이다. 운영체제 외에도 유닉스 서버, 컴퓨터 보안, 데이터베이스 등에 관심이 많으며, 강의도 이 범주에서 진

books.google.co.kr