본문 바로가기
728x90
반응형
SMALL

운영체제4

[OS] 동기화(세마포어) 세마포어(Semaphores) 1) 세마포어 개요 1. 세마포어 : 동기화를 위한 도구 - 음이 아닌 정수 값을 갖는 플래그 변수(S) 사용 - 다익스트라(Dijkstra)가 상호 배제를 극복하기 위해 제안 - 세마포어의 예 : 열차 진행을 알리는 차단기 2. 세마포어 연산 ㄱ: 세마포어 변수(S) a) 카운팅 세마포어(Counting Semaphore) - S의 크기 : 총 사용 가능한 자원의 개수 - S는 자원의 개수로 초기화됨 - S의 범위는 한정되어 있지 않음 b) 이진 세마포어(Binary Semaphore, mutex) - S는 0 또는 1 만 가질 수 있음. (초기값은 1) - 시스템에서 상호 배제를 제공하기 때문에 mutex라고도 불림 ㄴ: 세마포어(S)는 두 개의 표준 원자적 연산인 P(.. 2022. 8. 16.
[OS] 병행프로세스와 상호배제 병행 프로세스란? 1. 병행 프로세스 개념 프로세스들이 독립적으로 작업을 수행하거나 다른 프로세스와 협력하며 특정 기능 수행. 상호작용 필요 (제한된 자원을 공유하기 위해 프로세스는 서로 동기화되어야 함) 비동기 병행 프로세스(비동기) : 다른 프로세스들의 진행상태를 전혀 모르고 독립적으로 수행하면서 다수의 프로세스들이 동시에 존재하며 공유자원에 접근할 수 있는 프로세스. => 동기화 알고리즘 필요 2. 병행 프로세스 과제 공유자원을 서로 배타적으로 사용 병행 프로세스 사이에는 협력이나 동기화가 이루어져야 한다. 두 프로세스 사이에는 데이터 교환을 위한 통신이 이루어져야 한다. 프로세스는 동시에 실행되는 프로세스의 속도와 관계없이 일정한 실행 결과가 보장되어야 한다. 교착상태를 해결하고 병행 프로세스의 .. 2022. 8. 12.
[OS] 교착상태(Deadlock) 교착상태(deadlock)란? 둘 이상의 프로세스들이 다른 스로세스가 차지하고 있는 자원을 서로 무한정 기다리고 있어 프로세스의 진행이 중단된 상태를 의미합니다. 교착상태의 필수 조건 상호 배제(Mutual Exclusion) : 프로세스들이 필요로 하는 자원에 대해 배타적인 통제권을 요구하는 것으로, 한 프로세스가 사용 중이면 다른 프로세스는 반드시 기다려야 하는 경우. -> 동시 사용 불가(ex: 프린터) 점유와 대기(Hold and Wait) : 프로세스가 적어도 하나 이상의 자원을 할당받은 채로 다른 프로세스의 자원이 해제되기를 기다리는 경우. 비선점(Non-preemption) : 프로세스가 점유한 자원은 사용이 끝날 때까지 해제할 수 없는 경우. 환형 대기(Circular Wait) : 자원을.. 2022. 8. 11.
[OS] 운영체제 기본 운영체제란? 운영체제(Operating System)는 컴퓨터 시스템의 자원(기억장치, 프로세스, 정보 등)을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 프로그램의 집합입니다. 운영체제는 사용자와 하드웨어 간의 인터페이스 역할을 하는 시스템 소프트웨어의 일종으로, 다른 응용프로그램이 유용한 작업을 할 수 있도록 환경을 제공합니다. 운영체제 목적 처리능력 향상 사용 가능도 향상 신뢰도 향상 반환시간 단축 비간섭 운영체제를 사용하는 주된 목적은 컴퓨터의 하드웨어를 관리하는 것입니다. 운영체제 구조 사용자 인터페이스(GUI, CUI) 커널 하드웨어 운영체제는 필요한 부분을 전원이 켜지면 메모리에 올려놓고, 나머지는 필요할 때마다 메모리에 올리게 됩니다. 이때 .. 2022. 8. 10.
728x90
반응형