3 مستودعات
Frameworks for implementing system calls and drivers using memory-safe interfaces to minimize the trusted computing base.
Distinct from Kernel Driver Implementation: Distinct from general driver implementation by focusing on the safety abstractions that minimize the trusted base.
Explore 3 awesome GitHub repositories matching operating systems & systems programming · Safe Kernel Abstractions. Refine with filters or upvote what's useful.
Asterinas هو نواة نظام تشغيل آمنة للذاكرة مصممة لمنع سباقات البيانات وتلف الذاكرة. تعمل كنواة متوافقة مع Linux-ABI، مما يتيح تنفيذ ملفات Linux الثنائية الحالية وأحمال عمل الحاويات مع توفير نموذج توزيع نظام تشغيل تصريحي. يتميز المشروع بكونه مضيف حاويات آلة افتراضية ونظام تشغيل ضيف للحوسبة السرية، مما يسمح له بالعمل داخل بيئات تنفيذ موثوقة معزولة بالأجهزة مثل Intel TDX. ينفذ قاعدة حوسبة موثوقة دنيا عن طريق عزل العمليات غير الآمنة منخفضة المستوى ويفصل آليات النواة الأساسية عن تنفيذات السياسات المحددة. يغطي النظام مجموعة واسعة من القدرات، بما في ذلك إدارة الذاكرة الفيزيائية والافتراضية، والمعالجة المتعددة المتماثلة، وتجريد الأجهزة لمختلف معماريات CPU. كما يتضمن دعمًا لأوقات تشغيل الحاويات الآمنة، ومجموعة شاملة من بدائيات الشبكات والمقابس (sockets)، وسلسلة أدوات متخصصة لتجميع النواة والمحاكاة. يدعم المشروع النشر متعدد المعماريات عبر منصات x86-64 و RISC-V 64 و LoongArch 64.
Enables the development of system calls, file systems, and device drivers using safe kernel abstractions.
This project provides a framework and toolset for developing memory-safe kernel-mode and user-mode drivers for the Windows operating system. It enables developers to build drivers using safe programming patterns that prevent common memory errors and system crashes, while providing the necessary infrastructure to interface with low-level hardware and system APIs. The framework distinguishes itself by offering procedural macros and binding generation tools that translate complex C-style system headers into idiomatic, type-safe code. It includes a custom global allocator designed for the strict
Wraps low-level system interfaces in memory-safe abstractions to reduce complexity and prevent common kernel errors.
توفر هذه المكتبة مجموعة من التجريدات منخفضة المستوى للتفاعل مع الأجهزة الطرفية في أجهزة Raspberry Pi باستخدام لغة البرمجة Rust. تعمل المكتبة كواجهة آمنة من حيث النوع (type-safe) للتحكم في الدبابيس الفيزيائية وإدارة الاتصال بالمكونات الإلكترونية الخارجية والمستشعرات. يتميز المشروع باستخدام تجريدات وقت التجميع (compile-time) التي تربط استدعاءات الدوال عالية المستوى مباشرة بتعليمات الأجهزة، مما يضمن حداً أدنى من الحمل التشغيلي. كما توفر وصولاً متسقاً إلى الأجهزة من خلال تغليف واجهات الأجهزة على مستوى النواة والسجلات المعينة في الذاكرة في تجريدات آمنة تعتمد على السمات (traits)، مما يسمح بتنفيذ برامج تشغيل قابلة للتبديل. تغطي المكتبة مجموعة واسعة من قدرات تكامل الأجهزة، بما في ذلك إدارة بروتوكولات الاتصال التسلسلي القياسية مثل I2C وSPI وUART. كما تدعم تعديل عرض النبضة (PWM) والتحكم في دبابيس الإدخال والإخراج للأغراض العامة (GPIO)، مما يتيح دمج المستشعرات الصناعية وتشغيل المشغلات. يتم توزيع البرنامج كـ crate، مما يوفر نهجاً منظماً لتطوير الأنظمة المدمجة والربط بين الأجهزة على أجهزة الكمبيوتر ذات اللوحة الواحدة التي تعمل بنظام Linux.
Wraps kernel-level sysfs device interfaces into safe programming abstractions for consistent hardware access.