본문 바로가기

운영체제12

[운영체제] 교착상태 (Deadlock) 교착상태 (Deadlock) 한 집합 내의 프로세스들이 각자 다른 프로세스에서 발생할 이벤트들을 기다리고 있어서 자원의 요구가 뒤엉킨 상황이다. 즉, 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 기다릴 때 교착상태가 발생한다. 교착상태 발생 조건 조건 설명 상호배제 (Mutual Exclusion) 한 번에 한 프로세스만 해당 자원을 사용할 수 있어야 한다. 점유대기 (Hold and Wait) 다른 프로세스에 할당된 자원을 얻기 위해 기다리는 최소 자원 하나를 보유한 프로세스가 존재해야 한다. 비선점 (Non-preemptive) 다른 프로세스가 점유하고 있는 자원을 강제로 뺏을 수 없다. 순환대기 (Circular Wait) P(n-1) 프로세스가 P(n) 프로세스가 보유하고 있는 자원.. 2020. 9. 23.
[운영체제] 컴퓨터 시스템 구성요소 운영체제 국내도서 저자 : 구현회 출판 : 한빛아카데미 2013.07.30 상세보기 컴퓨터 시스템 하드웨어 (Hardware) : 데이터를 처리하는 물리적 기계 장치 소프트웨어 (Software) : 특별한 작업을 지시하기 위해 명령어로 작성한 프로그램 운영체제 : 하드웨어 - 사용자 사이의 인터페이스를 담당하며 하드웨어와 소프트웨어 자원을 관리하는 프로그램 하드웨어 1. 프로세서 (Processor) 컴퓨터 각 부분의 동작을 제어하고 연산을 수행한다. 레지스터 (Register), 산술 논리 연산장치 (ALU), 제어장치 등으로 구성됨 2. 버스 (Bus) 프로세서를 비롯한 각 장치를 서로 연결하여 데이터를 주고받을 수 있게 해주는 통로 위치에 따라 내부 버스, 외부 버스로 구분 3. 레지스터 (Reg.. 2020. 9. 20.
[운영체제] 프로세스 동기화 ※출처 : TOPCIT 에센스 프로세스 동기화 2개 이상의 프로세스가 동시에 처리 중인 동일한 자료에 접근하여 변경하거나, 자료 조작 순서가 실행된 결과에 영향을 줄 때를 경합상태 (Race Condition) 이라고 한다. 경합 상태에서는 하나의 프로세스만 자료를 조작하도록 보호해야함 -> 프로세스 동기화 ​ 임계구역 (Critical Section) 다른 프로세스와 공유하는 자료를 변경하는 작업을 수행 한 번에 1개의 프로세스만이 접근 가능한 영역 do { entry section critical section //임계구역 exit section remainder section //잔류구역 }while(TRUE); ​ 임계구역 문제 해결 방안의 3가지 조건 조건 설명 상호배제 (Mutual Exclu.. 2020. 9. 14.
[운영체제] Pthread 개요 3가지 thread 라이브러리 POSIX pthread Windows thread API Java thread API ​ Pthread - user-level과 kernel-level에서 둘 다 실행되지만 보통 kernel-level에서 ​ Windows thread - kernel-level 라이브러리 ​ Java thread - 더 high level의 라이브러리 - pthread와 Windows thread 라이브러리 둘 다 호출 ​ Pthread API - create, terminate, join, detach - synchronization ​ Thread pool - 스레드를 사용하는 실행 모델 - 기존 방식 : 새 요청 들어옴 -> 새로운 스레드 생성 및 요청 처리 -> 완료되면 스레드 파.. 2020. 9. 14.