Numărul cuvântului „primul” din articol este impresionant.
Prima aplicație „Hello, World”, primul joc MUD, primul shooter, primul deathmatch, primul interfață grafică, primul „desktop”, prima Ethernet, prima mouse cu trei butoane, prima mouse cu bilă, prima mouse optică, primul monitor de dimensiuni complete, primul joc multiplayer… primul calculator personal.
Anul 1973
În orașul Palo Alto, în legendarul laborator de cercetare și dezvoltare al companiei Xerox — PARC (Palo Alto Research Center Incorporated), pe 1 martie a fost lansat un dispozitiv care ulterior a fost numit primul calculator personal din lume (nu un calculator de acasă, ci pentru utilizare individuală).
Alto a fost un prototip de cercetare, nu un produs comercial. Se preconiza că Alto va deveni un dispozitiv de producție în masă, dar acest lucru nu s-a întâmplat. Cu toate acestea, s-au fabricat câteva mii de Alto, majoritatea fiind utilizate în cadrul Xerox PARC și în diverse universități.
Costul unui dispozitiv Alto este estimat între 12.000 și 40.000 de dolari.
La șase ani după lansarea Alto, acesta a fost văzut de Jobs, care a împrumutat și a deschis lumii o mulțime de caracteristici noi.
Pentru crearea computerului, echipa (, , , ) a primit în 2004 , iar Chuck Tecker a primit în 2009 și premiul Turing.
În octombrie 2014 Xerox Alto la Computer History Museum.
Să încercăm să aruncăm o privire sub capotă și să ne prezentăm dezvoltatorii.
Dezvoltarea computerului a început în 1972 cu documentul („Why Alto?”) scris de Butler Lampson (care a fost inspirat de conceptul lui Douglas Engelbart . Designul a fost realizat de Chuck Tecker.
„Fiecare problemă de calcul este rezolvată cu un alt nivel de abstrahere”
În anii 1960, Lampson a participat la în Berkeley, în cadrul căruia a fost dezvoltat sistemul de distribuire a timpului Berkeley Timesharing System pentru computerul SDS 940 al companiei Scientific Data Systems.
În anii 1970, Lampson a devenit unul dintre fondatorii laboratorului , unde a participat la dezvoltarea Alto, precum și la dezvoltarea tehnologiilor de printe laser, rețele Ethernet, procesarea textului în mod , (2PC), , prima (LAN), a dezvoltat câteva limbaje de programare semnificative, cum ar fi, .
În anii '80, Lampson s-a alăturat Digital Equipment Corporation. Acum lucrează în departamentul de cercetare al Microsoft, unde se ocupă de probleme de securitate și lupta împotriva pirateriei. Predă la Institutul Tehnologic din Massachusetts.
Memorandumul lui Lampson „De ce Alto?”
MEMORANDUM INTER-OFICIE XEROXCătre CSL , precum și API-ul în stadiu de proiect 19 decembrie 1972
From Butler Lampson Locație Palo Alto
Subiect De ce Alto Organizație PARC
1. Introducere
Acest memorandum discută motivele pentru realizarea unui număr substanțial (10-30) de copii ale computerului personal numit Alto, care a fost proiectat de Chuck Thacker și alții. Motivația inițială pentru această mașină a fost oferită de Alan Kay, care are nevoie de aproximativ 15-20 de 'Dynabooks interim' pentru cercetarea sa educațională. Totuși, Alto are o gamă mult mai largă de aplicații decât ar putea sugera această origine. Voi începe prin a contura caracteristicile sale și apoi voi lua în considerare unele dintre multele utilizări interesante la care poate fi folosit Alto. Se dovedește că există o interacțiune cu aproape fiecare program de cercetare CSL.
2. Caracteristici
Un sistem Alto constă din
48-64K de cuvinte de memorie de 16 biți (plus paritate și, poate, corectare de erori).
Un disk Diablo de 10 megabytes care transferă un cuvânt la fiecare 7 microsecunde, se rotește în 25 ms și are un timp de căutare între piste de 8 ms, iar cel mai rău caz de căutare de 70 ms.
Un monitor TV de 901 linii al cărui suprafață de afișare este aproape exact dimensiunea acestei pagini. Este orientat vertical și este conceput să fie condus dintr-un bit map din memorie. Este nevoie de 32K de memorie pentru a umple zona de afișare cu un raster pătrat (825×620). Aceste puncte au aproximativ 1.4 milimi pătrați. Este posibil să se reducă lățimea lor la aproximativ 1 milim, ceea ce dă un raster de 825×860 și 44.3K de memorie. Rasterul pătrat poate afișa 8000 de caractere 5×7 cu descenți sau 2500 de caractere frumos proporționate.
O tastatură nedecodificată care permite procesorului să determine exact când fiecare tastă este apăsată sau eliberată și un mouse sau alt dispozitiv de indicare.
Un procesor care execută instrucțiuni Nova la aproximativ 1.5 microsecunde/instrucțiune și poate fi extins cu instrucțiuni suplimentare adecvate pentru interpretarea Lisp, Bcpl, MPS, sau orice altceva.
O interfață de comunicare cu bandă largă (10 MHz) al cărei detalii nu sunt încă specificate.
Opțional, un generator de caractere cu font fix, similar celui proiectat și construit de Doug Clark. Acesta ar economisi multă memorie și ar permite caractere de o calitate superioară decât ceea ce poate fi realizat cu un raster pătrat, dar nu adaugă nicio capabilitate nouă de bază. Ar trebui să coste în jur de 500 $.
Opțional, o imprimantă Diablo, XGP sau alt dispozitiv de imprimare.
O masă de aproximativ 45" lățime și 25" adâncime pentru a găzdui mașina și a monta ecranul și tastatura.
Cel mai important, un cost de aproximativ 10.5K $, care poate fi redus la 9.7K $ prin utilizarea unui disk de 2.5 megabytes. Costul este împărțit în mod egal între disk, memorie și tot restul. Am cheltuit aproape de două ori mai mult pe Maxc pentru fiecare membru CSL din 1974.
Sistemul este capabil să efectueze aproape orice calcul pe care un PDP-10 îl poate face. Pentru cele mai multe probleme, poate oferi o performanță mai bună utilizatorului decât un 10 partajat în timp, chiar dacă acesta din urmă este ușor încărcat (excepții evidente: multe calcule cu numere în virgulă mobilă). În plus, avem în dezvoltare sisteme Lisp, Bcpl și MPS care pot rula pe un Nova și, prin urmare, cu mici modificări, pe Alto. Deoarece majoritatea lucrărilor noastre viitoare în software sunt așteptate să fie realizate în una dintre aceste limbaje, majoritatea acestora ar trebui să poată rula pe Alto.
Paragraful următor arată că ar trebui să existe suficientă putere de calcul. Atât Lisp cât și MPS vor avea un anumit tip de mapare asistată de hardware, în condițiile în care dimensiunea memoriei virtuale nu va fi o problemă; o aranjare similară pentru Bcpl pare fezabilă, dar nu a fost investigată.
Un Alto de 64K are atâtea celule Lisp câte un memorie PDP-10 de 32K. BBN afirmă că rulează utilizatori Lisp cu un set de lucru mediu de 25K și un interval de fault de pagină de 30 ms. Patruzeci și două de trasee de disc dețin 256K celule Lisp, iar timpul mediu de acces la un înregistrare pe unul dintre aceste trasee este de aproximativ 32 ms, comparativ cu 17 ms pentru tamburul de 10. De aceea, dacă viteza de execuție pe Alto este de jumătate din viteza de 10 sau mai puțin, paginarea nu va costa mai mult decât pe 10 pentru programele Lisp. Este foarte plauzibil că putem obține un sistem Lisp pe un Alto cu câteva instrucțiuni specializate care pot oferi jumătate din performanța unui Lisp Tenex care rulează într-un spațiu de swap de 32K. Rezultate comparabile pot fi așteptate și pentru alte limbaje.
3. Aplicații
Toate aplicațiile luate în considerare aici depind de două fapte care rezumă conținutul ultimei secțiuni:
Alto este mai puternic decât un terminal VTS conectat la Tenex;
Alto este suficient de ieftin încât putem cumpăra câte unul pentru fiecare membru al CSL, dacă acest lucru se dovedește a fi dorit.
a) Calcul distribuit. Putem foarte ușor să introducem o rețea de pachete punct-la-punct asemănătoare cu Aloha între Altele, folosind un coaxial ca eter (sau microfrecvență cu un repeater pe un deal pentru terminale de acasă). Atunci putem realiza o mare varietate de experimente cu zeci de mașini. Este ușor să încercăm experimente care depind de independența participanților, precum și pe cele care folosesc componente specializate care trebuie să coopereze pentru a realiza orice. În special, putem configura sisteme în care fiecare utilizator are propriile fișiere și comunicarea se face exclusiv pentru schimbul de informații partajabile, shedding some light on the long-standing controversy about the merits of this scheme as against centralized files.
b) Sisteme de birou. Putem rula concurentul NLS bazat pe Lisp al lui Peter sau sistemul xNLS. Suprasarcina computațională a Alto ne va permite să ne concentrăm asupra capacităților sistemului mai degrabă decât pe optimizarea performanței acestuia. Informațiile obținute din această abordare ar trebui să completeze ceea ce a fost obținut din experimentele multi-utilizator xNLS. De asemenea, poate fi posibil să rulăm acestea pe Alto și astfel să ieșim din dependența de Nova; această posibilitate necesită o investigație suplimentară.
c) Calcul personal. Dacă teoriile noastre despre utilitatea calculatoarelor personale ieftine și puternice sunt corecte, ar trebui să putem să le demonstrăm convingător pe Alto. Dacă ele sunt greșite, putem afla de ce. Ar trebui, de exemplu, să putem satisface utilizatori grei de Lisp, precum Warren și Peter, cu un Alto. Acest lucru ar lua, de asemenea, o mare sarcină de calcul de la Maxc. De asemenea, ar trebui să fie foarte ușor să simulăm configurația hardware a altor calculatoare personale propuse (de exemplu, diferite ierarhii de memorie) și astfel să validăm acele proiecte. Acest lucru este important deoarece mașinile mai compacte vor necesita o investiție mult mai mare în dezvoltarea ingineriei și o optimizare mai precisă a sistemului de memorie.
d) Grafică. Alto este un vehicul excelent pentru lucrările de grafică ale lui Bob Flegal și va face fructele acelei lucrări disponibile unei comunități largi. Nu poate face lucrările lui Dick Shoup.
4. Concurență
Alto concurează cu unele alte lucruri pe care le facem noi sau SSL. Cred că este un lucru bun, deoarece încurajează susținătorii ambelor abordări să exceleze. Specific:
a) VTS poate face caractere de o calitate mai înaltă, are control asupra intensității și clipește, costă între jumătate și două treimi dacă doriți doar un terminal și poate profita de comutatorul video. Nu poate face grafică și poate suferi de probleme de coadă ale sistemelor cu resurse partajate (Nova care controlează și comunicațiile sunt partajate). Și, desigur, este doar la fel de bun ca și calculatorul care îl folosește.
b) Maxc poate calcula, iar pentru aplicațiile care folosesc software existent, au nevoie de seturi de lucru mari sau fac multe multiplicări, va fi mai bun. De asemenea, se știe că este bun pentru Lisp etc., în timp ce adecvarea lui Alto pentru astfel de mari sisteme rămâne neprobată.
c) Novas care nu au interfețe complexe cu alte hardware-uri (de exemplu, Toy, XGP) pot fi înlocuite cu Altos. Cele care au, cum ar fi Maxc Nova sau, probabil, VTS Nova, sunt sigure.
d) Implicațiile lui Alto pentru rețeaua locală sunt neclare.
e) Imlacs sunt șterse.
[]
Împreună cu Butler Lampson și alți absolvenți, a fondat compania Berkeley Computer Corporation, unde s-a ocupat de dezvoltarea electronicii computaționale. Cu toate acestea, compania nu a avut succes comercial, iar Tecker s-a angajat la centrul de cercetare Xerox PARC.
În anii 1970 și 1980, el a devenit unul dintre dezvoltatorii protocolului Ethernet și a contribuit semnificativ la crearea primului printer laser. În 1983, Tecker a fondat centrul de cercetare al companiei Digital Equipment Corporation (DEC Systems Research Center), iar în 1997 a participat la crearea laboratorului Microsoft Research din Cambridge. După întoarcerea sa în SUA, Tecker a dezvoltat hardware pentru tableta Microsoft Tablet PC, bazându-se pe experiența sa de lucru cu Dynabook la Xerox PARC.
„Internetul nu este despre tehnologie; este despre comunicare. Internetul conectează oameni care au interese, idei și nevoi comune, indiferent de geografie.”
A fost director la ARPA’s din 1965 până în 1969, fondator și lider al laboratorului de informatică Xerox PARC din 1970 până în 1983, fondator și lider al până în 1996.

