1. 임계구역에서 프로세스간에 상호배제가 필요한 이유와 이 상호배제를 구현하는 기법들에 관해 기술하라.
(1)상호배제가 필요한 이유
병행수행 중에 있는 어떤 프로세스가 공용 데이터를 access하고 있을 때 그 프로세스는 임계구역에 있다고 하는데 여러 프로세스가 임계구역을 수행하고 있다면 lost
1) 장점 - CPU를 여러 개 사용하여 작업속도와 신뢰성을 높일 수 있다
(6) 시분할 시스템(time sharing system)
- 한 대의 컴퓨터로 일정한 시간 내에 여러 가지 작업을 처리하는 방법
1) 장점 - 여러사람이 공동으로 CPU를 사용하며 여러개의 프로그램을 기억장치에 적재
2) 단점 - 운영체제를 복잡하게 한다
환경을 제공
2) 자원 할당자(resource allocator):
사용자의 작업을 위한 프로그램이 필요로 하는 컴퓨터 시스템의 자원(H/W, S/W)을 할당하되, 충돌 시 공정하고 효율적으로 할당
3) 제어 프로그램(control program):
컴퓨터의 오류와 부적절한 사용의 방지를 위해, 다양한 입출력 장치와 사용자 프로그램을 제어
사용의 방지를 위해, 다양한 입출력 장치와 사용자 프로그램을 제어
▶ 운영체제의 목적
- 주목적: ‘편의성(convenience)’ - 컴퓨터 사용의 편의 제공 ex) 개인용 컴퓨터(PC)
- 부목적: ‘효율성(efficiency)’ - 컴퓨터 시스템의 효율적인 운영 ex) 대형 컴퓨터
→ 편의성과 효율성은 상반될 수 있음
컴퓨터에서 교착상태란 다중 프로그래밍 시스템 하에서 서로 다른 프로세스가 일어날 수 없는 사건을 무한정 기다리며 더 이상 진행되지 못하는 상태를 말한다.
<설명그림>
위 그림처럼 서로 다른 두개의 작업(트랜잭션)이 리소스 잠금을 교차해서 획득하려 할 때 발생하는 것을 교착상태라고 할