OS 란?

신명철·2022년 3월 14일
0

OS

목록 보기
1/27

운영체제

운영체제는 HW와 응용프로그램 사이에서 인터페이스 역할을 하며 HW를 관리하고 시스템의 동작을 제어하는 시스템 소프트웨어이다.

컴퓨터 시스템의 자원들을 효율적으로 관리할 수 있게 해주고, 사용자가 컴퓨터를 효과적이고 편리하게 사용할 수 있도록 환경을 제공해준다.

운영체제의 기능

1. 프로세스 관리

프로세스 관리는 OS의 기능 중 가장 중요한 기능 중 하나다. 프로세스는 실제 메인 메모리에서 실행중인 프로그램을 말한다. 하드디스크와 같은 보조기억장치에서 아무런 동작도 하지 않고 있는 프로그램과 구분된다. 프로그램은 어떠한 요청에 의해 메모리에 할당되어 CPU를 사용하며 실행하게 되는데 이를 프로세스라고 부른다.

OS의 프로세스 관리 주요 기능은 다음과 같다.

  • 프로세스의 생성과 소멸
  • 프로세스 활동 일시 정지, 할동 재개
  • 프로세스간 통신
  • 프로세스간 동기화
  • 교착상태 처리

2. 주기억장치 관리

주기억장치, 즉 메모리는 프로그램이 실행되기 위한 공간을 말한다. CPU는 오직 메인 메모리에 올라와있는 프로세스하고만 소통할 수 있다. OS는 프로세스들이 메모리를 효율적으로 사용할 수 있도록 관리한다.

  • 프로세스에게 메모리 공간 할당
  • 메모리 상의 프로세스 위치 추적 및 감시
  • 프로세스 종료 시 메모리 회수
  • 가상 메모리 사용

3. 보조기억장치 관리

하드디스크, 플래시 메모리로 대표되는 보조기억장치는 아무 것도 저장되지 않은 공간이 존재할 수 있는데 이를 관리하는 일을 한다.

  • 빈 공간 관리
  • 저장 공간 할당
  • 디스크 스케쥴링

4. 파일 관리

디스크는 물리적으로 Track과 Sector로 구성된다. 여기서 파일이라는 논리적 관점으로 데이터를 바라보고 관리하는 것이다.

파일은 OS가 실행되는 컴퓨터에서 자주 볼 수 있는데, 이는 복잡한 과정으로 HDD에 저장되어 있는 것을 사용자가 편리하게 사용할 수 있도록 파일이라는 논리적 형태로 OS에서 관리하여 보여준다.

  • 파일의 생성과 삭제
  • 디렉토리의 생성과 삭제
  • 기본 동작 지원 : open, close, read, write, create, delete
  • Track/Sector - File 간 매핑
  • 백업

5. 입출력 장치 관리

I/O 장치에는 키보드, 마우스, 프린터, 스피커, 마이크 등이 있고 I/O 장치 관리는 이와 같은 여러 I/O 장치를 사용하고 관리하기 위해서 존재한다.

  • 장치 드라이버
  • I/O 장치의 성능 향상 : buffering, caching, spooling

6. 시스템 콜

시스템 콜은 유저 프로세스에서 운영체제 서비스를 필요로 할 때 이를 받기 위해서 사용하는 호출이다.

위는 process 1에서 프로세스 관리에 필요한 시스템 콜을 요청한 모습이다. 프로세스가 실행하는 중간에 OS 서비스가 필요하면 시스템 콜을 통해 OS 안의 해당 코드로 점프할 수 있다.

  • 주요 시스템 콜
    • Process
      • end(정상 종료), abort(강제 종료), load, execute, create, terminate, get/set attributes, wait event, signal event
    • Memory
      • allocate, free
    • File
      • create, delete, open, close, get/set attributes, attach/detach devices
    • Device
      • request, release, read, write, get/set attributes, attach/detach devices
    • Information
      • get/set time, get/set system data
    • Communication
      • socket, send, receive

참고

profile
내 머릿속 지우개

0개의 댓글