Archiwa tagu: assembler

IdyllaOS

IdyllaOS był to projekt otwartego systemu operacyjnego, który rozwijałem w latach 2005-2011.

Główne cechy systemu:

  • Jądro: monolityczne z dynamicznie ładowanymi modułami
  • Zgodność ze standardem multiboot
  • Funkcje systemowe: w większości zgodne z standardem POSIX
  • Biblioteka standardowa: port biblioteki newlib
  • Aplikacje: pliki wykonywalne w formacie ELF
  • Struktura katalogów: zgodna z FHS (Filesystem Hierarchy Standard)
  • Obsługiwane procesory:
    • i686 oraz lepsze (wersja 32 bitowa)
    • amd64 (wersja 64 bitowa)
  • Obsługiwane urządzenia:
    • Dyski: ATA/IDE
    • Napędy: ATAPI
    • Karta graficzne: VGA (tryb tekstowy), BochsVBE (tryb graficzny)
    • Klawiatury: AT
    • Szyna PCI
  • Obsługiwane systemy plików:
    • Ext2 (w trybie tylko do odczytu)
    • Ramfs (system plików przechowujący informacje w pamięci RAM)

Projekt ten został wykorzystany jako mój projekt inżynierski (treść pracy oraz prezentacja dostępne są do pobrania poniżej).

Całość kodu źródłowego dostępna jest nadal na SourceForge.net w repozytoriach GIT oraz SVN (wcześniejsze wersje).

Na systemie działały popularne aplikacje jak GNU Nano, GCC, GNU Binutils, GNU Grep, GNU Make, itp. System potrafił kompilować aplikację pod samego siebie (brakło kilku rzeczy aby sam potrafił się skompilować).

W ostatnich wersjach dorobił się nawet prostej obsługi socketów oraz protokołów ARP, IP oraz UDP.

Screenshoty:

Poniżej zamieszczam screenshoty z systemu działającego po QEMU (niestety zbyt wiele się nie zachowało):

Do pobrania: