Cute Running Puppy
반응형

cs/[OS] 혼자 공부하는 컴퓨터 구조 + 운영체제 20

[혼공 학습단 11기] 6주차 미션

기본 미션 p.400 확인 문제 1번 1. 메모리 할당 방식에 대한 설명으로 올바른 것을 다음 보기에서 찾아 써 보세요. (보기) 최초 적합, 최적 적합, 최악 접합 (①): 최초로 발견한 적재 가능한 빈 공간에 프로세스를 배치하는 방식 (②): 프로세스가 적재될 수 있는 가장 큰 공간에 프로세스를 배치하는 방식 (③): 프로세스가 적재될 수 있는 가장 작은 공간에 프로세스를 배치하는 방식 정답 ① : 최초 적합 ②: 최악 적합 ③: 최적 적합 해설 메모리 할당 방식 최소 적합 적재할 수 있는 공간을 발견하면 바로 그 공간에 프로세스 배치 검색 최소화, 빠른 할당 최적 적합 적재할 수 있는 공간 중 가장 작은 공간에 프로세스 배치 최악 적합 적재할 수 있는 공간 중 가장 큰 공간에 프로세스 배치 선택 미..

[혼공컴운] chapter 14. 가상 메모리

14-1. 연속 메모리 할당 - 연속 메모리 할당: 프로세스에 연속적인 메모리 공간을 할당하는 것 스와핑 현재 실행되지 않는 프로세스를 쫓아내고 생긴 빈 공간에 다른 프로세스를 적재하여 실행하는 방식 - 스왑 영역: 프로세스들이 쫒겨나는 보조기억장치의 일부 영역 - 스왑 아웃: 현재 실행되지 않는 프로세스가 스왑 영역으로 옮겨지는 것 - 스왑 인: 스왑 영역에 있던 프로세스가 다시 메모리로 옮겨오는 것 (이전과 다른 메모리 주소에 적재될 수 있음) -> 실제 메모리 크기보다 요구하는 메모리가 클 때 활용 가능 메모리 할당 최소 적합 적재할 수 있는 공간을 발견하면 바로 그 공간에 프로세스 배치 검색 최소화, 빠른 할당 최적 적합 적재할 수 있는 공간 중 가장 작은 공간에 프로세스 배치 최악 적합 적재할 ..

[혼공컴운] chapter 13. 교착 상태

13-1. 교착 상태란 - 교착 상태: 두 개 이상의 프로세스가 자원을 기다리며 진행이 멈춰 버리는 현상 식사하는 철학자 문제 동그란 원탁에 5명의 철학자, 5개의 음식, 5개의 포크 음식은 2개의 포크로 먹을 수 있음 식사 진행 순서 1. 왼쪽 포크가 사용 가능하면 집어 든다 2. 오른쪽 포크가 사용 가능하면 집어 든다 3. 포크 2개를 집어 들면 정해진 시간 동안 식사를 한다 4. 식사 시간이 끝나면 오른쪽 포크를 내려놓는다 5. 왼쪽 포크를 내려 놓는다 6. 1 ~ 5 과정을 반복한다 이러한 과정으로 식사를 한다고 했을 때 모든 철학자가 동시에 포크를 들어 식사를 하면 어떤 철학자도 식사를 할 수 없다 즉, 모든 철학자는 다른 철학자가 포크를 내려놓을 때까지 기다려야 한다 프로세스 / 스레드 자원 ..

[혼공 학습단 11기] 5주차 미션

기본 미션 p.363 확인 문제 1번 1. 뮤텍스 락과 세마포에 대한 설명으로 옳지 않은 것을 고르세요. ① 뮤텍스 락은 임계 구역을 잠근 뒤 임계 구역에 진입함으로써 상호 배제를 위한 동기화를 이룹니다. ② 세마포는 공유 자원이 여러 개 있는 상황에서도 이용할 수 있습니다. ③ 세마포를 이용해 프로세스 실행 순서 제어를 위한 동기화도 이룰 수 있습니다. ④ 세마포를 이용하면 반드시 바쁜 대기를 해야 합니다. 정답 ④ 세마포를 이용하면 반드시 바쁜 대기를 해야 합니다. 해설 ① 뮤텍스 락은 임계 구역을 잠근 뒤 임계 구역에 진입함으로써 상호 배제를 위한 동기화를 이룹니다. - 뮤텍스 락은 자물쇠를 이용하여 임계 구역에 진입하는 방식으로 상호 배제를 위한 동기화를 이룸 - 잠그고 -> 사용하고 -> 풀고 ..

[혼공컴운] chapter 12. 프로세스 동기화

12-1. 동기화란 동기화 목적: 협력하는 프로세스들의 실행 순서와 자원의 일관성을 보장하기 위해 동기화의 의미 협력적인 프로세스를 올바르게 실행하기 위해서 프로세스 사이의 수행 시기를 맞추는 것 - 프로세스 동기화: 프로세스 사이의 수행 시기를 맞추는 것 1. 실행 순서 제어 동기화: 올바른 순서대로 실행 2. 상호 배제 동기화: 동시 접근 불가 프로세스에 한 프로세스만 접근 1. 실행 순서 제어를 위한 동기화 읽고, 쓰는 프로세스가 있을 때 읽기 프로세스는 쓰기 프로세스 뒤에 와야 한다 2. 상호 배제를 위한 동기화 동시에 접근해서는 안 되는 자원에 동시에 접근하지 못하게 하는 것 한 프로세스가 올바르게 종료되지 않고 다른 프로세스가 접근한다면 올바르지 못한 값이 나올 수 있음 process A: 2..

