Tüm dosya uzantılarını çalıştırabilen işletim sistemi yazılabilir mi?

Olay dosya tipinde bitmiyor. Sistem çağrıları, GUI API'leri... Mesela Darwin sistemi ile MacOS'un uygulamaları bile uymuyor çünkü MacOS'ta cocoa ismi verilen bir GUI API'si var. Umarım anlatabilmişimdir.

Biraz kafa karıştırıci ama anladım teşekkürler.

Bir de size bir sorum olacak mesela ben Linux'umu duzenlemek istiyorum ne tür bilgiye sahip olmam lazım?
 
.


Özur dilerim de cevap verirseniz cok sevinirim.
Linux'u düzenlemek derken ne demek istediğinizi tam anlamadım ama eğer demek istediğiniz sistem kurulumuysa çoğu linux dağıtımı zaten windows gibi pek çok programla birlikte geliyor . Arch linux gibi masaüstü ortamı dahil çoğu programı kendinizin kurduğu , kendinizin diskte manuel yer ayırırdığı dağıtım kullanmak istiyorsanız pek çok rehber var , özellikle ingilizce dilinde.
 
Sistem çağrılarına arakatman yazmak zor değil Cygwin posix sistem çağrılarını Windows'ta derleyebiliyor.
Peki GUI? Tersine mühendislik ile yıllarca kim uğraşacak? Ya sürücü API'leri? DirectX gibi kocaman bir API'yi tersine mühendislik ile tekrar yapabilmek mümkün ama kaç kişi o kadar zaman ayırabilecek?

WINE projesinin 90'lardan beri devam edip hala bitmediğini düşünürsek bu ihtimal zor.
 
Uygulamalarin dependency libraryleri icin de compatibility yazman gerekecek.

Battlefield V de bir "exe" , hesap makinesi de bir "exe" Windows uzerinde. Her executable dosya arka planda tonlarca yardimci kutuphaneye ve calismak uzere dizayn edildigi isletim sistemine bagli sistem kutuphanesine bagimli olmus olabilir.

DirectX icin compatibility yazacaksin, GTK icin yazacaksin, .NET Runtime icin yazacaksin, C++ Runtime binaries icin yazacaksin, Mac uzerinde Carbon ve Cocoa icin yazacaksin vs ki bunlarin tamami aciktan paylasilan seyler degil, ustteki mesajdaki arkadasin dedigi gibi cogu zaman reverse engineering yapmak durumunda kalacaksin ya da mock yapacaksin compatibility icin.

Diyelim ki basardin, maintain etmek de kabus olacak. Tum bu potansiyel dependency listesinden birine update geldiginde sen de compatibility update yapmak zorunda kalacaksin. Windows .NET e update cikarsa sen de cikmak durumunda kalacaksin, Mac Cocoa yi degistirdi, sen de degistireceksin ki guncel kalabilesin.

Teknik olarak mumkun mu evet mumkun. Elinde yeterince kaynak varsa yaparsin. Ama pratikte imkansiz.
 
Microsoft desteklemesse Windows işi yürümez evet ama saydığınız GUI kütüphanelerini, abi, sistem çağrıları ve driverlar uyuşursa her yere derleyebilirsiniz. Driver ve sistem çağrılarını kullanan Xlib'i derlersiniz Xlib'i derleyince GTK dahil X masaüstü ortamını hedef alan tüm GUI kütüphanelerini derleyebilirsiniz aynısı Windows için de geçerli olur ama Microsoft desteği lazım.
 
Linux'u düzenlemek derken ne demek istediğinizi tam anlamadım ama eğer demek istediğiniz sistem kurulumuysa çoğu Linux dağıtımı zaten Windows gibi pek çok programla birlikte geliyor. Arch Linux gibi masaüstü ortamı dahil çoğu programı kendinizin kurduğu, kendinizin diskte manuel yer ayırırdığı dağıtım kullanmak istiyorsanız pek çok rehber var, özellikle İngilizce dilinde.

Linux'un kaynak kodlarini duzenlemek.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı