L'1 de març és l'aniversari de l'ordinador personal. Xerox Alto
El nombre de paraules "primer" a l'article està fora dels gràfics.
Primer programa "Hello, World", primer joc MUD, primer shooter, primer deathmatch, primer GUI, primer escriptori, primer Ethernet, primer ratolí de tres botons, primer ratolí de bola, primer ratolí òptic, primer monitor de mida de pàgina completa) , el primer joc multijugador... el primer ordinador personal.
Any 1973
A la ciutat de Palo Alto, al mític laboratori d'R+D de Xerox - PARC (Palo Alto Research Center Incorporated), l'1 de març hi va haver el llançament d'una màquina que després s'anomenaria primer ordinador personal del món (no un ordinador domèstic, però per a ús individual).
Alto era un prototip d'investigació i no un producte comercial. Es va suposar que l'Alto es convertiria en un cotxe produït en sèrie, però mai es va posar en producció. No obstant això, es van produir un total de milers d'Altos, la majoria dels quals van ser utilitzats pel mateix Xerox PARC i diverses universitats.
El cost d'un cotxe Alto s'estima entre 12 i 000 dòlars.
Sis anys després del llançament d'Alto, Jobs el veurà i el demanarà en préstec i revelarà un munt de funcions noves al món.
Intentem mirar sota el capó i conèixer els desenvolupadors.
El desenvolupament de l'ordinador va començar l'any 1972 amb un article ("Per què Alto?") escrit per Butler Lampson (que es va inspirar en el concepte de Douglas Engelbart). Sistema en línia (NLS). Dissenyat per Chuck Thacker.
"Cada problema informàtic es resol amb un altre nivell d'abstracció"
A la dècada de 1960, Lampson va participar projecte GENIE a Berkeley, durant la qual es va desenvolupar el Berkeley Timesharing System per a l'ordinador Scientific Data Systems SDS 940.
A la dècada de 1970, Lampson es va convertir en un dels fundadors del laboratori PARC Xerox, on va participar en el desenvolupament d'Alto, així com en el desenvolupament de tecnologies d'impressió làser, xarxes Ethernet, processament de text en WYSIWYG, protocols de commit en dues fases (2 unitats), Felicitats, primer xarxa local d'alta velocitat (LAN), va desenvolupar diversos llenguatges de programació importants, per exemple, Euclides.
Als anys 80, Lampson va anar a Digital Equipment Corporation. Actualment treballa a Microsoft Research, on treballa en temes de seguretat i anti-pirateria. Professora a l'Institut Tecnològic de Massachusetts.
La nota de Lapson "Per què Alto?"
Memoràndum entre oficines de XEROXA csl Data Desembre 19, 1972 de Butler Lampson Ubicació Palo Alto
Assumpte Per què Alto organització PARC
1. Introducció
Aquesta nota analitza les raons per fer un nombre substancial (10-30) de còpies de l'ordinador personal anomenat Alto que ha estat dissenyat per Chuck Thacker i altres. La motivació original d'aquesta màquina va ser proporcionada per Alan Kay, que necessita uns 15-20 sistemes "Dynabooks provisionals" per a la seva investigació educativa. Tanmateix, Alto té un ventall d'aplicacions molt més ampli del que podria suggerir aquest origen. Començaré exposant-ne les característiques, i després passaré a considerar alguns dels molts usos interessants als quals es pot donar l'Alto. Resulta que hi ha una certa interacció amb gairebé tots els programes de recerca CSL.
2. Característiques
Un sistema Alto consta de
48-64K paraules de 16 bits de memòria (més paritat i potser correcció d'errors).
Un disc Diablo de 10 megabytes que transfereix una paraula cada 7 us, gira en 25 ms i té una cerca de pista a pista de 8 ms i una cerca en el pitjor dels casos de 70 ms.
Un monitor de televisió de línia 901 la superfície de visualització del qual és gairebé exactament la mida d'aquesta pàgina. Està orientat verticalment i està dissenyat per ser conduït des d'un mapa de bits a la memòria. Es necessiten 32 K de memòria per omplir l'àrea de visualització amb un ràster quadrat (825 × 620). Aquests punts són aproximadament 1.4 mils quadrats. És possible reduir la seva amplada a aproximadament 1 mil, la qual cosa proporciona un ràster de 825 × 860 i 44.3 K de memòria. El ràster quadrat pot mostrar 8000 caràcters 5×7 amb descendents o 2500 bells caràcters espaiats proporcionalment.
Un teclat sense codificar que permet al processador determinar exactament quan es premeu o allibera cada tecla, i un ratolí o un altre dispositiu apuntador.
Un processador que executa instruccions Nova a uns 1.5 us/instrucció i que es pot ampliar amb instruccions addicionals adequades per interpretar Lisp, Bcpl, MPS o el que sigui.
Una interfície de comunicació d'ample de banda elevat (10 MHz) els detalls de la qual encara no s'han especificat.
Opcionalment, un generador de caràcters de tipus fix similar al dissenyat i construït per Doug Clark. Això estalviaria molta memòria i permetria caràcters de més qualitat que els que es poden fer amb un ràster quadrat, però no afegeix cap capacitat bàsicament nova. Hauria de costar uns 500 dòlars.
Opcionalment, una impressora Diablo, XGP o un altre dispositiu de còpia impresa.
Una taula d'uns 45 "d'ample i 25" de profunditat per allotjar la màquina i muntar la pantalla i el teclat.
El més important, un cost d'uns 5 mil dòlars, que es pot reduir a 9.7 mil dòlars mitjançant l'ús d'un disc de 2.5 megabytes. El cost es divideix aproximadament a parts iguals entre disc, memòria i tota la resta. Hem gastat aproximadament el doble en Maxc per membre de CSL de 1974.
El sistema és capaç de fer gairebé qualsevol càlcul que pugui fer un PDP-10. Per a la majoria dels problemes, pot oferir un millor rendiment a l'usuari que un 10 de temps compartit, fins i tot si aquest últim està lleugerament carregat (excepció òbvia: molts càlculs de coma flotant). A més, tenim en desenvolupament sistemes Lisp, Bcpl i MPS que poden funcionar en un Nova i, per tant, amb una lleugera modificació, a l'Alto. Com que s'espera que la major part del nostre treball de programari futur es faci en un d'aquests idiomes, la majoria hauria de poder executar-se a Alto.
El paràgraf següent mostra que hi hauria d'haver molta potència de càlcul. Tant Lisp com MPS tindran algun tipus de mapeig assistit per maquinari, ja que aquesta mida de memòria virtual no serà un problema; un acord similar per a Bcpl sembla factible, però no s'ha investigat.
Un Alto de 64K té tantes cèl·lules Lisp com 32K de memòria PDP-l0. BBN afirma executar usuaris de Lisp amb un conjunt de treball mitjà de 25K i un interval d'error de pàgina de 30 ms. Quaranta-dues pistes de disc contenen cel·les Lisp de 256K i el temps mitjà d'accés a un registre en una d'aquestes pistes és d'uns 32 ms, en comparació amb els 17 ms del tambor dels 10. Per tant, si la velocitat d'execució a Alto és la meitat de la velocitat 10 o menys, la paginació no costarà més que la 10 per als programes Lisp. És molt plausible que puguem aconseguir un sistema Lisp en un Alto amb unes quantes instruccions especialitzades que poden oferir la meitat del rendiment d'un Tenex Lisp que s'executa en un espai d'intercanvi de 32K. Es poden esperar resultats comparables per a altres idiomes.
3. Aplicacions
Totes les aplicacions aquí considerades depenen de dos fets que resumeixen el contingut de l'últim apartat:
Alto és més potent que un terminal VTS connectat a Tenex;
Alto és prou barat com per poder comprar-ne un per a cada membre de CSL, si això és desitjable.
a) Informàtica distribuïda. Podem posar molt fàcilment una xarxa de paquets punt a punt semblant a Aloha entre Alto, utilitzant un cable coaxial com a èter (o microones amb un repetidor en un turó per a terminals domèstics). Aleshores podem fer una gran varietat d'experiments amb desenes de màquines. És fàcil provar experiments que depenen de la independència dels participants, així com aquells que utilitzen components especialitzats que han de cooperar per aconseguir qualsevol cosa. En particular, podem configurar sistemes en els quals cada usuari té els seus propis fitxers i les comunicacions es fan únicament per a l'intercanvi d'informació compartible, i així donar una mica de llum a la controvèrsia de llarga data sobre els mèrits d'aquest esquema enfront dels fitxers centralitzats.
b) Sistemes d'oficina. Podem executar el competidor NLS basat en Peter's Lisp o el sistema xNLS. L'excés de computació d'Alto ens permetrà concentrar-nos en les capacitats del sistema en lloc d'optimitzar-ne el rendiment. La informació obtinguda amb aquest enfocament hauria de complementar la obtinguda dels experiments xNLS multiusuari. També pot ser possible executar-los a Alto i així escapar de la dependència de Nova; aquesta possibilitat requereix més investigació.
c) Informàtica personal. Si les nostres teories sobre la utilitat dels ordinadors personals barats i potents són correctes, hauríem de ser capaços de demostrar-les de manera convincent a Alto. Si s'equivoquen, podem esbrinar per què. Hauríem, per exemple, de poder satisfer els grans usuaris de Lisp com ara Warren i Peter amb un Alto. Això també allunyaria una gran càrrega informàtica de Maxc. També hauria de ser bastant fàcil simular la configuració de maquinari d'altres ordinadors personals proposats (p. ex., diferents jerarquies de memòria) i, per tant, validar aquests dissenys. Això és important perquè les màquines més compactes requeriran una inversió molt més gran en el desenvolupament d'enginyeria i una optimització més precisa del sistema de memòria.
d) Gràfics. Alto és un excel·lent vehicle per al treball gràfic de Bob Flegal i posarà els fruits d'aquest treball a disposició d'una àmplia comunitat. No pot fer les coses de Dick Shoup.
4. Competència
Alto competeix amb algunes altres coses que estem fent nosaltres o SSL. Crec que això és bo, ja que anima els defensors d'ambdós enfocaments a sobresortir. Concretament;
a) VTS pot fer caràcters de major qualitat, té control d'intensitat i parpelleig, costa la meitat o dos terços tant si només voleu un terminal i pot aprofitar l'interruptor de vídeo. No pot fer gràfics i pot patir els problemes de cua dels sistemes de recursos compartits (el Nova controlador i les comunicacions són compartides). I, per descomptat, només és tan bo com l'ordinador que l'utilitza.
b) Maxc pot calcular, i per a aplicacions que utilitzen programari existent, necessiten grans conjunts de treball o fan moltes multiplicacions, serà millor. A més, se sap que és bo per a Lisp, etc., mentre que la idoneïtat d'Alto per a sistemes tan grans encara no s'ha demostrat.
c) Les noves que no tenen interfícies complexes amb un altre maquinari (per exemple, Toy, XGP) es poden substituir per Altos. Els que ho fan, com el Maxc Nova o, probablement, el VTS Nova, estan segurs.
d) Les implicacions d'Alto per a la xarxa local no estan clares.
Juntament amb Butler Lampson i altres graduats, va fundar la Berkeley Computer Corporation, on va desenvolupar l'electrònica d'ordinador. Tanmateix, l'empresa no va ser un èxit comercial i Thacker va ocupar una feina al centre de recerca Xerox PARC.
Durant les dècades de 1970 i 80, es va convertir en un dels desenvolupadors del protocol Ethernet i també va fer importants contribucions a la creació de la primera impressora làser. El 1983, Thacker va fundar el centre d'investigació Digital Equipment Corporation (DEC Systems Research Center), i el 1997 va participar en la creació del laboratori de Microsoft Research a Cambridge. Després de tornar als Estats Units, Thacker va desenvolupar maquinari per a Microsoft Tablet PC basant-se en la seva experiència treballant amb el Dynabook a Xerox PARC.
“Internet no es tracta de tecnologia; es tracta de comunicació. Internet connecta persones que han compartit interessos, idees i necessitats, independentment de la geografia".
Autor del concepte POO ("Vaig encunyar el terme orientat a objectes, i us diré què, no volia dir C++".) i portàtil.
Per cert, Kay va dir la seva famosa frase "La millor manera de predir el futur és inventant-lo" el 1971, i Dennis Gabor (Premi Nobel, creador d'holografia) - l'any 63. Inventing the Future (1963): "El futur no es pot predir, però sí que es poden inventar". (Investigació sobre aquest tema aquí.)
El Xerox Alto tenia 128 KB de memòria RAM (cost 4000 dòlars), ampliable a 512 KB, i un disc dur amb un cartutx extraïble de 2,5 MB.
Unitats de disc
Monitor
Per mostrar informació gràfica, es va utilitzar un monitor monocrom de 606×808 píxels, dissenyat amb una orientació retrat no tradicional.
Pedra
Xip: unitat lògica aritmètica de microprocessador de secció multixip (unitat lògica aritmètica de porció de bits) basada en Xip 74181 de Texas Instruments amb suport de microcodi (fins a 16 tasques paral·leles amb prioritats fixes). CPU de 5.8 MHz
Klava
Teclat de 64 tecles
Ratolí
Tots els ratolins utilitzats amb l'Alto eren ratolins de tres botons. El primer ratolí era mecànic, amb dues rodes col·locades perpendiculars entre si. Aquest model aviat va ser substituït pel ratolí de bola, inventat per Bill English. Més tard, va aparèixer el ratolí òptic, primer utilitzant llum blanca i després radiació infraroja. Els botons dels primers ratolins estaven situats els uns sobre els altres, i no els uns al costat dels altres, com és habitual ara.
Les idees d'Engelbart implementades en el món real - el ratolí i teclat d'acords:
Els primers programes per a Alto es van escriure en un llenguatge de programació BCPL (per cert, el primer programa "Hello world" i el primer MUD es van escriure a BCPL), després es va utilitzar el llenguatge Taula, que no va ser molt utilitzat fora del PARC, però va influir en alguns idiomes posteriors, com el Modula. El teclat Alto no tenia una tecla de subratllat que albergés el símbol de la fletxa esquerra que Mesa utilitzava com a operador d'assignació. Aquesta característica del teclat Alto pot haver estat la raó de l'estil de nom de l'identificador CamelCase. Una altra característica de l'Alto era la capacitat per a l'usuari de programar directament el microcodi del processador.
Malgrat la quantitat relativament petita de memòria RAM, es van desenvolupar i utilitzar per al Xerox Alto programes amb menús gràfics, icones i altres elements que només es van familiaritzar amb l'arribada dels sistemes operatius Mac OS i Microsoft Windows.
Bravo i Gypsy: els primers processadors de textos WYSIWYG
Laurel i Hardy: clients de correu electrònic de xarxa
Marcat i dibuix: editors de mapes de bits
Neptú - gestor de fitxers
Utilitats FTP i xat
Jocs — Escacs, Pinball, Othello i un joc d'Alto Trek de Gene Ball
Sil - editor de gràfics vectorials per a circuits integrats i plaques de circuits impresos
Sistema experimental de processament de formularis Officetalk
Llenguatges de programació: BCPL, LISP, Smalltalk, Mesa i Poplar
Diverses imatges/captures de pantalla del programari
Petita xerrada
més captures de pantalla dels programes
Mostra des del programa de prova de teclat:
El teclat Alto té una línia de senyal separada per a cada tecla i, per tant, pot dir quan s'estan pressionant qualsevol nombre de tecles simultàniament. A la pantalla, les tecles negres es mantenen premudes. El quadrat petit sobre el teclat representa el ratolí (vegeu la foto 4); també es prem una tecla del ratolí.
Visualització de l'Alto Executive, amb un exemple de notació d'estrella i d'interrogació.
NetExecutive (semblant a l'Alto Executive, però permet l'accés a recursos a Ethernet.
Programa típic de Mesa editat per Bravo; tingueu en compte els diferents tipus de lletra utilitzats a la llista del programa.
Directori de l'editor de directoris de Neptune. Els noms dels fitxers en negre s'han seleccionat per a altres operacions com ara imprimir o esborrar. El cursor es mostra com una creu en un cercle.
La capacitat de Bravo per canviar els tipus de lletra (hi ha centenars de tipus de lletra per a l'Alto, des del gòtic fins a les runes elves; el paràgraf central d'aquesta pantalla s'ha canviat al grec). El document de la finestra inferior s'ha de convertir al formulari que es mostra a la finestra superior.
Els punts es col·loquen amb el cursor i el programa omple les corbes i les línies.
Les línies es poden "pintar" amb una varietat de "pinzellades" (el cursor ha canviat a un pinzell petit).
Es dóna textura a les línies; Les línies de punts es creen amb el cursor de tisores.
La imatge pot ser manipulada matemàticament; es pot crear una nova figura invertint, inclinant o estirant una còpia de l'original.
L'ull representa la persona d'un oponent. Qualsevol Alto de la xarxa pot unir-se o abandonar el joc en qualsevol moment.
El joc del Pinball:
Els flippers s'activen mitjançant les dues tecles majúscules; un port Alto es pot connectar a un altaveu per proporcionar sons de timbres i timbres.
El programa multijugador Trek:
Aquest joc es juga completament sota el control del ratolí. La part inferior de la pantalla mostra una exploració del sensor de curt abast; a dalt hi ha la pantalla de llarg abast i els controls de navegació i d'armes.
Laberint
El primer deathmatch, la primera vista en primera persona.
i:
Astroroides
Escacs
Galaxians
Mazewar
Comandament de míssils
Rinky Dink (programa de pinball de Clint Parker)
Guerra espacial
Captures de pantalla
Per a això serveixen els ordinadors
UPD
No he tingut temps de mirar, però crec que serà útil:
any 2001. El Xerox Alto: una retrospectiva personal
Conclusió
“No dubtis mai que un petit grup de persones reflexives i dedicades pot canviar el món. En realitat, són els únics que provoquen aquests canvis”. Margaret Mead
Al meu entendre, és increïblement divertit ser testimoni (i més encara un participant) en la creació de coses noves i interessants. Vaig tenir la sort d'estar a prop d'un grup de gent jove i atrevida que va crear “Tsiferblat” (el primer anticafè), tot i que no és un producte informàtic, però encara molt impulsat i fresc. Vaig parlar una mica amb els desenvolupadors Cybiko, tenen moltes històries interessants. Em va agradar veure la sèrie "Atureu i preneu foc". Si algú coneix enllaços a materials útils, si us plau, comparteixi, i si vostè mateix va participar en la creació d'un de nou, escrigui als comentaris, li estaré agraït.
Juntament amb l'empresa Edison Comencem la marató de publicacions de primavera.
Intentaré arribar al fons de les fonts primàries de les tecnologies informàtiques, per entendre com pensaven i quins conceptes hi havia en la ment dels pioners, què somiaven, com veien el món del futur. Per què es van concebre “ordinador”, “xarxa”, “hipertext”, “amplificadors d'intel·ligència”, “un sistema per a la resolució col·lectiva de problemes”, quin significat van donar a aquests conceptes, quines eines volien per aconseguir resultats.
Espero que aquests materials proporcionin inspiració per a aquells que es pregunten com fer la transició "de zero a un" (crear quelcom que mai havia existit abans). M'agradaria que la informàtica i la "programació" deixin de ser només "codificar per diners", i recordar-vos que es van concebre com una palanca per canviar els mètodes de guerra, l'educació, una forma d'activitat conjunta, de pensament i de comunicació, com a intentar resoldre els problemes mundials i respondre als reptes, davant la humanitat. Alguna cosa com això.