Autor al conceptului OOP („Am inventat termenul „orientat pe obiecte” și vă spun, nu m-am gândit la C++.”) și laptop.
Apropo, Kay a spus celebra sa frază „Cea mai bună modalitate de a prezice viitorul este de a-l inventa” în 1971, iar (premiat cu Nobel, creator al holografiei) – în 63. Inventing the Future (1963): „Viitorul nu poate fi prezis, dar viitorile pot fi inventate.” (O investigație despre aceasta .)
Clip pe TED
Xerox Alto

Hardware

Xerox Alto avea 128 KB de RAM (costând 4000 $), extensibil la 512 KB, un disc dur cu cartuș detasabil de 2,5 MB.
Unități de disc

Monitor

Pentru ieșirea informațiilor grafice s-a folosit un monitor monocrom de 606×808 pixeli cu orientare portret neobișnuită.
Chip

Chip: unitate logică aritmetică bit-slice microprocesor multi-chip bazată pe cu suport pentru microcod (până la 16 sarcini paralele cu priorități fixe). 5.8 MHz CPU
Tastatură

tastatură cu 64 de taste
Mouse
Toate mouse-urile utilizate cu Alto erau cu trei butoane. Primul mouse a fost mecanic, cu două roți așezate perpendicular unul față de celălalt. În curând, acest model a fost înlocuit cu un mouse cu bilă, inventat de Bill English. Mai târziu, a apărut mouse-ul optic, care a folosit inițial lumină albă, iar apoi radiație infraroșie. Butoanele de la primele mouse-uri erau așezate unul deasupra celuilalt, și nu unul lângă altul, așa cum este acum obiceiul.

