Come multitasking funzione prima apparizione su Macintosh
Makradar Della Tecnologia / / December 19, 2019
Ogni uomo moderno gode di multitasking funzionalità per i loro dispositivi. Non importa quello che è: uno smartphone, tablet o computer di casa. La maggior parte delle persone non hanno nemmeno pensare molto su come costruire il funzionamento del sistema con più processi allo stesso tempo: abbiamo appena Comunichiamo sulla rete, lavorando con diversi documenti, ascoltare musica e guardare la TV mostra, con destrezza si spostano tra l'esecuzione di più programmi. Questa storia, il cui autore è Andy Gertsfeld contiene alcuna spiegazione del complesso della distribuzione della memoria e di altre noiosi manuali tecnici, ma parla di come il multitasking e quindi apparsi nei computer aziendali Apple.
Il primo prodotto commerciale, ho lavorato dopo aver lasciato Apple nel marzo del 1984, era Thunderscan - Scanner abbastanza a buon mercato per il Macintosh. La sua creazione si è svolta in collaborazione con un piccola azienda Thunderware. I lavori sono iniziati nel giugno 1984, e l'inizio di ottobre, il progetto era quasi completo.
Tom Petri, uno dei due leader Thunderware (la seconda era Victor Bull, con il quale ho lavorato su una stampante termica Silentype, che divenne il primo progetto, Ho creato per Apple), ho dato diverse presentazioni per diverse riviste di computer per ottenere un feedback positivo necessario per la promozione prodotto. 11 ottobre 1984 sono andato con Tim in ufficio a Hillsboro per dimostrare Thunderscan per la rivista Byte.
Byte recensore era John Markof. Egli è stato l'autore della colonna sulla tecnologia nel San Francisco Chronicle. John era considerato uno dei migliori giornalisti che coprono l'industria del personal computer. Tom ha parlato Thunderscan, e poi ha iniziato una scansione demo. John ha chiesto un paio di domande, scritte in l'editor di testo del suo PC IBM. Durante la mia successiva risposta squillò il telefono.
Scusarsi, John preme i tasti della tastiera, e poi sul editor di testo sullo schermo del computer cambiato rapidamente a un'altra applicazione. Era al telefono per un minuto o due, e poi terminare la conversazione, ritorno alla lista di domande su Thunderscan utilizzando tutti della stessa combinazione di tasti.
"Che cosa hai appena fatto? - Mi interessava il suo software - si potrebbe passare ad un altro programma così in fretta "?
"Oh, io uso il cambio di memoria. Non avete sperimentato questo? - dice Giovanni - è un programma di utilità DOS che permette di tenere a mente diverse applicazioni e passare da una all'altra in modo rapido. Io uso spesso negli ultimi anni. " Ha dimostrato il processo di passare un paio di volte per farmi vedere la velocità di questa utility.
"Sai, credo di poter fare qualcosa di simile per Macintosh», - sbottai prima consapevolmente riflettere sulle cose.
consegne Macintosh 512K cominciato qualche settimana fa. Ho cercato di eseguire più applicazioni contemporaneamente su un 512K, ma era conflitti di memoria alle strette e altre insidie potenziali. Ma ora, dopo aver visto la riallocazione in azione, ho avuto l'idea, che, a quanto pareva, non troppo difficile da attuare.
"Sì, sarebbe bello" - Giovanni acconsentì. Ho continuato Thunderscan dimostrazione, ma non riusciva a concentrarsi completamente, pensando di passare da un'applicazione all'altra. Mi sembrava che la creazione di tale utilità - compito abbastanza fattibile, il cui risultato sarà estremamente utile.
Tom Petri ha notato il mio entusiasmo a causa delle nuove idee. Dopo la presentazione, mi ha portato a casa, e ha ricordato i miei obblighi, tenendo mi ha fatto promettere di finire il rilascio alpha Thunderscan il più presto possibile, prima di iniziare qualcosa di nuovo. Eravamo d'accordo su un elenco di attività che ho dovuto eseguire due prossime settimane. Una volta che la versione alpha era pronto, ho potuto fare una breve pausa per lavori sull'applicazione interruttore successivamente ri-immergersi nel lavoro su Thundescan, preparazione versione 1.0 entro la fine di novembre.
Lucidatura Thunderscan, ho riflettuto le sfumature di interruttore di programmazione. Scegliendo tra scaricare l'applicazione in un unico spazio che è ottimale per utilizzare la memoria, e l'uso dei singoli zone per un migliore isolamento di ciascun programma, ho optato per la seconda versione, anche se non era sicuro della correttezza di questa scelta.
Abbiamo dovuto risolvere un sacco di piccoli problemi. Il più importante è stato il fatto che l'applicazione è memorizzato in una memoria è variabili globali che dovrebbe essere sostituita durante l'interruttore, come ogni programma ha il proprio insieme di variabili. Non tutti i punti sono stati ovvio per me. Sapevo che la mia prima esperienza non è l'ideale, ma sono fiducioso fatto fronte con la messa a punto di tutti i problemi inevitabili.
Pochi giorni dopo l'inizio della fase finale dei lavori sulla Thunderscan ho ottenuto molto una chiamata interessante telefonata da Jeff Harbers che era il direttore delle applicazioni del team Macintosh Microsoft. È stato riferito che Microsoft ha sviluppato un importante progetto strategico, e pensano che io sarei un candidato ideale per la sua attuazione. Jeff non ha rivelato altri dettagli sul telefono, ma si è offerto di volare a Seattle per discutere di tutto in prima persona. Sono stato incuriosito abbastanza per il lavoro tappa Thunderscan e mi siedo nel piano.
Jeff mi è venuto a prendere all'aeroporto e ci siamo diretti verso l'edificio principale della società Microsoft, dove siamo stati raggiunti da Neil Conze - un talento di 23 anni, programmatore a Macintosh. Lo conoscevo dai tempi del nostro lavoro congiunto sulla aggiunta di funzionalità a un linguaggio assembly. Lui a quel tempo aveva solo 16 anni.
Jeff mi ha chiesto che cosa stavo lavorando. Gli raccontai Thunderscan, ma quando gli esperimenti citati con utility app switching la sua bocca aperta. Jeff non poteva credere che ho effettivamente detto.
"Questo è esattamente quello che volevamo parlare! E 'fantastico che si sta già lavorando su di esso! "- esclamò Jeff.
Ha spiegato che è necessario lavorare sodo per farlo funzionare in modo coerente applicazioni in piccole aree della RAM Macintosh 128K. Inoltre, Lotus ha recentemente annunciato un nuovo pacchetto software per il Jazz Macintosh 512K, che permette a rapidamente e facilmente passare tra le sue aree funzionali. Lo scopo della visita era quello di convincermi a scrivere un'applicazione simile, accendere un contratto con Microsoft.
Neil Conze presentato potenziali strumenti sviluppati progetti sulla scheda. Egli ha proposto di utilizzare la stessa area di memoria, che ho subito rifiutato, raccontando l'approccio alternativo, con aree separate, dando la massima affidabilità.
La mia giornata in Microsoft ha completato un incontro privato con Bill Gates. Jeff mi ha portato nel suo ufficio e si è scusato e ci ha lasciato solo.
Dopo l'addetto scambio di cortesie, Bill alzò gli occhi e mi ha chiesto negli occhi: "Sei davvero un buon programmatore, non è vero? Credo che bisogna davvero essere un buon programmatore. "
"Credo di sì," - risposi, senza sapere perché mi ha lusinga.
"Credo di sì anche. Come pensi quanto tempo ci vorrà per realizzare questo progetto? Un mese o due? Mi sembra, un programmatore buon dovrebbe gestire questo in un paio di mesi. "
"Non lo so - ho detto - non so nemmeno se sia possibile l'attuazione."
"Sede di Let - ha detto un po 'di tono condiscendente - non dovrebbe richiedere più di dieci migliaia di righe di codice, e davvero un buon programmatore è in grado di scrivere almeno un migliaio di righe in settimana. Credo che ci vorranno non più di dieci settimane. "
Non so cosa rispondere, così ho taciuto e ascoltato.
"Che cosa ne pensi, quanto denaro può guadagnare un buon programmatore? Paghiamo i nostri migliori dipendenti circa duemila dollari a settimana. Non pensi che si deve pagare di più? "
"Non lo so" - risposi. E 'diventato chiaro che Bill stava cercando di trasformarmi in un modo molto veloce per scrivere questo programma di utilità.
"Se si ottiene circa quattromila dollari a settimana, - ha proseguito - che alla fine delle settimane dieci è possibile ottenere quarantamila".
Gli ho detto che farò tutto il possibile per garantire che questo strumento funziona bene con le applicazioni di Microsoft. Ho voluto fare questo, in ogni caso e senza questa proposta, perché i programmi Microsoft sono stati molto popolari tra gli utenti. Ci stringemmo la mano e ho lasciato l'ufficio con una nota positiva.
Torna a casa a Palo Alto, ho voluto sviluppare un concetto di utilità ai programmi interruttori, nonostante le date finali di preparazione Thunderscan.
Alla fine, ho dovuto creare un'interfaccia utente per questa utilità. Ho lavorato senza sosta 20 ore, lo sviluppo di un programma di base. Incredibilmente è stato bello da guardare migliora gradualmente la stabilità del programma di utilità, la soluzione di problemi regolari con la memoria.
Mentre si lavora sul suo progetto, ho notato Bud Tribble, che è tornato ad Apple nel luglio 1984 per la carica di Software Manager dopo uno stage di medicina presso l'Università di Washington e vissuto vicino me.
Ho chiesto Bud a se stesso, per dimostrare la commutazione veloce tra MacPaint, MacWrite e MacDraw. E 'stato colpito, ma con mia grande sorpresa, ha lamentato che la transizione avvenga troppo in fretta.
"E se qualcuno farà questo interruttore per caso? Questo può causare confusione, - mi ha detto - può essere possibile utilizzare l'animazione per creare una transizione graduale "?.
Questa idea sembrava davvero buono. Abbiamo deciso che cambiare il programma deve essere fatta scorrere in orizzontale, e tutte le applicazioni in esecuzione può essere visualizzata chiaramente in una piccola area dello schermo. Ho scritto rapidamente il codice necessario e sono rimasto stupito quanto è grande il programma lampeggiava sullo schermo.
Ho dimostrato questo concetto ai tuoi amici di Apple e alcuni semplici utenti. Tutto abbracciato positivamente il mio progetto. Purtroppo, non ho tempo per Thunderscan revisione, ma ho ancora adempiuto la promessa, e lui era pronto alla fine di novembre.
Dopo una breve pausa che era ora di tornare allo sviluppo di programmi di utilità alle applicazioni di commutazione, ho cominciato a chiamare Switcher. Ai primi di dicembre, avevo capito la maggior parte di esso, tra cui l'interfaccia utente.
Ai primi di gennaio del 1985, ho ricevuto una telefonata da Guy Kawasaki, che mi ha detto che Apple è interessato a comprare Switcher. Il primo passo è stato quello di condurre una presentazione del prodotto a Steve Jobs.
Entrando nel suo ufficio, ero un po 'preoccupato, valutare il progetto in un quarto di milione di dollari, ma era sicuro che Steve non mi ha mai pagare così tanto. Ero orgoglioso del loro bambino, e mi interessava la reazione di Jobs su di lui. Esecuzione MacWrite, MacPaint, MacDraw e il Finder, ho volutamente ha mostrato Switcher con l'animazione, per fare poi un impressione spettacolare. Ho passare rapidamente tra le applicazioni in entrambe le direzioni.
"Beh, ho visto abbastanza - Steve mi interruppe, - è grande. Vorremmo integrare questo progetto in Mac ».
Per un momento si alzò e mi guardò intensamente, come se volesse farmi paura.
"Io non voglio che per essere utilizzato di Apple».
"Che cosa vuoi dire?" - perplesso dalle sue parole, gli ho fatto una domanda.
"Non sarà in grado di completare il programma senza le informazioni che si possono ottenere qui. Di conseguenza, hai perso la voglia di completare il progetto ".
"Il programma è pronto esattamente la metà. Dubito che se pago onesto, non ho intenzione di motivare per completare il lavoro, "- ho cominciato ad arrabbiarsi.
Dopo aver visto me ancora più grave aspetto, Steve ha annunciato un solo numero, senza alcuna spiegazione.
"Centomila dollari".
"Non lo so - gli ho detto - penso che Switcher è molto più costoso."
"Non discutere con me, - parato Lavoro - un prezzo equo, e lo sai."
Sembrava che non ho avuto alcuna alternativa, e ho dovuto arrendersi a Steve prezzi. Con lui è stato davvero molto difficile da sostenere. Alla fine, al momento della firma di un accordo definitivo con Guy Kawasaki sono stato in grado di ottenere il bonus, che in futuro mi ha portato un'altra cinquantamila.
Come previsto, la parte più difficile del lavoro sulla Switcher è stato quello di convincerlo a lavorare stabilmente con le applicazioni Microsoft. Gli sviluppatori si sono fatti a diversi libertà con il sistema, hanno evitato le solite istruzioni, che mi ha causato qualche difficoltà.
Ho dovuto tradurre il pseudo codice in bytecode. Traduzione con sei squadre per la successiva debug è stato molto doloroso per lo Switcher.
Uno dei problemi più recenti, ho affrontato fino al primo Switcher uscita a marzo del 1985, E 'stata l'attuazione della possibilità di "uccidere" l'applicazione appeso senza la necessità di chiudere tutti immediatamente. Ho aggiunto questa caratteristica, in combinazione con la possibilità di monitorare lo stato dei programmi in esecuzione.
Ho dovuto scegliere una sufficientemente rara combinazione di tasti per avviare questa funzione. Ho scelto quattro pulsanti, che, come sembrava, era molto difficile imbattersi per caso, ma ancora rimasto sorpreso quando ho ricevuto una telefonata da Jeff Harbers da Microsoft.
"Mi piace questa opzione costretto il completamento dei programmi, ma dovrete cambiare la scorciatoia da tastiera, perché usiamo questo quando si lavora con Microsoft Word». Jeff mi ha spiegato che la parola è un editor molto complicato ed ha una vasta gamma di scelte rapide da tastiera.
Jeff non ha offerto nulla di concreto, ma mi ha chiamato il giorno dopo, che offre una combinazione diversa.
"Cambieremo la Parola nel prossimo numero. Il problema è che non siamo venuti a trovare una sequenza di tasti di sicurezza. Abbiamo appena li usiamo tutti "- riso di me, Jeff.
Il rilascio della versione definitiva del Switcher è ufficialmente tenuta nel mese di aprile 1985. Ho sostenuto diverse versioni dopo il lancio, ma alla fine dato a Phil Goldman, un programmatore di talento da Princeton, che ha ottenuto un lavoro in Apple. Ha iniziato a sviluppare MultiFinder, che divenne il ricevitore Switcher nel 1987.
via Folklore.org