Monolinux เป็นการแจกจ่ายไฟล์เดียวที่บูตบน CPU ARMv7 528 MHz ใน 0.37 วินาที

Erik Moqvist ผู้เขียนแพลตฟอร์ม ซิมบ้า และเครื่องมือ แคนทูลกำลังพัฒนาช่องทางจำหน่ายใหม่ โมโนลินุกซ์มุ่งเน้นไปที่การสร้างระบบ Linux แบบฝังตัวสำหรับการรันแอปพลิเคชันบางตัวแบบสแตนด์อโลนที่เขียนด้วยภาษา C การแจกจ่ายมีความโดดเด่นเนื่องจากซอฟต์แวร์ได้รับการบรรจุในรูปแบบของไฟล์ปฏิบัติการที่เชื่อมโยงแบบคงที่ซึ่งรวมถึงส่วนประกอบทั้งหมดที่จำเป็นสำหรับแอปพลิเคชันในการทำงาน (โดยพื้นฐานแล้วการแจกจ่ายประกอบด้วยเคอร์เนล Linux และดิสก์ RAM ที่มีสแตติก กระบวนการเริ่มต้นที่รวบรวมซึ่งรวมถึงแอปพลิเคชันและไลบรารีที่จำเป็น) รหัส จัดจำหน่ายโดย ภายใต้ใบอนุญาต MIT

สภาพแวดล้อมจัดเตรียมระบบย่อยและการเรียกระบบทั้งหมดของเคอร์เนล Linux รวมถึงการเข้าถึงระบบไฟล์ สแตกเครือข่าย และไดรเวอร์อุปกรณ์ ห้องสมุดเช่น: ml (ไลบรารี Monolinux C พร้อมเชลล์, ไคลเอนต์ DHCP และ NTP, Device-mapper ฯลฯ ) async (กรอบงานแบบอะซิงโครนัส) บิตสตรีม, โค้ง (HTTP, FTP, ...), ดีทูลส์ (แพทช์เดลต้า) ความร้อนหด (อัลกอริธึมการบีบอัด) เป็นมิตรต่อมนุษย์ (เครื่องมือเสริม), mbedTLS, xz и zlib. รองรับวงจรการพัฒนาที่รวดเร็ว ช่วยให้คุณประเมินการทำงานของเวอร์ชันใหม่ได้ภายในเวลาไม่กี่วินาทีหลังจากทำการเปลี่ยนแปลงโค้ด

ตัวแปร Monolinux ที่เตรียมไว้สำหรับบอร์ด ราสเบอร์รี่ Pi 3 и ระยะเวลาอันสั้น. ขนาดสุดท้ายของแอสเซมบลีคือประมาณ 800 KB จ่าย ระยะเวลาอันสั้น ติดตั้ง SoC i.MX6UL พร้อม CPU ARMv7-A (528 MHz), 1 GB DDR3 RAM และ 4 GB eMMC เวลาบูตบนบอร์ด Jiffy เพียง 0.37 วินาที - ตั้งแต่เปิดเครื่องไปจนถึงระบบไฟล์ Ext4 พร้อมใช้งาน จากเวลานี้ ใช้เวลา 1 มิลลิวินาทีในการเริ่มต้นฮาร์ดแวร์ของ SoC, 184 มิลลิวินาทีในการรันโค้ด ROM, 86 มิลลิวินาทีในการดำเนินการบูตโหลดเดอร์, 62 มิลลิวินาทีในการเริ่มเคอร์เนล Linux และ 40 มิลลิวินาทีในการเปิดใช้งาน Ext4 เวลารีบูตคือ 0.26 วินาที เมื่อใช้สแต็กเครือข่าย เนื่องจากความล่าช้าในการเจรจาช่องอีเธอร์เน็ตและรับพารามิเตอร์เครือข่าย ระบบจะพร้อมสำหรับการโต้ตอบกับเครือข่ายใน 2.2 วินาที

ระบบใช้เคอร์เนล Linux 4.14.78 ในการกำหนดค่าขั้นต่ำพร้อมเพิ่มเติม แพทช์ขจัดความล่าช้าที่ไม่จำเป็นในไดรเวอร์ MMC (MMC เชื่อมต่อด้วยเฟิร์มแวร์ของบอร์ดและเปิดใช้งานแล้วในขณะที่เปิดตัวไดรเวอร์) และเริ่มการเริ่มต้นไดรเวอร์ MMC และ FEC (Ethernet) ในโหมดขนาน

ที่มา: opennet.ru

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