목록컴퓨터 구조 (8)
하루에 하나씩
연속 메모리 할당프로세스에 연속적인 메모리 공간을 할당하는 방식스와핑실행되지 않는 프로세스들을 보조기억장치의 일부영역으로 쫓아내고 생긴 빈 공간에 또 다른 프로세스를 적재하여 실행하는 방식이 때 보조 기억 장치의 일부 영역을 스왑 영역프로세스가 메모리에서 스왑 영역으로 옮겨지는 것을 스왑 아웃프로세스가 다시 메모리로 옮겨오는 것을 스왑 인프로세스가 요구하는 메모리 주소 공간의 크기가 실제 메모리 크기보다 큰 경우에도 프로세스 동시 실행 가능!메모리 할당최초 적합, 최적 적합, 최악 적합이 있음최초 적합 First Fit운영 체제가 메모리 내 빈공간을 순서대로 검색 후 적재할 수 있는 공간 발견 시 그 공간에 프로세스를 배치검색을 최소화, 결과적으로 빠른 할당이 가능최적 적합 Best Fit빈 공간을 모두..
식사하는 철학자 문제교착 상태를 설명하기 위한 아주 고전적인 예시 상황철학자들은 아래와 같은 순서로 식사1. 생각하다가 왼쪽 포크가 사용 가능 하면 집어든다 2. 생각하다가 오른쪽 포크가 사용 가능하면 집어든다3. 왼쪽, 오른쪽 포크를 모두 들었다면 정해진 시간동안 식사4. 식사 시간이 끝나면, 오른쪽 포크를 내려놓고5. 왼쪽 포크도 내려 놓는다.6. 1번부터 반복이 때, 모든 철학자가 동시에 왼쪽 포크를 집어 든다면, 5명의 철학자는 절대로 식사를 할 수 없는 상태가 됨이렇게, 일어나지 않을 사건을 기다리며 진행이 멈춰버리는 것을 교착상태라고 함철학자를 프로세스(or 스레드), 포크가 자원, 생각하는 과정이 자원을 기다리는 행위라고 보면 됨자원 할당 그래프 (Resource - allocation gr..
동기화 협력하여 실행되는 프로세스들은 실행 순서 및 자원의 일관성을 보장해야함 동기화 필요 동기화의 의미 프로세스는 동시다발적으로 실행되며 서로 데이터를 주고받으면서 협력하여 실행 사전적인 의미 정보 통신 분야에서 동기화란, 작업들 사이의 수행 시기를 맞추는 것 프로세스 동기화 프로세스들 사이의 수행시기를 맞추는 것 다음의 두 종류가 있음 실행 순서 제어 : 프로세스를 올바른 순서대로 실행하기 상호 배제 : 동시에 접근해서는 안되는 자원에 하나의 프로세스만 접근하게 하기 프로세스 뿐 아니라 스레드도 동기화 대상 실행의 흐름을 갖는 모든 것이 동기화 대상임 실행 순서 제어를 위한 동기화 예를 들어, Writer 프로세스와 Reader 프로세스가 있다고 하면, Reader 프로세스는 Writer 프로세스가 ..
CPU 스케줄링 개요 CPU 스케줄링이란? 운영체제가 프로세스들에게 합리적으로 CPU 자원을 배분하는 것 컴퓨터 성능과 직결되는 문제 프로세스 우선순위 만약, 모든 프로세스를 동일하게 순차적으로 실행시킨다면 언뜻 보면 합리적인 것 같지만 급하게 수행되어야 하는 프로세스가 있는 경우, 효율적이지 못하게 됨 이를 우선순위가 다르다고 함 우선 순위가 높을 수록, 빠르게 처리해야하는 프로세스임 대부분의 프로세스들은 CPU와 입출력장치를 모두 사용하며 실행 실행과 대기를 반복... 예시로, 워드 프로세서가 있는데 CPU를 사용하여 명령어를 실행 사용자로 입력받은 내용을 보조기억장치에 저장 CPU를 사용하여 명령어를 실행 사용자가 입력한 내용을 화면에 출력 입출력 집중 프로세스와 CPU 집중 프로세스 프로세스는 종..