Intel'de çalışan ve Crates.io'nun gelişimini denetleyen komitede yer alan Josh Triplett, Açık Kaynak Teknoloji Zirvesi'nde konuşuyor
Oluşturulma aşamasında olan bir çalışma grubunda Rust geliştiricileri, Intel mühendisleriyle birlikte, sistem programlama için Rust'ta uygulanması gereken işlevleri tanımlayan spesifikasyonları hazırlayacak. Sistem programlama genellikle ayrıcalıklı işlemci talimatlarının yürütülmesi ve işlemcinin durumu hakkında ayrıntılı bilgi elde edilmesi gibi düşük düzeyde manipülasyon gerektirir. Rust için hâlihazırda geliştirilmekte olan benzer özelliklerden, isimsiz yapılara, birleşimlere, montaj dili eklentilerine ("asm!" makrosu) ve BFLOAT16 kayan noktalı sayı formatına yönelik destek dikkat çekmektedir.
Josh, sistem programlamanın geleceğinin Rust'a ait olduğuna ve modern gerçekliklerdeki C dilinin, geçmiş yıllarda Assembly'nin işgal ettiği yeri talep ettiğine inanıyor. Pas
geliştiricileri yalnızca bellekle düşük seviyeli çalışma nedeniyle ortaya çıkan C dilinin doğasında olan sorunlardan kurtarmakla kalmaz, aynı zamanda onu modern programlama paradigmalarının geliştirilmesinde kullanma fırsatı da sağlar.
Sırasında
Josh, Rust dilinde Linux çekirdeğine sürücü geliştirme yeteneği ekleme fikrini ortaya attı; bu, minimum çabayla, serbest bırakıldıktan sonra belleğe erişim gibi sorunlardan arınmış, daha güvenli ve daha iyi sürücüler oluşturmayı mümkün kılacak, null işaretçi referansları ve arabellek taşmaları.
Linux çekirdeğinin istikrarlı dalını korumaktan sorumlu olan Greg Kroah-Hartman, C'ye göre gerçek avantajları varsa, örneğin güvenli bir ortam sağlayacaksa, Rust dilinde sürücüler geliştirmek için çekirdeğe bir çerçeve eklemeye hazır olduğunu ifade etti. Çekirdek API'si üzerinden bağlamalar. Ayrıca Greg, Rust'u çekirdeğe bir yapı bağımlılığı olarak dahil etmemek için bu çerçeveyi yalnızca bir seçenek olarak görüyor, varsayılan olarak aktif değil.
Birkaç ekibin halihazırda bu yönde çalıştığı ortaya çıktı. Örneğin, "Fıçıda Balık" şirketinden geliştiriciler
Paralel
Amaçlanan işlevlerin tümü henüz uygulanmadı, ancak çerçeve zaten iş için oldukça uygun ve Raspberry Pi 9512 kartında sağlanan LAN3 USB Ethernet denetleyicisi için çalışan bir sürücü yazmak için kullanıldı. Mevcut smsc95xx sürücüsü tarafından yazılmıştır. C dili. Rust'ta bir sürücü geliştirirken modül boyutunun ve çalışma zamanı bileşenlerinden kaynaklanan yükün önemsiz olduğu ve bunun da çerçevenin sınırlı kaynaklara sahip cihazlar için kullanılmasına olanak sağladığı belirtiliyor.
Kaynak: opennet.ru