[운영체제] 운영체제 소개 : 정의, 목적, 분류, 예시, 구조

드림보이즈·2023년 8월 11일
1
post-thumbnail

참고 강의 : https://core.ewha.ac.kr/publicview/C0101020140307151724641842?vmode=f


운영체제란 무엇인가? : 컴퓨터의 '핵심'이다.

  • 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
  • 좁은 의미 (커널) : 운영체제의 핵심 부분으로 메모리에 상주하는 부분
  • 넓은 의미 : 커널 + 각종 시스템 유틸리티를 포함한 개념

위처럼 운영체제는 하드웨어와 소프트웨어 사이에 위치해 있다.
이를 통해 운영체제의 목적을 짐작할 수 있다. 하드웨어 관리와 소프트웨어, 사용자 관리


운영체제의 목적

컴퓨터 자원 효율적으로 관리 (하드웨어 관리)

  • 프로세서, 기억장치, 입출력 장치 등의 효율적 관리 : 형평성 있는 분배 + 최대한의 성능
  • 사용자 및 운영체제 보호
  • 프로세스, 파일, 메시지 관리

운영체제는 컴퓨터 하드웨어를 형평성 + 효율성 있게 관리해야 할 목적이 있다.

하드웨어 각각을 살펴보자면
CPU를 실행중인 여러 프로그램들에게 번갈아 할당하고,
한정된 메모리 공간을 프로그램들에 적절히 분배하는 등
역할을 운영체제가 한다.

운영체제의 분류

1. 동시 작업 가능 여부

  • 단일 작업
  • 다중 작업(multi tasking)

2. 사용자 수

  • 단일 사용자
  • 다중 사용자

3. 처리 방식

  1. 시분할(time sharing)
  • 여러 작업을 수행할 때 컴퓨터 능력을 일정한 시간 단위로 분할해 사용
  • 일괄 처리 시스템에 비해 짧은 응답 시간을 가짐
  • interactive한 방식
  1. 실시간
  • 정해진 시간 안에 반드시 종료됨을 보장해야 하는 실시간 시스템을 위한 OS
  • 예시 : 반도체 공정, 원자로 제어 등
  1. 일괄 처리 (batch processing)
  • 작업 요청을 일정량 모아서 한꺼번에 처리
  • 작업이 완전 종료될 때 까지 기다려야 함

현대 운영체제는 거의 다중 작업, 다중 사용자, 시분할을 지원하는 형태이다.


용어 정리

Multi tasking

Multiprogramming : 여러 프로그램이 메모리에 올라가 있음을 강조

Time sharing : CPU의 시간을 분할하여 나눠 쓴다를 강조

Multi process

전부 "여러 작업들을 동시에 수행하는 것"을 뜻하는 동일한 의미이지만,
강조하는 부분이 다르다 정도로만 알고 가자.

Multi processor : 하나의 컴퓨터에 CPU 프로세서가 여러 개 있음


운영체제의 예

유닉스(UNIX)

  • C 언어로 작성
  • 높은 이식성(기계어와 매우 가까워 다른 컴퓨터로 이식하기 쉬움)
  • 최소한의 커널 구조
  • 복잡한 시스템 맞게 확장 용이
  • 소스 코드 공개
  • 프로그램 개발에 용이
  • 다양한 버전 : Linux!

DOS(Disk Operating system)

  • 단일 사용자용 운영체제

MS Windows

  • 다중 작업용 GUI 기반 운영체제

읽고 잊어버리자.


운영체제의 구조

운영체제의 목적이 뭐다?
하드웨어 관리 + 소프트 웨어 관리


한정된 하드웨어 자원을 효율적으로 관리해야 할 의무가 있다.
이에 따라 생각을 해보면, 각 하드웨어마다 운영체제가 어떤 일을 해야 할지 감을 잡을 수 있다.

소프트웨어 관리를 생각해본다면

  • 프로세스 관리(생성,삭제, 자원 할당, 반환)
  • 보안 시스템
  • 네트워킹
  • 명령어 해석기(CLI)

등이 있을 수 있겠다.

profile
10년 후 세계 최고 블록체인 개발자

0개의 댓글

관련 채용 정보