본문 바로가기

운영체제

(28)
8. 입출력 장치 인프런의 [그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 내용이다. 간단하게 들은 내용을 정리한 것으로, 더 자세한 내용을 원한다면 위 강의를 구매하는 것을 추천한다. 짧은 강의 형태로 단시간에 운영체제를 배우고 싶은 사람, 쉽게 운영체제를 배우고 싶은 사람에게 적합하다고 생각한다. ✏️ 주변 장치(I/O 디바이스, 저장장치) 그래픽 카드, 하드 디스크, SSD, 키보드, 마우스 등 주변장치들은 메인보드에 있는 버스로 연결 캐릭터 디바이스 - 마우스, 키보드, 사운드카드, 직렬/병렬 포트 등이 있음. 데이터 전송 단위가 캐릭터(글자)로 상대적으로 크기가 작음. 블록 디바이스 - 하드디스크, SSD, 그래픽카드 등이 있음. 데이터 전송 단위가 블록(범위)로 상대적으로 크기가 큼. 입출력 제어기 - 두..
6. 메모리 인프런의 [그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 내용이다. 간단하게 들은 내용을 정리한 것으로, 더 자세한 내용을 원한다면 위 강의를 구매하는 것을 추천한다. 짧은 강의 형태로 단시간에 운영체제를 배우고 싶은 사람, 쉽게 운영체제를 배우고 싶은 사람에게 적합하다고 생각한다. ✏️ 메모리 종류 레지스터 - 가장 빠른 기억 장소. CPU 내에 존재. 전원 종료 시 데이터가 날라가므로 휘발성 메모리. 속도 빠름. 용량 작음. 가격 비쌈. 32bit, 64bit - 레지스터의 크기 메인 메모리에 있는 값을 가져와 계산 후 다시 메모리에 저장 캐시 - 레지스터와 메인메모리 사이에 존재 휘발성. L1, L2, L3 캐시로 보통 이루어져 있음. CPU가 사용하는 메모리로 빠른 속도를 가짐 메인 메모리에..
4. 데드락 인프런의 [그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 내용이다. 간단하게 들은 내용을 정리한 것으로, 더 자세한 내용을 원한다면 위 강의를 구매하는 것을 추천한다. 짧은 강의 형태로 단시간에 운영체제를 배우고 싶은 사람, 쉽게 운영체제를 배우고 싶은 사람에게 적합하다고 생각한다. ✏️ 데드락이란? (feat. 식사하는 철학자) 교착 상태 - 여러 프로세스가 서로 다른 프로세스의 작업이 끝나기를 기다리다가 아무도 작업을 진행하지 못하는 상태 식사하는 철학자 교착 상태의 필요조건 - 이 중 하나라도 충족하지 않는다면 교착 상태는 발생하지 않음 상호배제 - 한 리소스가 점유당했다면, 그 리소스는 다른 프로세스에게 공유가 되면 안됨 비선점 - 프로세스는 다른 프로세스는 자원을 뺏을 수 없음 점유와 대기..
3. 프로세스 동기화 인프런의 [그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 내용이다. 간단하게 들은 내용을 정리한 것으로, 더 자세한 내용을 원한다면 위 강의를 구매하는 것을 추천한다. 짧은 강의 형태로 단시간에 운영체제를 배우고 싶은 사람, 쉽게 운영체제를 배우고 싶은 사람에게 적합하다고 생각한다. ✏️ 프로세스 간 통신 프로세스는 독립적으로 통신하지만 다른 프로세스와 데이터를 주고받으며 통신을 하는 경우도 있음 한 컴퓨터 내에서 프로세스 간 통신을 하는 방법 - 파일과 파이프 이용 파일 - 프로세스들이 하나의 파일을 이용해 읽고 씀 파이프 - 운영체제가 생성한 파이프를 이용해 데이터를 읽고 쓰는 방법 한 프로세스 내에서 쓰레드 간 통신을 하는 방법 - 쓰레드 이용 코드, 데이터, 힙 영역은 공유하고, 스택은 각자..
2. CPU 스케줄링 인프런의 [그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 내용이다. 간단하게 들은 내용을 정리한 것으로, 더 자세한 내용을 원한다면 위 강의를 구매하는 것을 추천한다. 짧은 강의 형태로 단시간에 운영체제를 배우고 싶은 사람, 쉽게 운영체제를 배우고 싶은 사람에게 적합하다고 생각한다. ✏️ CPU 스케줄링 개요 운영체제가 모든 프로세스에게 CPU를 할당/해제하는 일 어떤 프로세스들에게 할당해야 하는가? 또 얼마나 할당해야 하는가? 프로세스를 담고 있는 PCB가 준비상태의 다중 큐를 참조 다중 큐는 큐(queue)라는 자료구조로 관리 ✏️ 스케줄링 목표 리소스 사용률 - CPU 사용률이나 I/O 사용률 높이기 오버헤드 최소화 공평성 - 모든 프로세스에게 공평하게 CPU가 할당되어야 함. 우선순위는 시스..
1. 프로세스와 쓰레드 인프런의 [그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 내용이다. 간단하게 들은 내용을 정리한 것으로, 더 자세한 내용을 원한다면 위 강의를 구매하는 것을 추천한다. 짧은 강의 형태로 단시간에 운영체제를 배우고 싶은 사람, 쉽게 운영체제를 배우고 싶은 사람에게 적합하다고 생각한다. ✏️ 프로그램(Program) 하드 디스크와 같이 저장장치에 저장된 명령문의 집합체 (.exe) ✏️ 프로세스(Process) 프로세스 = 실행 중인 프로그램 하드디스크에 저장된 프로그램이 메모리에 올라갔을 때 실행 중인 프로그램 능동적인 존재 Code, Data, Heap, Stack 영역으로 구성 Code 영역 - 자신을 실행하는 코드 Data 영역 - 전역, 정적 변수 저장 Heap 영역 - 동적으로 메모리를 할당..
0. 운영체제 들어가기 인프런의 [그림으로 쉽게 배우는 운영체제]강의를 듣고 정리한 내용이다. 유료지만 운영체제 강의를 좀 더 쉽고 알차게 배우고 싶은 마음에 구매했다. 단순히 듣고 정리한 내용이라, 자세한 내용은 위 강의를 구매하는 것을 추천한다. ✏️ 운영체제 개요 개인용 컴퓨터 - Windows, MacOS 등 대형 컴퓨터/서버용 - Unix, Linux 스마트폰/태블릿 - 안드로이드, ios 운영체제 네비게이션/스마트워치/냉장고/세탁기 등 - 임베디드 운영체제 📌 컴퓨터는 운영체제가 없어도 동작한다. (다른 기능은 추가할 수 없음. 유연성 X) 💡 운영체제가 하는 일 프로세스 관리 메모리 관리 하드웨어 관리 파일 시스템 관리 ✏️ 운영체제의 역사 1940년도 - 애니악 1950년도 - 직접 회로(IC; 현대적인 CPU의..
23. Disk Management & Scheduling 1, 2 이화여자대학교 반효경 교수님의 운영체제 강의 27강과 28강을 듣고 정리한 내용이다. ✏️ Disk Structure ✔️ logical block 디스크의 외부에서 보는 디스크의 단위 정보 저장 공간들 주소를 가진 1차원 배열처럼 취급 정보를 전송하는 최소 단위 ✔️ Sector logical block이 물리적인 디스크에 매핑된 위치 Sector 0은 최외곽 실린더의 첫 트랙에 있는 첫 번째 섹터 ✏️ Disk Management ✔️ Physical formatting (Low-level formatting) 디스크를 컨트롤러가 일곡 쓸 수 있도록 섹터들로 나누는 과정 각 섹터는 header + 실제 data(보통 512 bytes)+ trailer 로 구성 header와 trailer는 secto..