Ideile lui Engelbart implementate în lumea reală — mouse-ul și :



[]

[]
Placa de rețea
Ethernet


[]
Software

Primele programe pentru Alto au fost scrise în limbajul de programare (de altfel, prima aplicație „Hello world” și primul MUD au fost scrise în BCPL), apoi a fost folosit limbajul , care nu a căpătat o popularitate mare în afara PARC, dar a influențat unele limbi ulterioare, cum ar fi Modula. Tastatura Alto nu dispunea de o taste de subliniere, care fusese adaptată pentru simbolul săgeții stângi, utilizat în limbajul Mesa ca operator de atribuire. Această caracteristică a tastaturii Alto ar putea fi motivul pentru care a apărut stilul de denumire a identificatorilor CamelCase. O altă caracteristică a Alto era posibilitatea pentru utilizatori de a programa direct microcodul procesorului.
În ciuda memoriei RAM relativ reduse, pentru Xerox Alto au fost dezvoltate și utilizate programe cu meniuri grafice, pictograme și alte elemente care au devenit obișnuite abia odată cu apariția sistemelor de operare Mac OS și Microsoft Windows.
- Bravo și Gypsy — primele procesatoare de text WYSIWYG
- Laurel și Hardy — clienți de e-mail de rețea
- Markup și Draw — editoare grafice (bitmap editors)
- Neptune — manager de fișiere
- FTP și utilitare pentru chat
- Jocuri — Șah, Pinball, Othello și un joc Alto Trek de Gene Ball
- Sil — editor grafic vectorial pentru circuite integrate și plăci de circuit imprimat
- Officetalk — un sistem experimental de procesare a formularelor
- Limbaje de programare — BCPL, LISP, Smalltalk, Mesa, și Poplar
Câteva imagini/screenshot-uri cu software
Smalltalk

