Operating System(3)
-
[til_211201][운영체제] 프로세스 동기화
핵노잼 운영체제 프로세스 간 통신 : 데이터를 어떻게 주고받는가? 1-1. 프로세스 간 통신의 개념 - 프로세스 내부 데이터 통신 : 전역변수나 파일을 이용하여 통신. 한 프로세스 내 스레드 여러 개 있을 때. - 프로세스 간 데이터 통신 : 공용 파일 또는 운영체제가 제공하는 파이프를 이용. - 네트워크를 이용한 데이터 통신 : 소켓을 이용. 1-2. 프로세스 간 통신의 분류 - 양방향 통신 : 실시간으로 전화하듯이 동시에 데이터 주고받는 것이 가능. (e.g. 소켓) - 반양방향 통신 : 양방향으로 데이터 주고 받는 것이 가능하지만 무전기로 통신하듯 한 시점에서는 한 방향으로만. 한번에 한놈만 보내거나 읽어오거나. - 단방향 통신 : 한쪽 방향으로만 전송 가능. (e.g. 전역변수, 파이프, 파일) ..
2021.12.03 -
[til_211130][운영체제] CPU 스케줄링
- 비선점형 알고리즘(스케줄링) : 운영체제가 자원에 대한 우선권을 포기한 상태이다. 따라서 어떤 프로세스가 실행 상태에 들어가서 cpu를 사용하면 프로세스가 종료되거나 자발적으로 대기상태에 들어갈 때까지 계속 실행된다. 운영체제가 중간에 빼앗을 수 없다. 비선점형 알고리즘의 종류 => FCFS, SJF, HRN 스케줄링 - 선점형 알고리즘(스케줄링) : 운영체제가 자원을 선점하고 자원을 프로세스에게 빌려주는 형태이다. 따라서 어떤 프로세스가 실행 상태에 있어도 운영체제가 필요하다고 판단되면 그 프로세스의 작업을 강제로 중단시키고 자원을 다시 가져갈 수 있다. 하나의 프로세스가 cpu를 독점할 수 없고 운영체제가 관리하기 때문에 빠른 응답 시간을 요구하는 대화형 시스템이나 시분할 시스템에 적합하다. 선점..
2021.11.30 -
[til_211129][운영체제] 데드락 Deadlock 교착상태
컴퓨팅시스템 운영체제 수업 과제로 데드락 레포트 쓰느라 하루를 다 보냈다.. 녹화 강의 듣고 > 정리하고 > 레포트로 써내기.. 레포트는 데드락에 대해서만 세 장이 넘어가는데 요점만 간략히 적어보자면: 데드락의 발생조건 1. 상호배제 (동시 공유가 안되는 자원) 2. 비선점 (이미 점유 중인 타 프로세스의 자원을 빼앗을 수 없음) 3. 점유와 대기 (하나 이상의 자원을 점유한 상태에서 다른 자원의 할당을 대기하는 상태) 4. 원형 대기 (프로세스들이 원형의 구조로 대기하는 상태 : 서로 할당을 기다리는 방향, 바라보는 방향이 같음.) 해결방법 1. 예방 1) 상호배제 예방 : 모두 공유할 수 있도록 함. 2) 비선점 예방 : 자원 이미 점유된 상태여도 빼앗을 수 있도록 함. 3) 점유와 대기 예방 : 모..
2021.11.30