운영체제란

운영체제

  • 사용자와 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종

  • 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 다른 응용프로그램이 유용한 작업을 할 수 있도록 환경을 제공한다.

종류 : WINDOWS, Mac OS, UNIX, LINUX 등


운영체제의 역할

  • 자원 관리

    • 컴퓨터 시스템 자원들을 효율적으로 관리해준다. ( 시스템 자원: CPU, Memory 등의 하드웨어 자원과, 프로세스, 파일 메세지 등의 소프트웨어 자원)

  • 자원 보호

    • 다른 사용자 또는 프로그램이 데이터를 삭제하거나 중요 파일들에 접근하지 못하게 컴퓨터 자원들을 보호한다.

  • 인터페이스 제공

    • 하드웨어 인터페이스와 사용자 인터페이스를 제공하여 사용자가 편리하게 사용하도록 지원한다.


운영체제의 목적

  1. 처리 능력 향상

  2. 반환 시간 단축

  3. 사용 가능도 향상

  4. 신뢰도 향상

단어설명

처리 능력

일정 시간 내에 시스템이 처리하는 일의 양

반환 시간

시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸리는 시간

사용 가능도

시스템 자원을 사용할 필요가 있을 때 즉시 사용 가능한 정도

신뢰도

시스템이 주어진 문제를 정확하게 해결하는 정도


운영체제의 기능

  • 프로세스 관리

    현재 CPU를 점유해야 할 프로세스(또는 스레드)를 결정(스케줄링)하고, CPU를 프로세스에 할당한다. 또한 이 프로세스 간 공유 자원 접근과 통신(IPC 통신) 등을 관리한다.

  • 저장장치 관리

    메인 메모리와 하드디스크 등 메모리를 관리한다. 메인 메모리에서는 프로세스에 할당하는 메모리 영역의 할당과 해제를 담당한다. 또한 가상 메모리 기능을 제공하여 각 메모리 영역 간의 침범을 방지하고, 효율성을 증대한다. 하드디스크에는 파일 형식의 데이터가 저장된다.

  • 네트워킹

    TCP/IP 기반 인터넷 연결 등 응용 프로그램은 운영체제에서 지원하는 네트워크 프로토콜을 사용할 수 있다.

  • 사용자 관리

    하나의 PC를 여러 사람이 사용하는 경우, 각 계정을 관리한다. 보안을 위해 개인 파일에 대해선 다른 사용자가 접근할 수 없도록 한다던지, 시스템 자원의 접근 권한을 지정할 수 있도록 지원한다.

  • 디바이스 드라이버

    운영체제 안에 하드웨어를 추상화해주는 계층이다. 시스템에 붙어있는 여러 하드웨어를 인식하고 관리하여 응용 프로그램이 하드웨어를 사용할 수 있게 한다.


운영체제의 구조

  • 인터페이스

    • 사용자는 커널에 직접 접근할 수 없기 때문에 운영체제가 제공하는 인터페이스를 사용해 커널에 명령을 내린다.

    • 운영체제가 제공하는 대표적인 인터페이스가 GUI, CLI가 있습니다.

  • 커널

    • 운영체제는 규모가 매우 큰 프로그램이므로, 운영체제의 모든 부분을 메모리에 올려놓는 것은 굉장히 비효율적이다. 따라서 운영체제는 필요한 부분만을 메모리에 올려서 사용하게 되는데, 이 때 메모리에 상주하는 운영체제의 핵심 부분이 커널이다.

    • 커널의 경우 프로세스, 메모리, 저장장치를 관리하는 핵심적인 기능을 합니다. 또한 커널에는 시스템 호출(System Call)과 드라이버라는 것이 있습니다.

  • 시스템 콜

    • 사용자는 운영체제의 기능을 담당하는 커널에 직접 접근할 수가 없다. 따라서, 사용자와 커널 사이에 인터페이스 역할이 필요한데, 시스템 콜이 바로 이 역할을 하게 된다.

    • 시스템 콜을 제공함으로써 컴퓨터 자원을 보호하게 된다.

    • 예시로는 write(), read(), printf() 등이 있다.

  • 드라이버

    • 커널과 하드웨어의 인터페이스를 드라이버라고 한다.

    • 복잡한 하드웨어의 경우 소프트웨어를 따로 설치하여 사용하는 경우가 있는데 이때 이 소프트웨어를 디바이스 드라이버라고 합니다.

Last updated