# Xerox Alto
Xerox Alto, Grafiksel kullanıcı arayüzü (GUI) kullanan ilk bilgisayar. 1973 yılında Xerox Palo Alto Araştırma Merkezi'nde geliştirilmiştir. Ancak, bu bilgisayar ticari değildir. Yaklaşık 2000 adet üretilip Xerox ve çeşitli üniversitelerde kullanılmıştır. Xerox 1981'de Star adında 16000$'lık bir kişisel iş istasyonu ile bu projeyi piyasaya sürdü. Xerox Star ve Apple Lisa gibi erken örnekler özellikle çok yüksek fiyatlarından dolayı çok az sattılar.


## Geçmiş.
Alto 1972 yılında Butler Lampson tarafından yazılmış ve SRI International'da (SRI) Douglas Engelbart ve Dustin Lindberg tarafından geliştirilen oN-Line System'den (NLS) esinlenilen bir notta tasarlandı . Daha çok Charles P. Thacker tarafından tasarlandı . Endüstriyel Tasarım ve imalat, Özel Programlar Grubu ekibi Doug Stewart'ı Program Yöneticisi, Abbey Silverstone Operations, Bob Nishimura, Endüstriyel Tasarımcı olarak da içeren Xerox'a yüklenmiştir. Xerox El Segundo (Özel Programlar Grubu) tarafından 30 ünitenin ilk çalışması, John Ellenby ile PARC ve Doug Stewart ve Abbey Silverstone'da çalıştıAlto'nun elektroniğini yeniden tasarlamaktan sorumlu olan El Segundo'da. Pilot çalışma başarısı nedeniyle, ekip önümüzdeki on yıl içinde yaklaşık 2.000 adet üretmeye devam etti.
Çeşitli Xerox Alto şasi de sergileniyor Bilgisayar Tarihi Müzesi'nde yer Mountain View, Kaliforniya biri de Amerika'nın Bilgisayar Müzesi'nde sergileniyor, Roswell, Gürcistan ve birkaç özel ellerde. Koşu sistemleri sergileniyor Yaşayan Bilgisayar Müzesi'nde de Seattle, Washington. Charles P. Thacker 2009 verildi Turing Ödülü ait Association for Computing Machinery onun öncü tasarımı ve Alto gerçekleşmesi için 9 Mart 2010 tarihinde.  2004 Charles Stark Draper Ödülü, Thacker, Alan C. Kay'a verildi, Butler Lampson ve Robert W. Taylor, Alto'daki çalışmaları için.
21 Ekim 2014'te Xerox Alto'nun kaynak kodu ve diğer kaynakları Bilgisayar Tarih Müzesi'nden yayınlandı.


