[공부]/[정보처리기사]

[필기] 정보처리기사 24강

우주최강자맨키리 2021. 3. 24. 17:12
SMALL
TOPIC : 운영체제(OS, Operational System)

1. 운영체제

1-1. 운영체제의 개요

Def : 컴퓨터 시스템의 자원을 효율적으로 운영하고 사용자에게 편의성을 제공하는 프로그램

> 하드웨어와 사람 또는 응용 프로그램 사이에서 인터페이스(Interface, 연결) 역할을 한다.

> 정리하면 콤퓨타랑 휴먼이랑 (or 낫휴먼) 연결하는 다리역할.

> 시스템 자원의 할당, 제어기능, 편리한 인터페이스를 제공한다.

> 사용자가 컴퓨터를 이용하게끔 도와주는 서비스 전반적을 담고있다.

EX) 프로세스 관리, 주기억장치 관리, 보조기억장치 관리, I/O System 관리, 파일관리...

 

 

1-2. 운영체제의 목적

> 운영체제의 성능평가 기준?

> 다리가 넓어서 많은 사람이 지날 수 있는가? = 처리량(Throughput) 증가

> 오전 9시부터 오후 6시까지만 운행하는가? 심야운행도 하는가? = 이용가능도(Availabilty) 증가

> 다리의 길이가 얼마나 되는가? = 응답(반환)시간 단축 (Turn Around Time) 

> 다리가 지푸라기로 돼있진 않은가? = 신뢰도(Reliablity) 증가

* 입력을 주고 출력이 돌아오는 시간을 응답(반환)시간이라 하는데 이게 짧으면 다리 건너기 편하겠지?

 

1-3. 성능 측정방법

> 벤치마크 (Bench Mark) 프로그램

> 두 개 이상의 운영체제를 처리량, 신뢰성, 반환시간등을 비교평가하는 HW or SW

 

 

1-4. 운영체제의 제어프로그램

  • 제어프로그램
    1. 감시 프로그램 (Supervisor Program)
    2. 데이터 관리 프로그램 (Date Management Program)
    3. 작업 관리 프로그램 (Job Management Program)
  • 처리프로그램
    1. 언어 번역 프로그램 (Language Translation Program, 컴파일러, 어셈블러, 인터프리터..)
    2. 서비스 프로그램 (Service Program)
    3. 문제 처리 프로그램 (Problem Program)

* 주로 'ㅇㅇ프로그램의 종류가 아닌 것은?' 하면서 4지선다 물어봄.

 

 

1-5. 운영체제의 활용기법

  1. 일괄 처리 시스템 (Batch Processing)
    • 자료를 모아둔 뒤 한꺼번에 처리하는 방식
    • 운영체제에서는 가장 1세대, 가장 오래된 방식이다.
    • 예시로 월급, 성적관리 등이 있다.

  2. 실시간 처리 시스템 (Realtime Processing)
    • 자료가 발생하는 즉시 처리하는 방식
    • 예시로 항공, 철도 예약이나 은행 업무 등이 있다.

  3. 다중 프로그래밍 (Multi-Programming)
    • 한 개의 처리기에서 여러 개의 프로그램을 동시에 적재하여 실행하는 방식이다.

  4. 다중 처리기 (Multi-Processing)
    • 두 개 이상의 처리기를 이용하여 프로그램을 처리하는 기법이다.

  5. 시분할 시스템 (Time Sharing Processing)
    • 한 대의 처리기를 여러 명의 이용자가 동시에 사용할 수 있도록 도와주는 기법이다.
    • 시간을 일정 간격으로 할당(Time Slise)하는 방식으로 운영한다.
    • 사용자는 마치 독점한 것 처럼 사용할 수 있다는 장점이 있다.
    • RR(Round Robin)기법에 영향을 주었다. / 25강 선점스케줄링에 나옴

  6. 분산 처리 (Distribute Processing)

2. 프로그램 처리 방식

* 로더의 기능과 역할에 대해 중점적으로 다룬다.


2-1. 프로그램의 처리 순서

원시프로그램 - 번역프로그램 - 2진수 목적프로그램 - 링커 - 로드모듈 - 로더 - 실행

* 번역 프로그램에는 종류 세 가지 : 컴파일러, 인터프리터, 어셈블러
** 2진수 목적프로그램은 컴파일러와 어셈블러 통해 만들어진다.
*** 링커는 실행 가능하도록 만들어 주는 것, 로드모듈은 실행 프로그램을 의미한다.

 

2-2. 로더

> 로더는 4가지 기능을 갖고있다. (연결; 할당; 재배치; 적재)

> BUT 운영체제에서의 로더는 종류를 알고있어야한다.

 

  1. Complie And Go : 별도의 로더 없이 언어번역 프로그램이 로더의 기능까지 수행하는 방식
  2. 절대로더 (Absolute Loader) : 목적프로그램을 기억장소에 적재시키는 기능만 수행.
    * 할당 및 연결을 프로그래머 (사용자)가 담당한다.
    ** 재배치는 언어 번역 프로그램 (컴파일러, 어셈블러)이 담당한다.
    *** 이게 시험문제였다.
  3. 직접 연결 로더 (Direct Linking Loader)
  4. 동적 적재 로더 (Dynamic Loading Loader)

 

2-3. 매크로 프로세서 (Macro Processor) (중요)

> 반복적인 명령 수행 = 매크로

> 프로그램의 긴 부분이 반복되어 사용되는 경우, 이 반복되는 부분을 매크로로 지정한다.

> 추후 사용시 매크로 이름만 쓰면 돼서 편리함. 종류는 다음과 같다.

  1. 매크로 정의 인식
  2. 매크로 정의 저장
  3. 매크로 호출 인식
  4. 매크로 호출 확장

* 주로 이 네 가지 종류 물어보는 문제 물어봄, 처리 순서 역시 동일하다.

LIST