Bravo

Cedar

Markup

Draw

SIL

Laurel
[]
încă screenshot-uri ale programelor
Afișare din programul de test pentru tastatură:
Tastatura Alto are o linie de semnal separată pentru fiecare tastă și poate astfel să identifice când orice număr de taste este apăsat simultan. În afișare, tastele negre sunt apăsate. Cadranul mic de deasupra tastaturii reprezintă mouse-ul (vezi fotografia 4); un buton al mouse-ului este, de asemenea, apăsat.

Afișare a Alto Executive, cu un exemplu de notare cu stea și semn de întrebare.

NetExecutive (similar to the Alto Executive, but it allows access to resources on the Ethernet.

Typical Mesa program being edited by Bravo; note the different typefonts used in the program listing.

Directory from the Neptune directory editor. The file names in black have been selected for further operations such as printing or erasure. The cursor is displayed as a cross in a circle.

Bravo’s ability to change fonts (there are hundreds of fonts for the Alto, from Gothic to Elvish Runes; the central paragraph in this display has been changed to Greek). The document in the bottom window has to been converted to the form shown in the top window.

Points are placed with the cursor, and curves and lines are filled in by the program.

Lines may be «painted» with a variety of “brushstrokes” (the cursor has changed to a small paintbrush).

Texture is given to the lines; dotted lines are created with the scissors cursor.

Picture may be mathematically manipulated; a new figure may be created by reversing, tilting, or stretching a copy of the original.

The eye represents the persona of an opponent. Any Alto on the net can join or leave the game at any time.

The Pinball game:
Flippers are actuated by the two shift keys; an Alto port can be connected to a speaker to provide bells and buzzer sounds.

The multiplayer Trek program:
This game is played entirely under mouse control. The lower portion of the screen shows a short-range sensor scan; above is the long-range display, and navigation and weapons controls.

Cedar environment on the Alto

Famous «rainbow» screen on an Alto
Games
— primul joc multiplayer
Stai la cârma unei nave stelare din una din cele trei rase: , sau

de joc
Primul deathmatch, prima persoană din perspectiva „primului persoană”.

și:
- Astro-roids
- Șah
- Galaxians
- Mazewar
- Missile Command
- Rinky Dink (programul de pinball al lui Clint Parker)
- Space War
Capturi de ecran








Aceasta e utilitatea computerele
UPD
Nu am avut timp să mă uit, dar cred că va fi util:

Anul 2001. The Xerox Alto: O retrospectivă personală
Concluzie
„Nu subestimați niciodată puterea unei mici grupări de oameni gânditori și determinați să schimbe lumea. În realitate, doar ei fac aceste schimbări.” Margaret Mead
Cred că este incredibil de grozav să fiu martor (și mai ales participant) la crearea de lucruri noi și interesante. Am avut norocul să fiu alături de un grup de tineri și îndrăzneți care au creat „Ceas” (prima cafea anti), deși nu este un produs IT, dar este foarte dinamic și grozav. Am discutat puțin cu dezvoltatorii , au o mulțime de povești interesante. Am urmărit cu plăcere serialul . Cine cunoaște linkuri către materiale utile, vă rog să împărtășiți, iar dacă ați fost implicați în crearea de nou — scrieți în comentarii, voi fi recunoscător.
Împreună cu compania începem un maraton de publicații primăvara.
Voi încerca să ajung la sursele originale ale tehnologiilor IT, să înțeleg cum gândeau și ce concepte aveau în minte pionierii, despre ce visau, cum vedeau lumea viitorului. Ce însemnătate se îngloba în noțiunile de „computer”, „rețea”, „hipertext”, „amplificatori de inteligență”, „sistem de soluționare colectivă a problemelor”, ce sens dădeau acestor concepte și ce instrumente voiau să folosească pentru a obține rezultate.
Sper că aceste materiale vor servi ca inspirație pentru cei care se întreabă cum să treacă (să creeze ceva ce nu a existat înainte). Îmi doresc ca IT și „programarea” să nu mai fie doar „codare pentru bani”, ci să ne reamintească că au fost gândite ca un mecanism pentru a schimba metodele de conducere a războiului, educația, modalitățile de cooperare, gândire și comunicare, ca o încercare de a rezolva probleme globale și de a răspunde provocărilor cu care se confruntă umanitatea. Așa ceva.
0 martie.
1 martie.
2 martie
3 martie
4 martie
5 martie
7 martie
8 martie
Sursa: habr.com
