본문 바로가기

운영체제(OS) 목차 &책 추천

운영체제를 처음부터 쭈우욱 순서대로 공부하고 싶으신 분들을 위해 

뒤죽박죽으로 게시된 글들을 순서대로 정리해봤어요

운영체제 책 추천

운영체제하면 뭐니뭐니 이미 너무너무 유명한 공룡책이죠 #공룡책 미만 잡

제 포스팅도 이 공룡책을 기반으로 작성했습니다.

같이 참조해서 보면 좋을 것 같아요

 

Operating System Concepts

10판

9판

 

영어로 완독하는데 좀 시간이 걸려서 그렇지 친절한 설명에 자세한 예시, 꼼꼼한 내용까지!

제 기준 별 다섯개!! 한 번쯤 읽어보면 왜 대부분의 대학교에서 운영체제의 전공 교재로 이 책을 선택하는지 알 수 있습니다. ㅎㅎ

# 운영체제 카테고리 계기

최근들어 주변에도 그렇고 IT 분야에 높아진 관심을 느낄 수 있는데요.

아무래도 Java, C언어 프로그래밍 언어는, 인터넷 무료 강좌도 많고 사이트도 많고, 국비 지원 학원까지 접할 수 있는 부분이 많은데 운영체제는 그렇지 않은 것 같다는 생각이 들었어요 ㅎㅎ

블로그도 운영체제 요약 포스팅은 많지만(대학생 시험 대비)

초보자들이 접하기 좋게 쉽게 풀어쓴 내용은 많이 없는 것 같아서 그 부분에 대해 내가 조금 제공해줄 수 있지 않을까? 생각을 하게 되었습니다.

 

나이는 밝히고 싶지 않지만.ㅎㅎㅎ 생각보다 운영체제 수업을 수강한지 꽤 많은 시간이 흘렀어요 ㅎㅎ

그러므로 오타나 실수가 있으면 너그러이 봐주시고 좋은 마음을 먼저 봐주셨으면 좋겠습니다. 혹시 이해하기 어렵게 글이 작성되어있다 이런 피드백도 좋아요!! ㅎㅎ

아무래도 시간이 넉넉하지가 않아서, 차근차근 하나씩 채워나갈 예정입니다. 먼저 요청해주시는게 있다면 그걸 먼저 작성해보도록..

 

아! 글고, 포스팅 밑에 '공감 댓글 보답광고 고마워요' ♥ 이런 문구는 너무 나쁘게 보지마시구 그냥 이런대서 소소한 의미와 보람을 찾는구나 ㅎㅎ 생각하고 넘어가주시면 감사해요 ♥♥ 

사실 여러분들이 광고를 눌러주셔도 하루에 들어오는 양은 오백원도 안돼요 ㅠㅠ (팩트입니다 ㅠ)

ㅋㅋ고래서 광고는 오히려 상관없고 공감만 눌러줘도 정말 행보케요 ㅎㅎ 요새 도움된다는 댓글 한 개만 봐두 뭔가 선생님 마음을 알 것 같은(?오반가..ㅎ) 사사로운 기쁨이 있더라고요 ㅎㅎ 사실 현실 마주하기 싫어서 블로그하면서 현실을 도피로 하는걸지도..ㅠ

왠만하면 댓글은 다 피드백해드리려고 하는데 ㅠㅠ 저도 일안할수있는 금수저는 아니다보니 ㅠㅠ 늦어도 이해해주세요 ㅎㅎㅎ(참고로 블로그는 네이버와 티스토리 두 개 운영하고 있숩니당)

네이버 링크는 요기: https://blog.naver.com/jhnyang

# 운영체제 목차

Chapter 1. Instruction 시작하기 전~ 소개

♠ 운영체제(Operating System : OS)란 ? 운영체제 종류와 목적, OS 정복

 

♠ 운영체제_컴퓨터구조, device controller(장치 제어기)

 

♠ [운영체제]컴퓨터 시스템 발전과정, 역사- 메인프레임mainframe, 배치 batch 시스템, Resident monitor

 

♠ 유저(User)모드 vs 커널(Kernel)모드 (모니터 모드)- 듀얼 모드

 

[..이어서 추가될 예정..]

 

Chapter 2. System Structures 시스템 구조

♠ 인터럽트의 종류 (Types of Interrupt) - trap, exception, timer, SVC 등

 

[..이어서 추가될 예정..]

 

