Linux’un eski bir Intel 4004 CPU’da başlatılması 4, 76 gün sürüyor

Programcı ve donanım meraklısı Dmitry Grinberg, Linux çalıştıran Intel 4004 destekli bir bilgisayarda önyükleme yaptığı ve komutları çalıştırdığı bir video paylaştı. Video, herhangi bir şey yapmanın veya en basit komutları yürütmenin dayanılmaz süresini gösteriyor. Örneğin, önyükleme 4,76 gün sürdü ve basit bir dizin listesi, ‘ls’ komutunu girdikten 16 saat sonra ekrana geldi.

Grinberg, Linux komut istemini kullanarak makineyi başlattı. Neyse ki, video düzenlemenin büyüsü sayesinde, komutlar arasındaki beklemelerin çoğu çok hızlı ilerliyor. Videonun 120x gerçek zamanlı olarak çalışan düzenlenmemiş bir sürümü var ancak tamamlayıcılar için bir saat 40 dakikadan fazla sürüyor.

Video, dünyanın ilk ticari mikroişlemcisi olan Intel 4004’ün (yaklaşık 1971) Linux’un ilk sürümünden tam 20 yıl önce piyasaya sürüldüğünü belirterek başlıyor. Bu büyük zaman uçurumu, artı çipin yavaşlığı ve modern özelliklerin eksikliği, Linux’un bunu asla desteklemediği anlamına geliyor. Bu nedenle, Grinberg’in başarısını elde etmek için biraz dijital mücadeleye ihtiyacı vardı.

Projenin ve kurulumun tüm ayrıntıları için Grinberg, ‘Eğlence, sanat ve kesinlikle hiçbir kar amacı gütmeden Intel 4004’te tam Linux’u yavaşça başlatma’ hakkında ayrıntılı bir blog yazısı yazdı. Özünde, donanım/yazılım uçurumunu kapatmak için meraklı, gerekli C derleyici desteğine sahip olan daha yetenekli MIPS R3000 işlemcisini taklit etti.

Intel 4004 running Linux
(Image credit: Dmitry Grinberg)

Bu emülasyon hilelerine rağmen, çok sayıda başka arka plan çalışması yapılması gerekiyordu ve bu yavaş hesaplama başarısı için temel çalışmanın büyük bir kısmı hız optimizasyonlarına harcandı. Grinberg, gereksiz özellik desteğini kaldırarak Linux çekirdek boyutunu yaklaşık 2,5 MB’a düşürmeyi başardı. Böylece, optimizasyon sürecinin başlangıcındaki yaklaşık 8,4 günlük önyükleme sürelerini, saçınıza rüzgar gibi çarpan 4,76 güne düşürdü.

Dikkatimizi gömülü videoya geri çevirdiğimizde, tanıtım mesajından ‘çekirdek yükleniyor’ ve ardından ‘işletim sistemi başlatılıyor’ aşamasına doğru ilerlediğini görüyoruz. Sonunda, “uMIPS’e hoş geldiniz: Etrafınıza yavaşça bakabilirsiniz” mesajını ve ekranda yanıp sönen bir istemi görüyoruz. Programcıya göre, bu noktaya ancak güç açıldıktan yaklaşık beş gün sonra ulaştık.

Linux demosunda çalışmaya başlamak için Grinberg dizin listeleme komutunu yazdı. Sistemin dizindeki beş veya altı dosyayı listelemesi yaklaşık 16 saat sürdü. Linux çekirdek sürümünü (Linux uMIPS 4.4…) görüntülemek için bir komut yazmak ve yürütmek de benzer bir zaman gerektirdi.

Cezaya doymayan Grinberg, yukarıda belirtildiği gibi devam eden emülasyon süreci nedeniyle R3000 v.2 olduğu bildirilen CPU sürümünü görüntülemek için komutlar yürütmeye devam etti. Hacker, biraz ‘süslü grafikler’ oluşturmak için bir ASCII Mandelbrot üreteci çalıştırdı. Neyse ki, ‘RTX’i Açmak’ için herhangi bir argüman eklemedi.

Video, sistemin çalışma süresi hakkında sorgulanmasıyla sona eriyor. Bu komutun yürütülmesi ve sonuçlarının ekrana yansıtılması yaklaşık 14 saat sürdü; bu da sistemin bildirilen 22:47:02 çalışma süresinin şüpheli olduğu anlamına geliyor.

Grinberg, Linux/4004 projesinin çoğunlukla sanatsal olduğunu kabul ediyor, ancak aynı zamanda Linux’un esnekliğini de gösteriyor. Duvara monte etmek ve sergilemek için yanıp sönen VFD’leri ve dahili ekranı olan özel 4004 devre kartını tasarladı.

Bu projeyi kendiniz üstlenmek istiyorsanız, programcı nezaketle şemaları, fiyatlandırılmış ve bağlantılı parça listesini, SD kartınız için bir disk görüntüsünü ve daha fazlasını paylaştı. Grinberg ayrıca tüm şeyi bir kit veya önceden oluşturulmuş olarak sunmayı düşünüyor. İlgileniyorsanız, blog yazısındaki e-posta adresinden ona bir mesaj gönderin. Ancak, özellikle 1970’lerin tüm bileşenlerini içeren bir sistem arıyorsanız, önceden oluşturulmuş bir sistemin ucuz olmayabileceği konusunda uyarıyor.

Yorum yapın

Skip to content
Web sitemizde size en iyi deneyimi sunabilmek için çerezleri kullanıyoruz. Bu siteyi kullanmaya devam ederek çerezleri kullanmamızı kabul etmiş oluyorsunuz.
Kabul Et
Reddet