◆ PCB (Process Control Block)
- OS가 프로세스를 관리하는데 필요한 정보를 유지하는 자료구조 테이블
- 모든 프로세스는 각각 고유한 PCB를 가지며, 프로세스의 수행이 완료되면 PCB도 삭제된다.
◆ 프로세스 상태
- 보류(pending) : 작업이 일시 중지되거나 디스크에 수록된 상태
- 준비(ready) : CPU가 일을 할 수 있는 상태
- 실행(running) : 프로세스가 CPU를 차지하고 있는 상태
- 대기(blocked) : 프로세스가 CPU를 차지하고 실행되다가 인터럽트가 발생하여 CPU를 잠시
양도하고 인터럽트가 끝날때까지 대기 큐에서 대기하는 상태
- 교착(deadlock) : 프로세스가 결코 CPU를 점유할 수 없는 상태에서 계속 대기하는 상태
- 완료(terminated) : 프로세스가 CPU를 할당받아 완전히 업무를 수행하여 완료한 상태로
종료된 프로세스는 시스템에 의해 제거되고 그 프로세스와 관련된 PCB도 삭제됨
◆ 프로세스 스케줄링
1. 라운드로빈(Round Robin) 스케줄링
- FCFS로 프로세스들이 내보내지며 각 프로세스는 같은 크기의 CPU 시간을 할당 받음
- 특징
· 다중 프로그래밍 시스템이나 시분할 방식의 시스템에서 효과적
· 할당시간의 크기는 컴퓨터 시스템의 효과적인 동작에 중요한 요소
· 할당시간이 크면 FIFO 방식과 동일하게 됨
· 할당시간이 작으면, 문맥교환이 자주 발생하여 오버헤드가 커짐
◆ 운영체제 분류
- 기능적으로 분류
1. 감시 프로그램 : 커널, 시스템 전체의 작동상태 감시
2. 작업관리 프로그램 : 업무처리를 위한 스케줄링이나 자원할당 관리
3. 데이터관리 프로그램 : 시스템 파일과 데이터를 표준화하여 처리하도록 관리
◆ MBR(Master Boot Record)
- 하드디스크의 첫번째 섹터에 위치하며 디스크의 파티션 테이블과 부팅에 필요한
작은 실행 파일을 저장
- 앞쪽 446바이트는 실행파일, 뒤 64바이트가 파이션 테이블, 2바이트는 시그니처로
항상 0x55AA 값을 가짐
◆ 페이지교체 알고리즘
- LRU(Least Recentrly Used)
한 프로세스에서 사용하는 각 페이지마다 카운터를 두어 현시점에서 가장 오랫동안
미사용된 페이지를 제거하는 방법
- LRU 방식의 단점
· 불러왔던 시간을 기록해야하므로 시간 오버헤드가 발생하고 구현이 복잡함
◆ 스왑공간(Swap space)
- 메모리는 운영체제의 주요 부분과 응용프로그램의 일부, 그리고 현재 사용중인 데이터가
저장되어 있는데 메모리가 부족한 경우 디스크 부분을 마치 메모리처럼 사용함
- /etc/vfstab에서 Swap 공간할당 확인이 가능
◆ 교착상태의 4가지 조건
1. 상호배제(Mutual Exclusion)
- 프로세스들이 자원을 배타적으로 점유하고 있어, 다른 프로세스들이 자원을 사용할 수 없도록 만듬
2. 점유와 대기 (Hold & Wait)
- 프로세스가 다른 자원을 요구하면서, 자신에게 할당된 자원을 해제하지 않을 때 발생
3. 비선점(Non-premption)
- 비선점 자원들은 그들을 점유하는 프로세스로부터 벗어나지 못함
4. 환형대기(Circular Wait)
- 프로세스와 자원들이 원형을 이루며, 각 프로세스는 자신에게 할당된 자원을 가지면서
상대방 프로세스의 자원을 상호요청하는 경우
◆ 스래싱(thrashing)
- 프로세스의 처리시간(프로그램 수행에 소요되는 시간)보다 페이지 교체시가이 더 많아지는 현상
- 원인 : 프로세스가 실행에 필요한 수만큼 충분한 페이지 프레임을 갖지 못해,
실행 중에 계속 페이지를 교체하면서 발생
- 해결방안 : 각 프로세스들에게 충분한 페이지 프레임을 할당하도록 다중 프로그래밍의 정도를
낮추거나, 주기억장치 내에 워킹세트를 유지
◆ 워킹세트(Working Set)
- 하나의 프로세스가 자주 참조하는 페이지들의 집합
- 프로그램이 효율적으로 수행되려면 워킹세트가 주기억장치 내에 유지되어야 함
- 주기억장치 내에 유지되지 않을 경우 보조기억 장치에서 계속 페이지를 요구하게 되므로
스래싱이 발생됨
◆ 구역성(Locality)
- 어떤 프로세스의 계산 영역은 지역화 된다는 1960년 Denning 교수가 증명한 이론
- 프로세스들은 기억장치 내의 정보를 균일하게 액세스하는 것이 아니라 어느 한순간
특정부분을 집중적으로 참조한다.
◆ 세마포어(Semaphore)
- 운영체제의 자원을 경쟁적으로 사용하는 다중 프로세스에서 행동을 조정하거나
동기화 시키는 기술
'자격증 > 정보보안기사' 카테고리의 다른 글
[정보보안기사 실기] 시스템보안④ (0) | 2016.04.18 |
---|---|
[정보보안기사 실기] 시스템보안③ (0) | 2016.04.18 |
[정보보안기사 실기] 시스템보안① (0) | 2016.04.16 |
gdb 명령어 (0) | 2014.12.10 |
ASM to C (1) (0) | 2014.12.10 |