SORU
3 AĞUSTOS 2009, PAZARTESİ


Ne kadar eski bir masaüstü bilgisayar üzerinde küçük bir işletim sistemi inşa miyim?

Bu bir işletim sistemi yazmanın dayanılmaz derecede karmaşık (özellikle kendi kendine) ben boşuna olabilir.

Gelecek linux veya windows kurmak için beklemiyorum.

Korkunç ve arabası olacak, ve işe yaramaz biliyorum, ama sorun değil.

Her şeyi kendim yazmak için assembly, C, ve (bazı) C istiyorum .

Bu bir gelecek projesi olarak meşgulüm başka şeyler şu anda ve hiç zamanımız yok hemen, ama düşündüm de, acaba, şimdi, belki de bulabilirim bir sürü cevap bu, ve kurmak ve yararlı bir kaynak için bu tür bir yaklaşım (her şeyi gördüm dahil bina kapalı minix kullanarak varolan bir önyükleyici, Bina içinde bir sanal çizme programı, şey, vs).

Bir monitör, klavye ve fare ile benim eski masaüstü kurmak ve çalışmaya başlamak istiyorumboşsabit disk.

Ben öğrenmek istiyorum nasıl yazmak benim kendi önyükleyici (buldum çok kaynak bu konuda, ama bütünlüğü için, lütfen ekleyin bazı iyi olanlar), benim kendi USB driver (gerekli), bir CD sürücüsü (eğer gerekli), vb. Her şey, bir yere kadar.

Nasıl bilgisayara kod koyabilirim? Bunu yapmak için iyi bir disket ile mi? Çoğu bilgisayar bir USB stick yapabilir?

Sürücüler ben ne yapmam gerekiyor ve bu bina için başvuru önerir misiniz?

Bu başlattıktan sonra sıra--ne o zaman? Nasıl korumalı mod vb alabilirim.

Nasıl bir işletim sistemi yardımı olmadan bellek yönetirim? Ne istersem kullanırım? Hayır başlatma gerekli?

Ben, şüphesiz beni yanıltır var o ne olacak?

Nasıl da komut satırı O/S, ve bir grafik yapayım mı?

Bir grafik üzerinde O/S inşa nedir? Nasıl böyle bir şey yapayım, bir komut satırı, bir yazı tipi ve üstünde resmi olan?

Nerede görevli bir ortam kurma hakkında bilgi alabilir miyim? (örn., grafik-gibi iki komut satırlarını yan yana) çalışıyor olması.

Nasıl pencere sistemi Bir tür kurmak istiyorsunuz? Ne kadar basit çoklu görev ayarlandıktan sonra ekranda ekran görüntülerim?

İnan bana, bu bir olduğunu anlıyorumçokkarmaşık bir proje, ve ben muhtemelen asla doldurarak veya herhangi bir şey yazma da bulaşacak.

Varsa aklınıza gelirse, onları da eklemek için çekinmeyin bahsetmediğim için diğer parçalar var.

Lütfen bir "konu" başına cevap--örneğin, USB sürücüler, ve kaynakların listesi belki o zaman, dikkat etmemiz gereken şeyler, vb.

Ayrıca, lütfen başka bir O/S binadan ya da önceden varolan kodu olduğunu göstermez. Ben biliyorumokuyunönceden varolan kodu (linux çekirdeği, ya da bu kaynaklar, mevcut sürücüler, vb gibi) bir sürü ama sonuçta tüm yazıyı kendim yapmak istiyorum. Ben biliyorumgerekirbaşka bir şey inşa, ve ben fikrimi değiştirmek ve bu rota giderseniz okuyabiliyorum o YÜZDEN bu konuda daha bir sürü soru var. Ama bu bir sıfırdan her şeyi yapıyor.

güncelleme

Önyükleme işlemi hakkında bu en büyük cevap, dosya sistemleri ve çeşitli mevcut birçok proje ile başvuru için okumak lazım.

Bu grafik almak konusunda herhangi bir öneriniz var mı? Onlarla çalışmak nasıl farklı video modları, vb?

CEVAP
3 AĞUSTOS 2009, PAZARTESİ


İlk şeyler ilk. Okuyorsun, okuyorsun, okuyorsun, okuyorsun, okuyorsun. Kendi uygulamak için umut olabilir önce işletim sistemi nasıl çalıştığını sağlam bir anlayış olması gerekir.

İşletim sistemlerde Andrew Tanenbaum kitaplarından birini al. Bu üniversitede işletim sistemleri Dersim olarak kullandığımız bir

Modern Operating Systems

Modern Operating Systems on Amazon

Özellikle bir ders kitabı için komik kapak rağmen, harika bir okuma. Tanenbaum gerçekten bu alanda uzman ve OS başlık altında nasıl çalıştığı hakkında yaptığı açıklamalar net ve anlaşılması kolay. Bu kitap teori çoğunlukla, ama o da uygulamaya daha anlatıldığı bir kitap olduğuna inanıyorum. Hiç okumadım ama, o konuda yorum yapamam.

İşte bu süreç yönetimi, bellek yönetimi, dosya sistemleri ve OS kernel yapması gereken her şeyi üzerinde bir açılış devlet için bir kemik yardımcı olacaktır. Bu konuda temelde bir maddenin yazılı aygıt sürücüleri için ihtiyacınız olan donanım için destek ve teklif uygulamalarının C kütüphane fonksiyonları için çekirdek aramaları için bir şey gibi dosyaları açma ve cihazları, okuma ve yazma, mesaj iletmek arasındaki işlemler, vb.

86 Kurul (x 86 bir makine için bu tasarımı varsayarak) okumak. Bu işlemci işletim modları arasında taşıma ile ilgili bir çok soru cevap vermeli.

Eğer herhangi bir elektronik bilgi varsa, genellikle bir x 86 PC daha basit olacak çünkü yeterli belgelere sahip gömülü bir cihaz için bir işletim sistemi yazmak ile başlamak için kolay olabilir. Her zaman kendi işletim sistemi de yazmak istedim, ve Digilent this development board microkernel gömülü bir işletim sistemi yazmaya başladım. Çok detaylı belgeler vardır Xilinx yumuşak çekirdekli MicroBlaze işlemci, çalıştırabilirsiniz. Ayrıca RAM, flash veri depolama, LED, anahtarlar, düğmeler, VGA çıkış, vb bazı var. Basit sürücüler için yazma ile oynamak için malzeme bol.

Gömülü bir cihazın avantajlarından biri, bir VGA sürücüsü yazma önlemek mümkün olabilir bu da çok uzun bir süre. Benim durumumda, Digilent geliştirme kurulu benim ve en az yaygara ile bir komut satırı başlatılmasına kadar her şeyi almak için konsol olarak etkili bir seri çıktı, ben yerleşik bir UART var.

Sadece hedef adına ne derseniz deyin, bunun için hazır ve test edilmiş bir derleyici olduğundan emin olun. Yaparsındeğilaynı zamanda bir işletim sistemi ve derleyici yazmak istiyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GoProTutorials

    GoProTutoria

    18 NİSAN 2011
  • Michael Neal

    Michael Neal

    2 Mayıs 2009
  • thewinekone

    thewinekone

    17 Aralık 2005