Python ile linux tabanlı işletim sistemi yazmak mümkün mü?

Daha önce bir işletim sistemi yazmadım. Bilgilerim sadece okuduklarımdan ibaret, bir işletim sisteminin yapısının nasıl olduğunu az çok biliyorum.

Öncelikle yukarıda bahsi geçen PythonOs, bir işletim sistemi değildir. Raspberry Pi gibi mikrobilgisayarlar için geliştirilmiş arayüz-ortam kütüphanesidir. Yani işletim sistemi üzerinde çalışır. İşletim sistemi değildir. Zaten Python ile bir işletim sistemi daha önce hiç yazılmadı. Yazılması da mümkün değildir.

Neden değildir kısmına gelirsek şöyle açıklayabiliriz. Python yorumlanan bir dildir. Yani çalışması için bir başka yardımcı program olması gerekir, yani yorumlayıcı. Bu da C ile yazılmıştır. Dolayısıyla Python, çalışmak için bir ara katmana ihtiyaç duyuyor. Bu ara katman da işletim sistemi üzerinde çalışıyor. Yani Python ile çalışan bir işletim sistemi yazmak istediğinizde, Python kodunu nasıl yorumlayacağınızı da düşünmeniz gerekir. Ancak Python’nun çalışacağı ortamı oluştursanız bile bu Python ile işletim sistemi yazdığınız anlamına gelmiyor.

Neden işletim sistem yazılamaz konusunda da, aşağıdaki linklere bakabilirsiniz.

Basit bir işletim sistemi yazmak için öncelikle kendi bilgisayarınızın işlemci mimarisi hakkında bilgi edinmeniz gerekiyor. Sonra da bu mimariye uygun bir kod yazarak kendi bilgisayarınızda çalışan bir işletim sistemi yazmış olursunuz. Linux gibi bir işletim sistemi yazmak için, birden fazla işlemci mimarisi hakkında oturup kod yazmanız gerekir, ki bu mümkün değildir. Zaten Linus Torvalds Linux’u ilk geliştirdiğinde sadece bir mimari için geliştirmişti ve sonra bunu diğer geliştiricilere sununca, diğerleri de başka mimariler için katkıda bulunmaya başladı ve böylece Linux bugün ki haline kavuştu.

İşletim sistemi nasıl yazılır konusunda Türkçe kaynak bulmanız zor. Hatta yok diye biliyorum. Ancak ingilizce birçok kaynak var. Örnek

https://wiki.osdev.org/Main_Page

İşletim sistemi geliştirmek gerçekten kompleks bir iş. Düşük seviye programlama konusunda bilgili olmanız gerekir. Sayısal tasarım, bilgisayar organizasyonu,mikroişlemciler gibi derslerin notlarına bakarak düşük seviye programlama konusunda temel edinebilirsiniz.

Dediğim gibi, bu konularda daha önce tecrübe edinmedim. Ancak PIC programlama öğrenirken, LCD ekrana bir karakter bastırmak bile zor geliyordu. Bir bilgisayarı düşününce ne kadar zor olduğunu anladım.

Kısaca, Python ile herşey yapılamaz. Bu yüzden biraz fanatikliğinden vazgeçin :slight_smile: Eğer düşük seviye programlamayı merak ediyorsanız, merak ettiğiniz şeyi araştırın. Bunu Python ile nasıl yapacağınızı değil.

İyi forumlar, yanlışım varsa kusura bakmayın.

7 Beğeni