## Mimari.
Alto, fonksiyonel öğeler arasındaki çizgileri hem bulanıklaştırdı hem de görmezden geldi. Alto ALU, depolama ve çevre birimlerine iyi tanımlanmış bir elektrik arabirimine (örn. Sistem veriyolu ) sahip ayrı bir merkezi işlem biriminden ziyade, kontrol deposundan çıkan mikro bilgiler tarafından yönlendirilen bellek ve çevre birimlerine doğrudan donanım arabirimleriyle etkileşime girer. Mikrokod makinesi, her biri sabit önceliğe sahip 16 adede kadar işbirliği görevini destekler . Öykünücü görevi, çoğu uygulamanın yazıldığı normal komut kümesini yürütür; bu komut seti bir Data General Nova ile aynıdır, ancak aynı değildir. Diğer görevler ekran, bellek yenileme, disk, ağ ve diğer G / Ç işlevlerini sunar. Örnek olarak, bitmap ekran denetleyicisi 16 bitlik kaydırma yazmacından biraz daha fazladır ; mikrokod, ekran yenileme verilerini ana bellekten kaydırma yazmacına taşır; bu, onu bellek verilerinin ve sıfırlarına karşılık gelen piksellerin ekranına serileştirir. Ethernet, çıkış kelimelerinin serileştirilmesi ve giriş kelimelerinin serileştirilmesi için çift yönlü olarak çalışan bir kaydırma yazmacı ile minimal donanım tarafından da desteklenir. Mikrokod motoru daha hızlı gidemediği ve video ekranını, disk etkinliğini ve bellek yenilemeyi desteklemeye devam edemediği için hızı 3 Mbit / s olacak şekilde tasarlanmıştır.
Dönemin çoğu mini bilgisayarından farklı olarak, Alto kullanıcı arayüzü için seri bir terminali desteklemez. Ethernet bağlantısının yanı sıra, Alto'nun tek ortak çıkış cihazı, daha yaygın "manzara" yerine dikey yönde monte edilmiş, eğimli ve dönebilen bir tabana sahip iki seviyeli (siyah beyaz) katot ışınlı tüp (CRT) bir ekrandır. oryantasyon. Giriş aygıtları özel çıkarılabilir klavye, üç düğmeli fare ve isteğe bağlı 5 tuşlu akorlu klavye(akor tuş takımı). Son iki madde SRI'ın On-Line Sistemi tarafından tanıtılmıştı; fare Alto kullanıcıları arasında anında başarılı olurken, akor tuş takımı hiç popüler olmadı.
Erken farelerde düğmeler, yan yana değil yukarıdan aşağıya doğru düzenlenmiş üç dar çubuktu; isimlendirme belgelerindeki renklerinden sonra seçildi. Hareket birbirine dik iki tekerlek tarafından algılandı. Bunlar yakında Ronald E. Rider tarafından icat edilen ve Bill English tarafından geliştirilen top tipi bir fare ile değiştirildi. Bunlar, farenin içindeki tekerleklerin dönüşlerini saymak için önce beyaz ışık ve ardından kızılötesi (IR) kullanan foto-mekanik farelerdi.
Klavye ilginçtir, çünkü her tuş bir dizi bellek konumunda ayrı bir bit olarak temsil edilir. Sonuç olarak, aynı anda birden fazla tuşa basmak mümkündür. Bu özellik, diskte Alto'nun önyükleme yaptığı yerden değiştirmek için kullanılabilir. Klavye değeri, önyükleme yapmak için diskteki sektör adresi olarak kullanılır ve önyükleme düğmesine basarken belirli tuşları basılı tutarak farklı mikro kod ve işletim sistemleri yüklenebilir. Bu, bir test işletim sistemi sürümü için önyükleme yapmak için gerekli olan tuşların gelebileceğinden daha fazla parmak gerektirdiği "burun önyükleme" ifadesine yol açtı. Burun çizmeleri, belirli bir tuş dizisinin kullanılabilmesi için diskteki dosyaları kaydıran "move2keys" programı tarafından geçersiz "kılındı".
Alto için bir TV kamerası, Hy-Tipi papatya tekerleği yazıcısı ve paralel bir bağlantı noktası da dahil olmak üzere birçok I / O cihazı geliştirildi, ancak bunlar oldukça nadirdi. Alto ayrıca bir dosya sunucusu gibi davranmak için harici disk sürücülerini de kontrol edebilir. Bu, makine için yaygın bir uygulamadır.


## Yazılım.
Smalltalk-76, diğer adı Alan Kay's Dynabook OS
Alto Erken yazılım yazılmış programlama dili BCPL ve daha sonra Mesa,  yaygın PARC'da dışında kullanılan ancak gibi birçok sonraki dilleri, etkilenmemiştir Modula. Alto erken bir versiyonu kullanılmış ASCII yoksun alt çizgi yerine kullanılan sol ok karaktere sahip, karakter ALGOL 60 ve birçok türevleri atama operatörü : Bu özelliği kaynağı olmuş olabilir CamelCase bileşik için stil tanımlayıcıları . Altos ayrıca kullanıcılar tarafından mikrokod programlanabilir.
Alto, metin ve grafikler de dahil olmak üzere tüm çıktılar için raster grafik modelinin kullanımını popülerleştirmeye yardımcı oldu. Ayrıca, ekrana temel programlama arabirimi olarak "bit blok transfer" işlemi (bit blit, BitBLT) kavramını tanıttı . Küçük bellek boyutuna rağmen, Alto için aşağıdakiler de dahil olmak üzere birçok yenilikçi program yazılmıştır: