ไฮกุเป็นระบบปฏิบัติการโอเพ่นซอร์ส ปัจจุบันอยู่ระหว่างการพัฒนาโดยเน้นเฉพาะการใช้คอมพิวเตอร์ส่วนบุคคลและมัลติมีเดีย
แรงบันดาลใจจาก BeOS (เป็นระบบปฏิบัติการ), ไฮกุปรารถนาที่จะเป็นระบบที่รวดเร็วมีประสิทธิภาพใช้งานง่ายและเรียนรู้ได้ง่ายโดยไม่ละเลยพลังของมันสำหรับผู้ใช้ทุกระดับ โครงการไฮกุเป็นที่รู้จักสำหรับข้อกำหนดเกี่ยวกับคุณภาพของเวอร์ชันออกอากาศ
เกี่ยวกับไฮกุ
จนถึงปี 2009 ไม่มีเวอร์ชันที่คอมไพล์ให้ดาวน์โหลดเพื่อ จำกัด การเข้าถึงสำหรับผู้คนที่กล้าพอที่จะรวบรวมระบบและหลีกเลี่ยงการทำให้ผู้ใช้ผิดหวังโดยปราศจากความรู้ที่จำเป็นในการทำเช่นนั้น
ระบบนี้ใช้เทคโนโลยี BeOS 5 โดยตรง และมุ่งเป้าไปที่ความเข้ากันได้แบบไบนารีกับแอปพลิเคชันสำหรับระบบปฏิบัติการนี้
ซอร์สโค้ดสำหรับระบบปฏิบัติการ Haiku ส่วนใหญ่เผยแพร่ภายใต้ลิขสิทธิ์ MIT ฟรียกเว้นไลบรารีตัวแปลงสัญญาณสื่อและส่วนประกอบที่นำมาจากโครงการอื่น ๆ
ระบบมุ่งเน้นไปที่คอมพิวเตอร์ส่วนบุคคลใช้เคอร์เนลของตัวเองสร้างขึ้นบนพื้นฐานของสถาปัตยกรรมไฮบริดซึ่งได้รับการปรับให้เหมาะสมเพื่อการตอบสนองสูงต่อการกระทำของผู้ใช้และการเรียกใช้แอปพลิเคชันแบบมัลติเธรด
ระบบไฟล์ใช้ OpenBFS ซึ่งรองรับแอตทริบิวต์ของไฟล์แบบขยายการเจอร์นัลพอยน์เตอร์ 64 บิตรองรับการจัดเก็บเมตาแท็ก (สำหรับแต่ละไฟล์คุณสามารถบันทึกแอ็ตทริบิวต์ในรูปแบบของคีย์ = ค่าซึ่งทำให้ไฟล์คล้ายกับฐานข้อมูล) และ ดัชนีพิเศษเพื่อเพิ่มความเร็วในการเลือกสำหรับองค์กรของโครงสร้างไดเร็กทอรีจะใช้ทรี "B + tree"
จากรหัส BeOS ไฮกุรวมถึงตัวจัดการไฟล์ Tracker และแถบเดสก์ท็อปซึ่งซอร์สโค้ดซึ่งเปิดขึ้นหลังจากหยุดการพัฒนา BeOS
นักพัฒนาต้องการนำไฮกุไปสู่ RISC-V และ ARM
ตอนนี้ นักพัฒนาระบบปฏิบัติการ Haiku ได้เริ่มสร้างพอร์ตสำหรับสถาปัตยกรรม RISC-V และ ARM
และนั่นก็คือ ARM ให้ความสำคัญอย่างมากในช่วงที่ผ่านมา นักพัฒนาไฮกุประสบความสำเร็จในการสร้างแพ็คเกจเริ่มต้น เพื่อรันไฟล์ที่จำเป็นสำหรับสภาพแวดล้อมการบูตขั้นต่ำ
ในทางกลับกันสำหรับสถาปัตยกรรม RISC-V มุ่งเน้นไปที่การรับรองความเข้ากันได้ในระดับ libc (รองรับประเภท "long double" ซึ่งมีขนาดแตกต่างกันสำหรับ ARM, x86, Sparc และ RISC-V)
ในกระบวนการทำงานกับพอร์ตในโค้ดเบสหลักเวอร์ชัน GCC 8 และ binutils 2.32 ได้รับการอัปเดต
สำหรับการพัฒนาผลิตภัณฑ์ไฮกุสำหรับ RISC-V และ ARM นั้นได้มีการจัดเตรียมคอนเทนเนอร์ Docker รวมถึงการอ้างอิงที่จำเป็นทั้งหมด
นอกจากนี้ มีความคืบหน้าในการปรับระบบการจัดสรรหน่วยความจำ rpmalloc ให้เหมาะสม. การเปลี่ยนแปลง rpmalloc และการใช้อ็อบเจ็กต์แคชแยกต่างหากทำให้สามารถลดการใช้หน่วยความจำและลดการแยกส่วน
ด้วยเหตุนี้ในช่วงเวลาของเวอร์ชันเบต้าที่สองจึงสามารถติดตั้งและโหลดสภาพแวดล้อม Haiku บนระบบที่มี RAM 256 MBและอาจจะน้อยกว่าด้วยซ้ำ การตรวจสอบและการกำหนดเป้าหมายเริ่มทำงานในการเข้าถึง API แล้ว (บางสายจะมีให้เฉพาะรูทเท่านั้น)
ในขณะนี้นักพัฒนารายงานว่าพอร์ตสำหรับสถาปัตยกรรมเหล่านี้อยู่ในขั้นตอนการทดสอบ
ตอนนี้เราอยู่ในขั้นตอนการทดสอบ นี่เป็นโอกาสในการล้างปัญหาพอร์ต ARM บางอย่างที่เกี่ยวข้องกับ libstdc ++ ที่ถูกผูกไว้แบบคงที่
ตอนนี้เป็นไปได้ที่จะสร้างแพ็คเกจ bootstrap แล้ว แต่การรวบรวมของ Haiku เองพบปัญหาการผูกมัดที่คล้ายกันมากขึ้นในภายหลัง สำหรับตอนนี้วิธีแก้ปัญหาคือใช้ LLD (จาก llvm / clang) แทน ld linker แบบเดิม
ในด้าน RISC-V โฟกัสอยู่ที่การทำให้ libc ของเรามีการสนับสนุนอย่างน้อยเพียงพอสำหรับประเภท "long double" ซึ่งเป็นประเภทที่แตกต่างกันในหลายสถาปัตยกรรม (ARM ใช้ 64 บิต x86 ใช้ 96 และใช้ sparc และ ppc 128 บิต แต่มีรูปแบบต่างกัน)