티스토리 뷰

CS/운영체제

운영체제 기초

longbeom 2022. 9. 16. 15:35

운영체제(OS, Operating System)란?

사용자가 컴퓨터를 쉽게 다루게 해주는 인터페이스이다. 하드웨어와 소프트웨어를 관리하고 한정된 메모리나 시스템 자원을 효율적으로 분배해준다.

 

운영체제의 역할

  • CPU 스케줄링과 프로세스 관리
    CPU 소유권을 프로세스에 할당하고, 프로세스의 생성과 삭제, 자원 할당 및 반환을 관리한다.
  • 메모리 관리
    한정된 메모리를 프로세스에 할당한다.
  • 디스크 파일 관리
    디스크 파일을 어떠한 방법으로 보관할지 관리한다.
  • I/O 디바이스 관리
    마우스나 키보드같은 I/O 디바이스와 컴퓨터 간에 데이터를 주고 받는 것을 관리한다.

 

운영체제의 구조

유저 프로그램과 하드웨어 사이에 [GUI, 시스템콜, 커널, 드라이버]의 구조로 되어있다.

GUI가 없고 CUI만 있는 리눅스 서버도 있다.

 

관련 용어

GUI
사용자와 전자 장치의 상호작용을 위한 그래픽 형태의 사용자 인터페이스

CUI
그래픽이 아닌 명령어로 처리하는 인터페이스

드라이버
하드웨어를 제어하기 위한 소프트웨어

시스템콜
운영체제가 커널에 접근하기 위한 인터페이스
유저 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출할 때 쓴다.
유저 프로그램의 I/O 요청을 유저 모드에서 커널 모드로 전환해 자원에 접근하고 다시 커널 모드에서 유저 모드로 전환해서 반환해준다.
따라서 유저 프로그램의 직접적인 자원 접근을 차단해 자원을 보호할 수 있다.

modebit
시스템콜이 작동될 때 modbit을 참고해 유저 모드와 커널 모드를 구분한다.
유저모드일 때 modebit 값이 1이고 커널 모드일 땐 modebit 값이 0이다.

유저모드
유저가 접근할 수 있는 영역을 제한적으로 두며 컴퓨터 자원에 함부로 침범하지 못하는 모드

커널 모드
모든 컴퓨터 자원에 접근할 수 있는 모드

커널
운영체제의 핵심 부분이자 시스템콜 인터페이스를 제공하며 보안, 메모리, 프로세스, 파일 시스템, I/O 디바이스, I/O 요청 관리 등 운영체제의 중추적인 역할을 한다.

 

Reference

'CS > 운영체제' 카테고리의 다른 글

프로세스(2)  (0) 2022.09.22
프로세스(1)  (0) 2022.09.21
메모리 관리  (0) 2022.09.21
메모리  (0) 2022.09.21
컴퓨터의 요소  (0) 2022.09.16