[혼공학습단 11기] 혼공컴운 4주차 미션

기본 미션 1. P.304 확인 문제 1번 문제 다음은 프로세스 상태를 보여주는 프로세스 상태 다이어그램입니다. 1부터 5까지 올바른 상태를 적어보세요 정답 생성 상태 준비 상태 실행 상태 종료 상태 대기 상태 해설 프로세스 상태 1. 생성 상태 (new) 프로세스를 생성중인 상태 메모리에 적재되어 PCB를 할당 받은 상태 실행할 준비가 되면 준비 상태로 이동 2. 준비 상태 (ready) cpu 할당 차례를 기다리는 상태 3. 실행 상태 (running) cpu를 할당 받아 실행중인 샅애 할당된 시간 동안만 cpu 사용 가능 할당된 시간을 모두 사용한다면 다시 준비 상태로 이동 4. 대기 상태 (blocked) 입출력장치의 작업을 기다리는 상태 입출력 작업이 완료되면 준비 상태로 변경 5. 종료 상태 ..

[혼공컴운] chapter 11. CPU 스케줄링

11-1. CPU 스케줄링 개요 운영체제가 프로세스들에게 CPU 자원을 배분 하는 것 PCB에 명시되어 있음 프로세스 우선순위 우선순위가 높은 프로세스를 먼저 처리하는 것이 효율적 입출력 집중 프로세스 입출력이 많은 프로세스 예) 비디오 재생, 디스크 백업 등 실행 상태보다 입출력을 위한 대기 상태에 많이 머무름 CPU 집중 프로세스 CPU 작업이 많은 프로세스 예) 수학연산, 컴파일, 그래픽 처리 등 대기 상태보다 실행 상태에 많이 머무름 CPU 버스트 CPU를 사용하는 작업 입출력 버스트 입출력장치를 기다리는 작업 CPU 집중 프로세스와 입출력 집중 프로세스가 동일한 빈도로 CPU를 사용하는 것은 비합리적 입출력 집중 프로세스를 빨리 실행시켜 입출력 장치를 끊임없이 작동시키고 CPU 집중 프로세스에 ..

[혼공컴운] chapter 10. 프로세스와 스레드

10-1. 프로세스 개요 포그라운드 프로세스 사용자가 볼 수 있는 공간에서 실행되는 프로세스 백그라운드 프로세스 사용자가 볼 수 없는 공간에서 실행되는 프로세스 데몬(유닉스), 서비스(윈도우) 사용자와 상호작용하지 않고 정해진 일 만 수행하는 백그라운드 프로세스 프로세스 제어 블록 (PCB) 빠르게 번갈아 수행되는 프로세스의 실행 순서를 관리하고, 프로세스에 cpu와 같은 지원을 배분할 때 사용 프로세스와 관련된 정보를 저장하는 자료구조 커널 영역에 생성 특정 프로세스 식별, 처리 정보 저장 프로세스 생성시 만들어지고, 실행이 끝나면 폐기 새로운 프로세스 생성 == PCB 생성 프로세스 종료 == PCB 제거 PCB에 저장되는 항목 1. 프로세스 ID (PID) 프로세스 식별 번호 2. 레지스터 값 해당..

[혼공컴운] chapter 09. 운영체제 시작하기

09-1. 운영체제를 알아야 하는 이유 운영체제란 프로그램에 자원을 할당하고 프로그램이 올바르게 실행되도록 돕는 프로그램 (시스템) 자원: 프로그램 실행에 필요한 요소들 cpu, 메모리, 보조기억장치, 입출력 장치와 같은 부품 커널 영역: 부팅시 운영체제가 적재되어 실행되는 공간 사용자 영역: 응용 프로그램이 적재되는 공간 (커널 영역을 제외한 나머지 공간)운영체제를 알아야 하는 이유운영체제를 통해 하드웨어의 상태, 코드 실행 상태, 문제 상황 등을 파악할 수 있기 때문 하드웨어와 프로그램을 깊이 이해할 수 있음 09-2. 운영체제의 큰 그림 운영체제의 심장, 커널 자원 접근, 조작, 프로그램 안전 실행 등 운영체제의 핵심 서비스를 담당하는 부분 사용자 인터페이스: 커널에 포함되지 않는, 사용자와 상호작..

[혼공학습단 11기] 혼공컴운 3주차 미션

기본 미션 1. P.185 확인 문제 3번 문제 3. 다음 설명을 읽고 SRAM에 대한 설명인지 DRAM에 대한 설명인지 쓰세요. [보기| SRAM, DRAM] - 주로 캐시 메모리로 활용됩니다. [ (1) ] - 주로 주기억장치로 활용됩니다. [ (2) ] - 대용량화하기 유리합니다. [ (3) ] - 집적도가 상대적으로 낮습니다. [ (4) ] 정답 1. SRAM 2. DRAM 3. DRAM 4. SRAM 해설 DRAM dynamic RAM 저장된 데이터가 동적으로 변하는(사라지는) RAM 데이터의 소멸을 막기 위해 일정 주기로 데이터를 재활성화(다시 저장) 해야 한다 소비전력이 비교적 낮고, 저렴하고, 집적도가 높기에 일반적으로 사용하는 메모리 SRAM static RAM 저장된 데이터가 변하지 않..