본문 바로가기
  • 초부득3 - 어제보다 나은 내일을 위해
  • 꿈이 현실이 되는 날까지
sw사관학교 정글 2기/pintOS

pintOS 관련 링크들 모음

by 금의야행 2021. 11. 2.

 

내가 직접 정리한 내용 기록용 벨로그

https://velog.io/@bdbest72

 

Operating Systems: Three Easy Pieces 웹버젼 /Korean 을 덧붙히면 한국어 번역본도 볼 수 있다. 대소문자 중요!

https://pages.cs.wisc.edu/~remzi/OSTEP/

 

카이스트 pintOS 깃북.

단순한 프로젝트 설명 뿐만 아니라, 개괄적인 개념에 대해서도 약간이나마 설명해준다. OS프로그램 관점에서의 개념을 익히기 좋다.

https://casys-kaist.github.io/pintos-kaist/

 

stanford 버젼 pintOS 설명들. 함수들에 대한 설명이 (project 1,2)기준 카이스트 깃북보다 더 많다.

https://web.stanford.edu/class/cs140/projects/pintos/pintos.html#SEC_Top

 

카이스트 권영진 교수님 추상화와 관련된 OS 강의

https://drive.google.com/file/d/1v7ZT0uCqnSFQQY3jQsnXnCh9WHPpgQxZ/view

 

sw정글 PintOS 공부 가이드라인 

  • 본 검색어 목록은 어디서부터 시작해야 할 지 감이 잡히지 않을 때 검색에 도움이 될 수 있을 정도의 간단한 검색어를 모은 것입니다. 리스트에 있는 키워드를 전부 이해하고 시작할 필요는 없습니다.
  • 제공하는 유튜브 링크도 역시 참고용으로, 목록에 있는 영상을 전부 볼 필요는 없습니다.
  • 빨간색 키워드는 선택 과제에 대한 키워드입니다.
  • 검색어를 프로젝트별로 분류해 놓았지만 분류가 정확하지 않을 수 있으며 한 검색어가 여러 개의 프로젝트와 동시에 관련되어 있을 수 있습니다. 검색어들의 순서에도 규칙이 없습니다.

참고 영상


키워드 모음

Project 0: PintOS

Virtual Machine ~= Hypervisor

  • qemu

Common bugs

  • Memory leak
  • Race condition
  • Deadlock
  • Use after free

Project 1: Threads

Time-sharing system

  • Context Switching
  • Scheduler
    • Round Robin (RR)
    • Priority
      • Priority donation
    • Multi-Level Feedback Queue Scheduler (MLFQS)
      • 4BSD
      • nice
  • Thread
    • Thread control block (TCB)

Timer Interrupt

Timer sleep

Synchronization

  • Semaphore
  • lock
  • condvar

Project 2: User Programs

User mode vs. Kernel mode

Process

  • Process Environment block (PEB)
  • Process identifier (PID)

User Stack

x86_64 calling convention

Register vs. Memory

argument vector

Executable Linkable Format (ELF) & loader

system call (syscall)

!!CAUTION!! some system call’s semantic may differ from POSIX standards

  • filesys related
    • open, close, create, read, write, seek, tell, ...
  • process related
    • halt, exit, exec, fork, wait ...

file descriptor

  • file descriptor table
  • dup2 syscall

Project 3: Virtual Memory

Virtual memory management

  • paging
    • virtual page
    • physical frame
    • page table & supplementary page table
  • Memory Management Unit (MMU)
  • Translation Lookaside Buffer (TLB)

Page type

  • Uninitialized page
    • Lazy initialization
  • Anonymous page
    • stack growth
  • file-backed page
    • mmap syscall

Swap in/out

  • page replacement policy
  • swap disk

Copy on Write (COW)

Project 4: File System

Type of file system

  • FAT(File Allocation Table)
  • Berkley FFS
  • EXT

File system component

  • file
    • extensible file
  • directory
    • working directory
  • link
    • hard link vs soft link

File system implementation

  • sector & cluster
  • super block
  • disk inode
  • in-memory inode
  • open inode table

Buffer cache

filesystem mount

Journaling

 

 

 

 

 

 

 

 

 

'sw사관학교 정글 2기 > pintOS' 카테고리의 다른 글

WIL week11~12 pintOS Virtual Memory  (0) 2021.10.28
WIL - week09~10  (0) 2021.10.14
Velog.io에 필기 합니다.  (0) 2021.10.04

댓글