ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ SerenityOS Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ ОБ c графичСским интСрфСйсом

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Serenity Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ энтузиастов вСдётся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ x86, оснащённой собствСнным ядром ΠΈ графичСским интСрфСйсом, ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΌ Π² стилС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм ΠΊΠΎΠ½Ρ†Π° 1990-Ρ… Π³ΠΎΠ΄ΠΎΠ². Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° вСдётся с нуля, Ρ€Π°Π΄ΠΈ интСрСса ΠΈ Π½Π΅ основана Π½Π° ΠΊΠΎΠ΄Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ОБ. ΠŸΡ€ΠΈ этом Π°Π²Ρ‚ΠΎΡ€Ρ‹ поставили ΠΏΠ΅Ρ€Π΅Π΄ собой Ρ†Π΅Π»ΡŒ довСсти SerenityOS Π΄ΠΎ уровня, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΠ³ΠΎ для повсСднСвной Ρ€Π°Π±ΠΎΡ‚Ρ‹, сохранив эстСтику систСм ΠΊΠΎΠ½Ρ†Π° 90-Ρ…, Π½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠ² Π΅Ρ‘ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ идСями для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ· соврСмСнных систСм. Код написан Π½Π° языкС Π‘++ ΠΈ поставляСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ BSD.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ являСтся Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ поставив ΠΏΠ΅Ρ€Π΅Π΄ собой ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ Ρ†Π΅Π»ΡŒ ΠΈ дСнь Π·Π° Π΄Π½Ρ‘ΠΌ ΠΏΠΎΠ½Π΅ΠΌΠ½ΠΎΠ³Ρƒ двигаясь Π²ΠΏΠ΅Ρ€Ρ‘Π΄ Π² качСствС Ρ…ΠΎΠ±Π±ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΠΏΠΎΠ»Π½Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΡƒΡŽ ОБ ΠΈ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡ΡŒ ΠΊ ΡƒΡ‡Π°ΡΡ‚ΠΈΡŽ Π΅Π΄ΠΈΠ½ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ². Из Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π°Π²Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ computron, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ с 2003 Π³ΠΎΠ΄Π° эмулятор ПК с процСссором i386.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ SerenityOS Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ ОБ c графичСским интСрфСйсом

ДоступныС Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ этапС развития возмоТности:

  • Π’Ρ‹Ρ‚Π΅ΡΠ½ΡΡŽΡ‰Π°Ρ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ;
  • ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ;
  • ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ ΠΈ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΉ сСрвСр WindowServer;
  • БобствСнный Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ графичСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ LibGUI с Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ²;
  • Π‘Ρ€Π΅Π΄Π° для Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ проСктирования интСрфСйса ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ;
  • Π‘Π΅Ρ‚Π΅Π²ΠΎΠΉ стСк с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ARP, TCP, UDP ΠΈ ICMP. БобствСнный DNS-Ρ€Π΅Π·ΠΎΠ»Π²Π΅Ρ€;
  • Ѐайловая систСма Π½Π° основС Ext2 (собствСнная рСализация Π½Π° C++);
  • Unix-подобная стандартная Π‘ΠΈ-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° (LibC) ΠΈ Π½Π°Π±ΠΎΡ€ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime ΠΈ Ρ‚.ΠΏ.);
  • ΠžΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² (pipe) ΠΈ пСрСнаправлСния Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°;
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° mmap() ΠΈ исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ELF;
  • НаличиС псСвдо-Π€Π‘ /proc;
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Unix-сокСтов;
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° псСвдотСрминалов ΠΈ /dev/pts;
  • Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° LibCore для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ эффСктивных ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² событий (Event loop);
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ SDL;
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ PNG;
  • Набор встроСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€, нСсколько ΠΈΠ³Ρ€ (Minesweeper ΠΈ Snake), интСрфСйс для запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², эмулятор Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°;

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru