OS

OS의 정의와 발전 과정

쭈녁 2024. 3. 21. 19:28

 

교육 코스 중에 발표에 걸려 OS의 정의와 리눅스에 대한 역사를 발표하게 되었다.

발표하면서 정리한 내용을 적어본다.

 

 

1. 운영 체제(Operating System)란?

운영체제는 하드웨어를 관리하기 위한 프로그램

하드웨어를 관리한다 :

주어진 하드웨어 자원이 소프트웨어 자원을 효율적으로 관리함으로써 사용자가 시스템을 편하게 이용하도록 하는 소프트웨어(OS 도 소프트웨어의 일종이다.)

운영체제의 기능

  • 프로세서, 기억장치, 입출력 장치, 파일 및 정보 등 관리
  • 자원을 효율적으로 관리하기 위해 스케줄링 기능 제공
  • 하드웨어와 네트워크 관리 및 제어
  • 데이터 관리 및 자원 공유 기능
  • 입출력 보조 기능 제공
  • 시스템 검사 및 복구

운영체제의 목적

  1. 처리 능력 : 일정 시간 동안 수행되는 처리의 양
  2. 응답 시간 : 작업이 시작된 후 시스템에서 결과를 얻기까지 시간.
  3. 신뢰도 : 작업이 얼마나 정확하게 처리되었는가.
  4. 사용가능도 : 시스템이 얼마나 빠르게 사용할 수 있는가.

 

 

2. 운영체제의 기술 발전 과정

세대별 발전 과정

1세대 : 일괄 처리

2세대 : 다중 프로그램, 시분할, 다중처리, 실시간

3세대 : 다중 모드

4세대 : 분산 처리

0. 순차 처리

  • 운영체제가 없던 시절의 컴퓨터는 디스플레이, 토글, 스위치, 입력장치, 프린터로 구성된 콘솔을 통해 운영되었다.
  • 간략하게 컴퓨터는 모니터(컨트롤) 작업 순서를 제공받아 하나의 프로그램만 실행하고 다시 모니터로 복귀했다.

1. 일괄 처리 시스템

  • 초기 컴퓨터 시스템에 사용된 형태
  • 일정량 or 일정 기간 데이터를 모아 한번 처리한다.
  • 처리에 대한 반환은 늦지만 하나의 작업이 모든 CPU를 사용함으로 CPU를 효율적으로 사용할 수 있었다.
  • 주로 정산 업무에 사용되었다.

2. 다중 프로그램

  • 입출력 장치와 CPU 사이의 속도 차이를 이용하여 여러 명령을 입력받고 CPU와 주기억장치(RAM)를 통해 여러 프로그램을 동시에 처리하는 방식.
  • CPU가 쉬는 순간이 발생하면 운영체제가 다른 작업으로 전환하여 CPU의 효율을 높인다.
  • CPU의 단점으로 사용량과 처리량이 늘어나게 된다.

3. 시분할 시스템

  • 여러 명의 사용자가 사용하는 시스템에서 컴퓨터가 사용자들의 프로그램을 번갈아가며 처리함으로 여러 사용자가 독립 컴퓨터를 사용하는 느낌을 준다.
  • 예를 들어 여러 프로세스를 실행중이라면 각 프로세스들은 프로세서(CPU)에 특정 시간을 배당받는다. 이를 시분할 시스템이라고 한다.(Context-Switching)
  • CPU는 초당 매우 빠르게 처리가 가능하기에 여러 프로세스가 동시에 처리되는 느낌을 받는다.
  • 시분할은 스케줄링으로 관리되며 스케줄링에는 아래와 같은 종류가 있다.
    • FIFO (First In First Out) :
      • 선입 선출
      • 대화식 시스템에 부적합
    • RR (Round Robin) 스케줄링 :
      • FIFO 스케줄링에 우선순위를 부여하여 스케줄링 기법
      • 프로세스는 FIFO 형태로 큐에 적재되지만 주어진 시간안에 작업을 마쳐야 하며 시간이 다 소비되고도 작업이 끝나지 않으면 다시 맨뒤로 간다.
    • 등등.. 참고자료에 자세히 있음.. ㅋ

4. 다중처리 시스템

  • 여러 CPU와 하나의 주기억장치를 이용해 여러 프로그램을 동시에 처리하는 방식 CPU가 하나 고장 나더라도 다른 CPU가 작업 수행
  • 신뢰성과 안정성이 높다 여러 CPU가 하나의 메모리를 공유하여 단일 운영체제로 관리됨
  • 처리 속도가 빠르지만 기억 장치, 입출력 장치에 대한 자원 공유 문제는 해결해야 한다.

예시) 2CPU 서버

5. 실시간 처리 시스템

  • 데이터 발생 또는 데이터 처리 요구가 있는 즉시 처리하여 응답을 산출함
  • 처리 시간이 단축되고 처리 비용이 절감됨
  • 주로 은행의 온라인 업무와 같은 시간의 제한을 두어야 하는 작업에 사용됨
    • 예시) 우주선 운행, 레이더 추적, 전화 교환 장치, 온라인 은행 업무 제어 등

6. 다중모드 처리

  • 일괄 시스템, 시 분할 시스템, 다중 처리 시스템 , 실시간 처리 시스템을 한 시스템에서 모두 제공하는 방식

7. 분산 처리 시스템

  • 여러 개의 컴퓨터를 통신 회선으로 연결하여 하나의 작업을 동시에 처리하는 방식
  • 데이터 처리 장치 및 DB가 분산 되어 물리적인 네트워크로 서로 결합되어 각자 노드에 해당하는 업무를 분담하여 수행한다.

 

 

참고 자료

https://computer-science-student.tistory.com/384

 

운영체제(OS, Operating System) - 정의, 종류, 기능, 목적

운영체제(OS, Operating System)란? 운영체제(OS, Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프

computer-science-student.tistory.com

https://chanelcocolover.tistory.com/entry/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EC%9D%98-%EA%B8%B0%EC%88%A0-%EB%B0%9C%EC%A0%84-%ED%9D%90%EB%A6%84-%EC%B4%9D%EC%A0%95%EB%A6%AC

 

운영체제의 기술 발전 흐름 총정리

컴퓨터 기능 및 기술의 발전으로 인하여 운영체제도 지속적으로 그 기능이 확장되고 있으며 현재에도 운영체제는 계속 발전하고 있습니다. 사용자 또는 시스템 관리자의 요구에 따라 새로운 서

chanelcocolover.tistory.com

 

 

'OS' 카테고리의 다른 글

리눅스의 역사  (0) 2024.03.23
운영체제의 종류와 리눅스의 계열  (1) 2024.03.23
Thread(스레드)  (0) 2023.12.09
정규표현식 과 리눅스 명령어  (1) 2023.12.08