운영체제의 개념 및 운용기법 (일괄 처리, 다중 프로그래밍, 시분할, 다중 처리, 실시간) :: 개발/일상_Mr.lee

운영체제의 개념 및 운용기법 (일괄 처리, 다중 프로그래밍, 시분할, 다중 처리, 실시간)

Posted by Mr.mandu.
2019. 9. 19. 23:40 일상/정보

개발을 하면서 운영체제에 대한 간단한 내용조차 모르고 있는거 같아

정보처리기사에 나오는 간략한 내용을 적어두려 합니다.


운영체제의 정의

○ 운영체제(OS, Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임(Window7·10)
○  컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종

운영체제의 목적

○ 처리능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축 등

운영체제의 기능

○ 프로세서, 기억장치, 입·출력장치, 파일 및 정보 등의 자원 관리
○  자원을 효율적으로 관리하기 위해 자원의 스케줄링 기능을 제공
○  사용자와 시스템 감의 편리한 인터페이스 제공
○  시스템의 각종 하드웨어와 네트워크 관리, 제어
※ 스케줄링 : 어떤 자원을 누가, 언제, 어떤 방식으로 사용할지를 결정해 주는 것

운영체제의 주요 자원 관리

○  프로세스 관리
 - 프로세스 스케줄링 및 동기화 담당
 - 프로세스 생성과 제거, 시작과 정지,메시지 전달 기능 담당
○  기억장치 관리
 - 프로세스에게 메모리 할당 및 회수 관리 담당
○  주변장치 관리
 - 입·출력장치 스케줄링 및 전반적인 관리 담당
○  파일관리
 - 파일의 생성과 삭제, 변경, 유지 등의 관리 담당

운영체제의 운용 기법

 1. 일괄 처리 시스템
  → 초기의 컴퓨터 시스템에서 사용된 형태로, 일정량 또는 일정 기간 동안 데이터를 모아서 한꺼번에 처리하는 방식

2. 다중 프로그래밍 시스템
  → 하나의 CPU와 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식
   - 하나의 주기억장치에 두 개 이상의 프로그램을 기억시켜 놓고, 하나의 CPU와 대화하면서 동시에 처리
   - CPU의 사용률과 처리량 증가

3. 시분할 시스템
  → 여러 명의 사용자가 사용하는 시스템에서 컴퓨터가 사용자들의 프로그램을 번갈아가며 처리해 줌으로써 각 사용자에게 독립된 컴퓨터를 사용하는 느낌을 주는것으로, 라울드 로빈 방식이라고도 한다.
   - 여러 사용자가 각자의 단말장치를 통하여 동시에 운영체제와 대화하면서 각자의 프로그램 실행
   - 하나의 CPU는 같은 시점에서 여러 개의 작업을 동시에 수행할 수 없기 때문에 CPU의 전체 사용 시간을 작은 작업 시간량으로 나누어서 그 시간량 동안만 번갈아가면서 CPU를 할당하여 각 작업을 처리
   - 효율은 좋아지나 개인별 사용자 입장에서는 반응 속도가 느릴 수 있음

4. 다중 처리 시스템
  → 여러 개의 CPU와 하나의 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식
   - 하나의 CPU가 고장나더라도 다른 CPU를 이용하여 업무를 처리할 수 있으므로 시스템의 신뢰성과 안정성이 높음

5. 실시간 처리 시스템
  → 데이터 발생 즉시, 또는 데이터 처리 요구가 있는 즉시 처리하여 결과를 산출하는 방식
   - 처리 시간이 단축되고, 처리 비용 절감
   - 우주선 운행, 교통 제어, 레이더 추적기, 은행의 온라인 업무 등 시간에 제한을 두고 수행되어야 하는 작업에 사용

6. 다중 모드 처리
  → 일관 처리 시스템, 시분할 시스템, 다중 처리 시스템, 실시간 처리 시스템을 한 시스템에서 모두 제공하는 방식

7. 분산 처리 시스템
  → 여러 개의 컴퓨터를 통신 회선으로 연결하여 하나의 작업을 처리하는 방식