운영체제 기초 활용
1) 운영체제 (OS: Operating System)
- 사용자가 컴퓨터의 하드웨어를 보다 쉽게 사용할 수 있도록 인터페이스를 제공해 주는 소프트웨어
- 다중 사용자와 다중 운용 프로그램 환경 하에서 사원의 현재 상태 파악 하고 자원 분배를 위한 스케줄링 담당
- CPU, 메모리 공간, 기억장치, 입출력 장치 등의 자원 관리
- 입출력 장치와 사용자 프로그램 제어
- 종류: 윈도우(Windows), 리눅스/유닉스(Linux/Unix), 맥(Mac), 안드로이드(Android) 등
- 구조: 인터페이스(쉘), 커널(Kernel)
- 커널(Kernel): 운영체제의 핵심 기능들이 모여있는 곳, 하드웨어와 관련된 내부적인 역할 담당
- 인터페이스(쉘/Shell): 커널을 사용자가 보다 편리하게 사용할 수 있게 해줌, 운영체제의 가장 바깥에 위치, 명령에 대한 처리 담당
- 특징: 사용자 편리성 제공, 인터페이스, 스케줄링, 자원 관리, 제어 기능
- 운영체제에서의 커널(Kernel)의 기능: 프로세스 생성/종료, 기억장치 할당/회수, 파일 시스템 관리
운영체제의 운용 기법
구분 | 설명 |
실시간 처리 시스템 | - 데이터 발생 즉시 처리하여 결과를 산출하는 방식 - 짧은 처리시간, 낮은 비용 |
시분할 시스템 | - 중앙 처리 장치의 시간을 각 사용자에게 균등하게 분할하여 사용하는 체제 - 목표: 모든 컴퓨터 사용자에게 똑같은 서비스를 제공하는 것 - 라운드 로빈 스케줄링 사용 |
일괄처리 시스템 | - 일정 기간 / 일정 량의 데이터를 모아서 한꺼번에 처리 - 높은 효율, 시스템 자원 독점, CPU 유휴 시간 감소 - 사용자 측면에서는 처리량이 많아 반환 시간이 늦음 |
분산처리 시스템 | - 물리적으로 떨어져 있는 클라이언트나 서버를 데이터베이스 서버와 네트워 크로 연결시켜 사용자에게 하나의 시스 템인 것처럼 데이터 처리를 가능하게 하는 시스템 |
윈도우(Windows) 계열 운영체제
- Dos 기반에서 개발된 OS
- 사용자가 사용하기 편한 GUI(Graphical User Interface) 모드로 제공
- 소스가 공개되지 않은 OS (공개된 OS - CentOS)
- 트리 디렉터리 구조
- 특징
> 그래픽 사용자 인터페이스(GUI) 제공
> 선점형 멀티태스킹 방식 제공
> 자동감지 기능 제공
> OLE (Object Linking and Embedding) 사용
유닉스(Unix) 계역 운영체제
- 특징
> 대화식 운영체제 기능 제공
> 다중 작업 기능 제공
> 다중 사용자 기능 제공
> 이식성 제공
> 계층적 트리 구조 파일 시스템 제공
메모리 관리
1) 관리 기법
기법 | 설명 |
반입 기법 | - (When) 주기억 장치에 적재할 다음 프로세스의 반입 시기를 결정하는 기법 |
배치 기법 | - (Where) 디스크에 있는 프로세스를 주기억 장치의 어느 위치에 저장할 것인지 결정하는 기법 |
할당 기법 | - (How) 실행해야 할 프로세스를 주기억 장치에 어떤 방법으로 할당할 것이지 결정하는 기법 |
교체 기법 | - (Who) 재배치 기법으로 주기억 장치에 있는 프로세스 중 어떤 프로세스를 제거 할 것인지 결정하는 기법 |
2) 기법의 유형
유형 | 설명 |
최초 적합 First Fit |
- 프로세스가 적재될 수 있는 가용 공간 중에서 첫번째 분할에 할당하는 방식 |
최적 적합 Best Fit |
- 가용 공간 중에서 가장 크기가 비슷한 공간을 선택하여 프로세스를 적재하는 방식 - 공백 최소화 |
최악 적합 Worst Fit |
- 가용 공간 중에서 가장 큰 공간에 할당하는 방식 |
주기억장치 메모리
- 할당 기법의 종류: 연속할당 기법, 단일 분할 할당 기법, 다중 분할 할당 기법
1) 분산할당 기법
기법 | 설명 |
페이징 기법 | - 가상기억장치 내의 프로세스를 일정하게 분할하여 주기억장치의 분산된 공간에 적재시킨 후 프로세스를 수행시키는 기법 - 실제 공간은 페이지 크기와 같은 페이지 프레임으로 나누어 사용 |
세그멘테이션 기법 | - 가상기억장치 내의 프로세스를 서로 크기가 다른 논리적 단위인 세그먼트(Segment)로 분할하고 메모리를 할당하는 기법 - 분할 형태가 배열이나 함수와 같은 논리적인 다양한 크기의 가변적인 크기로 관리 |
페이징 / 세그멘테이션 기법 | - 하나의 세그먼트를 정수 배의 부분 페이지로 다시 분할하는 방식 |
메모리 교체 기법 유형
세부 기법 | 설명 |
FIFO | - First In First Out - 가장 먼저 들어와 가장 오래 있던 페이지 교체 (선입선출) |
LRU | - Least Recently Used - 가장 오랫동안 사용되지 않은 페이지 교체 |
LFU | - Least Frequently Used - 참조(사용) 횟수가 가장 적은 페이지 교체 |
OPT | - OPTimal Replacement - 앞으로 가장 오랫동안 사용하지 않을 페이지 교체 |
메모리 단편화
- 내부 단편화, 외부 단편화
정리하기
1. 운영체제 (OS: Operating System)
- 사용자가 컴퓨터의 하드웨어를 보다 쉽게 사용할 수 있도록 인터페이스를 제공해 주는 소프트웨어
- 종류: 윈도우(Windows), 리눅스/유닉스(Linux/Unix), 맥(Mac), 안드로이드(Android) 등
- 구조: 인터페이스(쉘), 커널(Kernel)
- 운용 기법: 실시간 처리 시스템, 시분할 시스템, 일괄처리 시스템, 분산처리 시스템
2. 메모리 관리
- 기법: 반입 기법, 배치 기법, 할당 기법, 교체 기법
- 기법의 유형: 최소 적합, 최적 적합, 최악 적합
3. 주기억장치 메모리 관리
- 할당 기법: 연속할당 기법, 단일 분할 할당 기법, 다중 분할 할당 기법
- 분산 할당 기법: 페이징, 세그먼테이션, 페이징/세그먼테이션
4. 메모리 교체 기법
- FIFO, LRU, LFU, OPT
5. 메모리 단편화
- 내부 단편화, 외부 단편화
'정보처리기사 > 4과 프로그래밍 언어 활용' 카테고리의 다른 글
4. 네트워크 기초 활용 (0) | 2023.04.04 |
---|---|
3. 응용 SW 기초 기술 활용 (2) (0) | 2023.04.03 |
2. 프로그래밍 언어 활용 (0) | 2023.04.01 |
1. 서버프로그램 구현 (0) | 2023.03.31 |