/HYU-ELE3021-OS

This project is for the “Operating Systems” class in 2022-1, prof. SY Kang.

Primary LanguageCMIT LicenseMIT

HYU-ELE3021-OS

This project is for the “Operating Systems” class in 2022-1, prof. SY Kang.

개요

  • 교육용 OS인 xv6를 개선하여 다양한 기능을 추가하는 프로젝트입니다.
  • 자세한 내용은 pdf를 참조하세요.

Project 1: Adding User Program

  • xv6의 구성 요소를 확인합니다.
  • 첫 custom 유저 프로그램인 getppid()를 구현합니다.

Project 2: Scheduler

  • 기존 Round-robin 방식의 단순한 스케줄러를 개선합니다.
  • Multi-level queue 스케줄러와 MLFQ 스케줄러를 구현했습니다.

Project 3: Multithreading

  • 멀티스레드가 지원되지 않는 기존 xv6를 개선합니다.
  • 각 스레드는 원본 프로세스의 메모리 영역 등 자원을 공유합니다.

Project 4: User account

  • 유저의 개념과 유저 권한, 로그인 등을 구현합니다.
  • 다양한 유저 편의를 위한 기능을 추가합니다.