xguru 2023-08-31 | parent | ★ favorite | on: Fomos - Rust로 제작된 실험적인 OS(github.com/Ruddle)

다행히?도 같은 글을 Neo가 처리했네요 ㅎㅎㅎ

Fomos: 러스트로 구축된 실험용 운영체제

문제는 저도 저 링크를 보고 같이 요약하고 있었다는거 ㅠ

무려 3가지의 요약버전을 보시면서 비교하시면 되겠습니다 ㅎ

  • Non-Unix OS 를 만들어보고 싶었음
  • Exo-Kernel은 흥미롭지만 대부분 이론에 불과해서, 이 패턴을 이해하는데 도움이 됨
  • 기능들
    • 그래픽 출력, 동적 할당, 모든 앱이 비동기 루프에서 실행
    • Virtio 마우스/키보드(드라이버들도 비동기 태스크)
    • 협업 스케줄링(앱들이 최대한 제어를 넘김)
    • 부팅후에는 컨텍스트 스위치 없음
    • Virgl™ 을 거의 지원
  • 독특한 점
    • 앱의 시그니처 pub extern "C" fn _start(ctx: &mut Context) -> i32
    • 앱들은 표준 라이브러리가 필요 없고, 모든 OS 기능들은 Context 를 통해 앱에 전달
    • Fomos에서 앱은 그냥 한개의 function 임. 이게 가장 큰 부분. Unix/Windows OS의 실행파일은 함수에 비해서 매우 복잡함.