1P by neo 1달전 | ★ favorite | 댓글 1개

소개

  • Snowdrop OS는 IBM PC 아키텍처를 위한 16비트 실모드 운영체제임.
  • x86 어셈블리 언어로 처음부터 설계 및 개발되었음.
  • 파일 관리자, 텍스트 편집기, 그래픽 애플리케이션, BASIC 인터프리터, x86 어셈블러 및 디버거 등 다양한 유틸리티 포함.
  • DOS 게임을 포팅하여 게임도 제공함.
  • 플로피 디스크 이미지와 CD-ROM 이미지로 배포되며, 하드 디스크에 설치 가능함.

소스 코드

  • 부트 로더는 512바이트에 압축되어 커널을 로드함.
  • 커널은 애플리케이션에 기본적인 서비스와 추상화를 제공함.
  • 그래픽 및 GUI 프레임워크는 마우스 기반의 그래픽 애플리케이션을 만드는 데 필요함.
  • x86 어셈블러는 Snowdrop OS 내에서 저수준 애플리케이션을 생성하는 데 사용됨.
  • BASIC 인터프리터는 고수준 애플리케이션을 빠르게 만드는 데 유용함.
  • x86 디버거는 어셈블러와 함께 사용 가능함.
  • 동적 데이터 구조 라이브러리는 연결 리스트, 트리, BST 등을 다루는 데 사용됨.

버전

  • v1: 초기 버전, 단일 작업, 쉘, aSMtris
  • v2: PS/2 마우스 드라이버 및 테스트 앱
  • v3: 기본 멀티태스킹 및 가상 디스플레이 지원
  • v4: FAT12 드라이버 쓰기/삭제, 파일 관리자, 텍스트 편집기
  • v5: 직렬 포트 드라이버, 포맷 유틸리티, 파일 복사 지원
  • v6: 멀티플레이어 스네이크 게임 (직렬 포트 사용)
  • v7: 슬라이드 쇼 프레젠테이션 앱
  • v8: "메모리 유지" 작업 수명 모드
  • v9: 병렬 포트 드라이버, BMP 이미지 지원, 스프라이트
  • v10: 시스템 타이머 주파수 변경
  • v11: 애니메이션 스프라이트, 사운드 드라이버 (내부 스피커)
  • v12: 키보드 드라이버
  • v13: 스프라이트 기능 추가, Storks 게임
  • v14: 커널 구성, 프로그램 인수, 파일 유틸리티
  • v15: 16x2 LCD 컨트롤러 앱, 텍스트 편집기 수정
  • v16: GUI 프레임워크
  • v17: Snowmine (지뢰찾기 유사 게임)
  • v18: BASIC 인터프리터 및 링커
  • v19: 하드 디스크 설치
  • v20: BASIC 및 텍스트 편집기 개선
  • v21: BASIC과 GUI 프레임워크 통합
  • v22: x86 어셈블러, 멀티 디스크 지원, 파일 보기 유틸리티
  • v23: x86 디버거
  • v24: 서비스 로딩
  • v25: 동적 메모리 및 데이터 구조
  • v26: 설치 프로그램 개선, 가상 마우스 드라이버
  • v27: 커널 및 작업 간 메시징
  • v28: GUI 고해상도, 드로우 애플리케이션, 데스크톱 애플리케이션
  • v29: 데이터 압축, 행맨 게임
  • v30: 가상 마우스 드라이버 개선
  • v31: 런타임 라이브러리 (RTL), BASIC 인터프리터 RTL
Hacker News 의견
  • 90년대 중반에 32비트 취미 GUI OS를 개발했으며, 관련 책이 필수적이었음

  • MenuetOS와 KolibriOS를 추천하며, MenuetOS는 x64 버전과 SMP를 지원하지만 소스가 공개되지 않음

  • 최신 운영체제 디자인의 멋진 아이디어에 대한 관심을 표명함

    • 사용자와 OS 해커의 관점에서의 아이디어를 궁금해함
  • 로봇 공학을 위한 성능 좋은 RTOS의 발전에 대한 관심을 표명함

    • ROS/ROS2는 운영체제가 아니며, 성능 소프트웨어로 분류되지 않음
  • Snowdrop OS라는 어셈블리 언어로 작성된 홈브루 운영체제에 대한 언급

  • x86 어셈블리로 작성된 Snowdrop OS에 대한 칭찬

    • V32, BASIC 컴파일러에 대한 언급
  • ESP32에 포팅된 기본 GUI와 쉘 타입 OS를 보고 싶다는 의견

    • 현대적인 Commodore 64 경험을 제공하는 시스템을 희망함
  • ISO/IMG 파일을 제공하는 것에 대한 긍정적인 반응

    • SerenityOS도 이를 제공하기를 바람
  • MiSTer에서 실행된다는 점을 언급함