โครงการ SerenityOS พัฒนาระบบปฏิบัติการที่มีลักษณะคล้าย Unix พร้อมอินเทอร์เฟซแบบกราฟิก

ในแนวเขตโครงการ ความสงบเงียบ กลุ่มผู้ที่ชื่นชอบกำลังพัฒนาระบบปฏิบัติการที่มีลักษณะคล้าย Unix สำหรับสถาปัตยกรรม x86 โดยมีเคอร์เนลและอินเทอร์เฟซแบบกราฟิกของตัวเอง ซึ่งออกแบบในรูปแบบของระบบปฏิบัติการในช่วงปลายทศวรรษ 1990 การพัฒนาดำเนินการตั้งแต่เริ่มต้นเพื่อประโยชน์และไม่ได้ขึ้นอยู่กับรหัสของระบบปฏิบัติการที่มีอยู่ ในเวลาเดียวกันผู้เขียนตั้งเป้าหมายที่จะนำ SerenityOS ไปสู่ระดับที่เหมาะสมสำหรับการทำงานในชีวิตประจำวันโดยรักษาความสวยงามของระบบช่วงปลายยุค 90 แต่เสริมด้วยแนวคิดที่เป็นประโยชน์สำหรับผู้ใช้ที่มีประสบการณ์จากระบบที่ทันสมัย รหัสนี้เขียนด้วยภาษา C ++ และ ให้มา ภายใต้ใบอนุญาต BSD

โครงการนี้เป็นตัวอย่างที่ดีของการกำหนดเป้าหมายที่เฉพาะเจาะจงและทีละเล็กทีละน้อยในแต่ละวัน ก้าวไปข้างหน้า คุณสามารถสร้างระบบปฏิบัติการที่ทำงานได้อย่างสมบูรณ์และมีส่วนร่วมเป็นงานอดิเรก คนที่มีใจเดียวกัน. โครงการอื่นๆ ของผู้เขียนคนเดียวกัน ได้แก่: คอมพิวเตอร์ซึ่งเป็นโปรแกรมจำลองพีซีที่มีโปรเซสเซอร์ i2003 ในการพัฒนามาตั้งแต่ปี 386

โครงการ SerenityOS พัฒนาระบบปฏิบัติการที่มีลักษณะคล้าย Unix พร้อมอินเทอร์เฟซแบบกราฟิก

คุณสมบัติที่มีอยู่ในขั้นตอนการพัฒนาปัจจุบัน:

  • มัลติทาสกิ้งล่วงหน้า;
  • มัลติเธรด;
  • คอมโพสิตและหน้าต่างเซิร์ฟเวอร์ วินโดว์เซิร์ฟเวอร์;
  • กรอบของตัวเองสำหรับการพัฒนาแอพพลิเคชั่นกราฟิก LibGUI พร้อมชุดวิดเจ็ต
  • สภาพแวดล้อมสำหรับการออกแบบอินเทอร์เฟซของแอปพลิเคชันด้วยภาพ
  • สแต็กเครือข่ายรองรับ ARP, TCP, UDP และ ICMP เป็นเจ้าของ ตัวแก้ไข DNS;
  • ระบบไฟล์ที่ใช้ Ext2 (การดำเนินการของตัวเอง ใน C ++);
  • ไลบรารี C มาตรฐานที่เหมือน Unix (ลิบซี) และ ตั้ง ยูทิลิตี้ผู้ใช้ทั่วไป (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime ฯลฯ );
  • เชลล์บรรทัดคำสั่งที่รองรับไปป์และการเปลี่ยนเส้นทาง I/O
  • รองรับ mmap() และไฟล์ปฏิบัติการในรูปแบบ ELF;
  • การมีอยู่ของหลอก-FS /proc;
  • รองรับซ็อกเก็ต Unix ในเครื่อง
  • รองรับเทอร์มินัลหลอกและ /dev/pts;
  • ห้องสมุด LibCore เพื่อพัฒนาตัวจัดการเหตุการณ์ที่มีประสิทธิภาพ (Event loop)
  • รองรับไลบรารี SDL;
  • รองรับรูปภาพ PNG;
  • ชุดแอพพลิเคชั่นในตัว: โปรแกรมแก้ไขข้อความ, ตัวจัดการไฟล์, เกมหลายเกม (Minesweeper และ Snake), อินเทอร์เฟซสำหรับการเรียกใช้โปรแกรม, โปรแกรมแก้ไขแบบอักษร, ตัวจัดการดาวน์โหลดไฟล์, โปรแกรมจำลองเทอร์มินัล;

ที่มา: opennet.ru

เพิ่มความคิดเห็น