Chapter 3. Process Concept 프로세스 개념

♠ 프로세스와 프로그램 차이는? (Process vs Program)

 

♠ Process Address Space 메모리내 프로세스 구조 (Code segment, static data 등)

 

♠ 프로세스 상태(Process State-ready, waiting etc)

 

♠ PCB (Process Control Block)란? PCB 정보 & Context Switching 문맥교환 & Overhead 오버헤드

 

♠ 메세지 교환(Message passing) vs 데이터 공유(Shared memory)-IPC

 

[..이어서 추가될 예정..]

Chapter 4. Multithreaded Programming 멀티 스레드 프로그래밍

[..이어서 추가될 예정..]

Chapter 5. Process Scheduling 프로세스 스케줄링

♠ CPU burst VS I/O burst

 

♠ 스케줄링과(Scheduling algorithm & criteria) dispatcher란?

 

♠ 시스템에 따른 스케줄링의 목표 (Scheduling goals)

 

♠ FIFO/FCFS (first come first served)정의와  문제 & Convey Effect

 

스케줄링 알고리즘 SJF(Shortest Job First) 정리, 장점 한계 non preemptive

 

♠ 선순위 스케줄링(Priority Scheduling) 총정리,장단점, aging 스케줄링, 우선순위 부여기준

 

♠ RR(Round - Robin) 순환할당스케줄링, time quantum 타임퀀텀

 

♠ Multilevel Queue 다단계큐 멀티레벨 큐

 

multilevel feedback queue(다단계 피드백 큐)

 

[..이어서 추가될 예정..]

Chapter 6. Synchronization 동기화

♠ 동기화 Synchronization 문제, Race Condition

 

♠ Critical Section (임계영역) & Lock & Busy-waits

 

♠ 임계영역 해결조건 & Peterson's solution (피터슨 알고리즘)

 

♠ [Atomic 하드웨어 방법]test_and_set, Compare_and_Swap, Bounded-waiting

 

뮤텍스 (Mutex Locks)

 

♠ [운영체제]세마포어(semaphore) 완전 쉬운 이해! wait(), signal(), 이진, 계수형

 

[..이어서 추가될 예정..]

Chapter 7. Deadlocks 데드락 교착상태

 교착상태(데드락Deadlocks) 정의 및 예시

 

 교착상태(deadlock데드락)의 발생조건(necessary condition)

 

 교착상태 처리방법(Handling deadlocks) 예방법

 

 [운영체제]교착상태 회피-은행원 알고리즘(Banker's Algorithm) 쉬운 예시, 안전상태, 불안전상태

 

[..이어서 추가될 예정..]

Chapter 8. Memory-Management Strategies 메모리 관리

 Memory Management 메모리 시스템(메모리 관리 목표)

 

 링킹(Linking)이란? 링커(Linker)란? 컴파일 과정,목적파일, 빌드과정

 

 Static Linking vs Dynamic Linking(shared Library) 정적링킹 vs 동적링킹

 

 Dynamic Loading 동적적재 & Overlays 오버레이 (paging VMM과 차이점)

 

 [운영체제]Swapping 스와핑(Swap 스왑)이란? 프로세스 교체, VMM과 차이

 

Address Binding 주소 할당, 주소 바인딩, 논리적 주소(logical) vs 물리적 주소(physical) 컴파일 타임

 

 Address binding 로드타임 바인딩(load time binding), 실행타임(execution time) 바인딩 (run time binding) 주소할당

 MMU(Memory management unit)란? contiguous allocation(연속메모리 할당) MMU와 메모리분할 문제, 메모리관리장치

 

 Fragmentation 메모리 단편화란 무엇인가? External fragmentation(외부 단편화)이란? 초 쉬운 설명으로 흐름 잡기~

first-fit 최초적합, best-fit 최적적합, worst-fit 최악적합에 대해 알아보자!

 메모리 관리기법 - 페이징 (paging)이란? 내부 단편화(Internal Fragmentatoin)에 대해 알아보자

 캐시 메모리 사상 방식1 - 직접사상 Direct Mapping

 

[..이어서 추가될 예정..]

Chapter 9. Virtual-Memory Management

[..이어서 추가될 예정..]

Chapter 10. File System 파일 시스템

[..이어서 추가될 예정..]

Chapter 11. Implementing File-Systems.

[..이어서 추가될 예정..]

 

정리하고 나니까 뿌듯하네요 뿌듯뿌듯 ㅎㅎ