Basit bir işletim sistemi mi ve QEMU'da mı çalıştırıyorsunuz? QEMU'da çalışıyorsa bir DVD'ye yazdırıp Legacy BIOS'lu bir anakartta veya UEFI-CSM modunda kendi bilgisayarınızda başlatıyor olabilmeniz lazım. 64 bit işlemcilerin ne de olsa 32 bit uyumluluğu bulunmakta.

Doğru, hazır yapılmışı var

LFS'ye bakabilirsiniz.

Sanal bir işletim sistemi yapmayı hiç düşündünüz mü? Sizce nasıl yapılabilir? Sanal işletim sistemi Visual Studio ile giriş düzeyde olsa da yapılabilir diyelim. Gerçek bir işletim sistemi yapıp bunu ISO olarak USB'ye yazdırıp, UEFI bellek elde ettikten sonra sistemi Boot ederek çalıştırmak sizce mümkün mü? Neler gerekir? Tartışalım.

Hocam Linux'dan türeyenleri kastetmiyorum. Windows gibi, macOS gibi.

Hocam en zor iş oyun motoru değil mi?

Yok hocam gelişmiş şeyler değil. O kadar yazılım bilgim yok zaten.

Hayır, merak ediyorum.

Aynen biliyorum. Hatta isterseniz Linux bilginiz Python ve C bilginiz varsa yapabiliriz bir şeyler paket sistemi gibi vs. Son düzenleyen: Moderatör: 8 Ekim 2020

Yani basit işletim sisteminden kastım VGA text mode aracılığı ile görüntü veriyor gibi mesela. Şu anki işletim sistemlerine kıyasla basit kalan işletim sistemi mi diye sormak istemiştim. Dediğim gibi QEMU'da bu yaptığınız işletim sistemi çalışıyorsa normal bir bilgisayarda Legacy BIOS modunda ve 32 bit olarak çalışması lazım.

Hocam temple OS'i duydunuz mu? Adam kendi programlama dili olan "holy C" diye bir dil geliştirmiş falan göz atmanızı öneririm. Son düzenleyen: Moderatör: 8 Ekim 2020

Evet mümkün.

İşletim sisteminizin mümkünse görüntüsünü atabilir misiniz lütfen? Çok merak ettim cidden, ve Technopat'ta böyle bir üyemizin olması da beni mutlu etti açıkçası.

@illedelinux bu arkadaşımız yapıyor. Kendisi güzel bir açıklama yapacaktır.

Açıklayıcı.

Mümkün. Programlayarak yapacaksanız Assembly başta olmak üzere C, C++ gibi diller gerekli. Yapanlar da var. Örneğin, 20 MB civarında olan KolibriOS, daha küçüğü MenuetOS gibi daha çok örnekleri var.

Hocam ben biliyorum ne kadar zor, o yüzden kendi çapımda basit sanal işletim sistemleri geliştirip geliştirip siliyorum. Koskoca Microsoft bile 8.1'i kaç kişiyle geliştirmiş.

Tails var.

Kendiniz bir işletim sistemi mi yapmak istiyorsunuz?

İlk önce işletim sistemi çekirdeği lazım onu söyleye yok maalesef.

O kadar detaylı bilmiyorum maalesef.

İşletim sistemleri bir bilgisayarın donanım kaynaklarını yöneten yazılımlar bütünüdür. Tek bir yazılım değil, birden çok yazılımı içlerinde barındırırlar. Bir işletim sisteminin geliştirilmesinde yüzlerce, hatta binlerce programcının katkısı olabilir.

Hiç düşünmedim zaten hazırı var.

Kişiden kişiye değişir açıkçası bu da. Sıfırdan, Linux'un GitHub reposundaki çekirdeğini derleyerek yapılacaksa çok uzun sürecektir. Linux sadece bir çekirdek, hadi GRUB ile falan başlattığımızı düşünürsek, ne kadar hazır yazılımlardan uzaklaşacağınıza bağlı uğraşma süresi. Örneğin, kendi shell'inizi, kendi paket yöneticinizi yapmak -veya yapmamak- gibi gibi.

Bilgisayarda yapılabilecek en zor iş olarak geçer kendileri bazı kaynaklara göre. Assembly ve C, C++ veya Rust üçlüsünden birini bilmeniz lazım. Özellikle Assembly zorunlu, bu iş için C veya C++'ın yetmediği yerler bile oluyor. Standart kütüphane kullanmayı unutun bir kere sıfırdan yazacaksanız. "printf " fonksiyonunu bile mesela kendi başınıza yapmanız gerekecek. Cihazları tanıyacak sürücüler gerekecek. Interrupt desteğiniz olacak. Hele hele GUI'li olsun derseniz eğer, çekirdeğinize GUI kütüphanesi implemente edeceksiniz veya UNIX benzeri bir şey yapacaksanız da Xorg kullanacaksınız. Daha bunun POSIX uyumu, sistem çağrıları, bellek yönetimi, dosyaları barındırmak için dosya sistemi falanı filanı da var... İşiniz zor. Ömür törpüsü kısaca. Ayrıca Linux dağıtımınızla gelen derleyiciyi de bir kenara koyup cross compiler derlemek ile başlayacaksınız. İkinci bir yöntem ise Linux çekirdeği. Sıfırdan Linux tabanlı bir işletim sistemi yaparsanız çok daha az uğraşacaksınız sıfırdan kernel yazmaya göre. İlle de sıfırdan çekirdek yazmak istiyorum derseniz, ilk önce işlemci mimarileri ve Assembly hakkında bilgi edinebilirsiniz. İlk adımınız bu olabilir, tabii ileri seviye C, C++ veya Rust biliyorsanız. Ayrıca şunu da belirteyim, moralinizi bozmak veya onun türevleri değil amacım. Neyse onu söylemiş bulunmaktayım.

Küçük işletim sistemlerini inceleyin. Örneğin DSL.

O zaman iş biraz zor isterseniz Linux dağıtımı yapabilirsiniz o çok daha kolay.