ฟังก์ชันการทำงานระดับต่ำทั้งหมดที่มีในระบบปฏิบัติการจะถูกนำไปใช้เป็นไลบรารีที่แนบกับแอปพลิเคชัน แอปพลิเคชันสามารถพัฒนาบนระบบปฏิบัติการใดก็ได้ หลังจากนั้นจึงรวบรวมเป็นเคอร์เนลเฉพาะ (แนวคิด
สภาพแวดล้อมที่สร้างขึ้นไม่มีสิ่งใดที่ไม่จำเป็นและโต้ตอบโดยตรงกับไฮเปอร์ไวเซอร์โดยไม่มีไดรเวอร์และเลเยอร์ของระบบ ซึ่งช่วยให้ลดต้นทุนค่าโสหุ้ยและเพิ่มความปลอดภัยได้อย่างมาก การทำงานกับ MirageOS มีสามขั้นตอน: การเตรียมการกำหนดค่าโดยพิจารณาว่าจะใช้อันใดในสภาพแวดล้อม
แม้ว่าแอปพลิเคชันและไลบรารีจะถูกสร้างขึ้นในภาษาระดับสูง OCaml แต่สภาพแวดล้อมที่ได้แสดงให้เห็นถึงประสิทธิภาพที่ค่อนข้างดีและขนาดที่เล็กที่สุด (เช่น เซิร์ฟเวอร์ DNS ใช้เวลาเพียง 200 KB) การบำรุงรักษาสภาพแวดล้อมยังง่ายขึ้น เนื่องจากหากคุณต้องการอัปเดตโปรแกรมหรือเปลี่ยนการกำหนดค่า การสร้างและเรียกใช้สภาพแวดล้อมใหม่ก็เพียงพอแล้ว ได้รับการสนับสนุน
การเปลี่ยนแปลงหลักในรุ่นใหม่เกี่ยวข้องกับการให้การสนับสนุนคุณสมบัติใหม่ๆ ที่เสนอในชุดเครื่องมือ
- เพิ่มความสามารถในการรัน Unikernel MirageOS ในสภาพแวดล้อมที่แยก
SPT ("กระบวนการประกวดราคาแบบแซนด์บ็อกซ์") จัดทำโดยชุดเครื่องมือSolo5 . เมื่อใช้แบ็กเอนด์ spt เคอร์เนล MirageOS จะทำงานในกระบวนการของผู้ใช้ Linux ซึ่งขึ้นอยู่กับการแยกส่วนขั้นต่ำตาม seccomp-BPF - การสนับสนุนที่ดำเนินการ
รายการแอปพลิเคชัน จากโปรเจ็กต์ Solo5 ซึ่งช่วยให้คุณกำหนดอะแดปเตอร์เครือข่ายและอุปกรณ์จัดเก็บข้อมูลหลายตัวที่เชื่อมต่อกับเคอร์เนลยูนิเคอร์เนลโดยแยกจากแบ็กเอนด์ hvt, spt และ muen (ปัจจุบันการใช้แบ็กเอนด์จีโนดและ virtio ถูกจำกัดไว้ที่อุปกรณ์เดียว) - การป้องกันแบ็กเอนด์ที่แข็งแกร่งยิ่งขึ้นตาม Solo5 (hvt, spt) มีให้ เช่น การประกอบในโหมด SSP (Stack Smashing Protection)
ที่มา: opennet.ru