1 puan yazan GN⁺ 2023-08-28 | 1 yorum | WhatsApp'ta paylaş
  • 1980'lerin klasik ev bilgisayarı Commodore C64'te Linux'un başarıyla çalıştırılmasına dair bir yazı
  • Linux işletim sistemi Commodore C64'te çok yavaş çalışıyor ve bilgisayarın sınırlı 64KiB belleği nedeniyle bir RAM genişletme birimi (REU) gerektiriyor
  • Sistem, sanal belleği taklit etmek için bir bellek yönetim birimi (MMU) kullanıyor
  • Yazar, kurulumu henüz gerçek donanımda test etmediğini ve okurların deneyimlerini paylaşmasını teşvik ediyor
  • Sistemi derlemek için make komutu ve mos-c64-clang aracı kullanılmalı
  • Çekirdek yapılandırması, büyük bölüm hizalaması nedeniyle özgün semu çekirdeğinden farklı. Daha uygun çekirdek yapılandırması config alt klasöründe bulunabilir
  • VICE emülatörü için gerekli tüm REU imajlarını oluşturmak üzere mk_linux_reu.py betiği kullanılıyor
  • Sistemi çalıştırmak için derlenmiş semu çalıştırılabilir dosyasını içeren bir .d64 dosyası oluşturuluyor. Bu dosya daha sonra VICE emülatörüne yükleniyor
  • Yazar, gerekli tüm önceden derlenmiş ikili dosyaları içeren bir arşivi GitHub'a eklemeyi planlıyor
  • Yazar ayrıca, performansı artırmak için derlenmiş 6502 kodunu optimize etme ve uzun önyükleme sürecinden kaçınmak için bir checkpoint VM uygulama olasılığından da söz ediyor
  • Yazı, bu projeyi mümkün kılan minimalist RISC-V32 emülatörü semu ile llvm-mos aracının çalışmalarını anarak sona eriyor

1 yorum

 
GN⁺ 2023-08-28
Hacker News görüşleri
  • Onno Kortman, semu adlı minimal bir RISC-V emülatörü ile MOS 6502 işlemcisi için LLVM portu olan llvm-mosu kullanarak Commodore 64 üzerinde Linux'u başarıyla çalıştırdı.
  • Bu süreç çok zaman alıyor ve "warp mode"da ekran görüntüsü üretmek saatler sürüyor. Gerçek bir C64'ün Linux'u bir hafta içinde önyükleyebilmesi bekleniyor.
  • Bu proje, nadir bulunan 16MB REU donanımını gerektiriyor. Döneminde C64 için mevcut olan REU'lar 256kB ve 512kB idi.
  • Proje, 386 üzerinde Doom3 çalıştırmaya benzetiliyor; ancak 386, modern PC'lerin PCI kartıdır. Bu benzetme, teknik olarak mümkün olduğunu ima etse de özgün donanımın yeteneklerini temsil etmiyor.
  • Orijinal SuperCPU şemaları kaybolduktan sonra, açık kaynak bir "Super CPU" şeması çağrısı yapılıyor. SuperCPU ve onun DMA denetleyicisi şu anda güçlü FPGA'ler kullanılarak emüle ediliyor.
  • Bazı kullanıcılar, "Kung Fu Flash" gibi yeni C-64 aksesuarlarıyla deneyler yapıyor; bunlar "Super Snapshot"u emüle edebiliyor, ancak REU'yu değil.
  • Günlük kullanım için uygun olup modern Linux'u önyükleyebilen en eski donanımın ne olduğuna dair bir tartışma var.
  • Bu proje, Turing eşdeğerliğinin bir gösterimi olarak görülüyor; yeterince zaman verildiğinde her Turing-tam bilgisayarın, başka bir Turing-tam bilgisayarın yapabildiğini gösterebildiği fikrini öne çıkarıyor.
  • Bunun, Commodore 64 için küçük ve çok görevli bir işletim sistemi olan Lunix'ten farklı olup olmadığı soruluyor.
  • Bazı kullanıcılar, C64'te Linux çalıştırmak için alternatif yöntemler öneriyor; bunlar arasında RAM olarak birden fazla disket kullanıp gerektiğinde değiştirmek de var.
  • Projenin, C64'ün Linux'u doğrudan çalıştırması değil, bir RISC-V ortamını emüle etmesi olduğu açıkça belirtiliyor.
  • Bu proje, başkalarını Gameboy üzerinde RISC-V çalıştırmak ya da TRS-80 Model 4'e Unix tarzı bir sistem kurmak gibi benzer projeleri düşünmeye yöneltti.