Jako funkcję wielozadaniowość pierwszy pojawiła się na komputerach Macintosh
Makradar Technologii / / December 19, 2019
Każdy współczesny człowiek cieszy wielozadaniowość funkcje do swoich urządzeń. Nie ma znaczenia, co to jest: smartfon, tablet lub komputer domowy. Większość ludzi nawet nie myśleć dużo o tym, jak zbudować działanie systemu z wielu procesów w tym samym czasie: po prostu Komunikowania się w sieci, praca z różnymi dokumentami, słuchać koncertów muzycznych i oglądać telewizję, zręcznie porusza się między wieloma biegania programy. To historia, której autorem jest Andy Gertsfeld zawiera żadnego wyjaśnienia złożonego podziału pamięci i innych nudne podręczniki techniczne, ale rozmowy o tym, jak wielozadaniowość, a tym samym pojawiły się w komputerach firmy Jabłko.
Pierwszym produktem handlowym, pracowałem po opuszczeniu Apple w marcu 1984 roku, był Thunderscan - dość tani skaner dla komputerów Macintosh. Jej powstanie miało miejsce we współpracy z niewielką firmę Thunderware. Prace rozpoczęły się w czerwcu 1984 roku, a na początku października, projekt był prawie kompletny.
Tom Petri, jeden z dwóch liderów Thunderware (drugi był Victor Bull, z którymi pracowałem na drukarce termicznej Silentype, który stał się pierwszym projektem, Utworzona przez Apple), dałem kilka prezentacji na różne czasopisma komputerowe zyskać pozytywną opinię na potrzeby promocji produkt. 11 października 1984 poszedłem z Timem do biura w Hillsboro wykazać Thunderscan dla magazynu Byte.
Recenzent bajt był John Markof. Był autorem kolumny o technologii w San Francisco Chronicle. John był uważany za jednego z najlepszych dziennikarzy obejmujących prywatnego przemysłu komputerowego. Tom mówił o Thunderscan, a później rozpoczął skanowanie demo. John zadał kilka pytań, napisane w edytorze tekstowym jej IBM PC. Podczas mojej następnej odpowiedzi zadzwonił jego telefon.
Przepraszanie John naciśnięciu klawiszy na klawiaturze, a następnie w edytorze tekstu na ekranie komputera szybko zmieniona na inną aplikację. Był na telefon przez minutę lub dwie, a następnie zakończyć rozmowę, powrót do listy pytań o Thunderscan wykorzystując wszystkie o tej samej kombinacji klawiszy.
„Co pan tak zrobić? - I był zainteresowany w jego oprogramowaniu - można przełączyć na inny program tak szybko? "
„Och, mogę używać Shift pamięci. Czy nie doświadczył tego? - mówi John - to narzędzie DOS, który pozwala, aby pamiętać kilka aplikacji i szybko przełączać się między nimi. Często używam go w ostatnich latach. " Zademonstrował proces przełączania kilka razy, aby pokazać mi prędkość tego narzędzia.
„Wiesz, myślę, że mogę zrobić coś podobnego dla komputerów Macintosh», - I wypalił zanim świadomie myśleć rzeczy poprzez.
Dostawy Macintosh 512K rozpoczął kilka tygodni temu. Próbowałem uruchamiać wiele aplikacji jednocześnie na 512 KB, ale był opanowany konflikty pamięci i innych potencjalnych pułapek. Ale teraz, po obejrzeniu realokacji w akcji, miałem pomysł, który, jak się wydaje, nie jest zbyt trudne do zrealizowania.
„Tak, to byłoby wspaniale” - John zgodził. I nadal Thunderscan demonstrację, ale nie może w pełni skoncentrować się, myśląc o przełączanie między aplikacjami. Wydawało mi się, że stworzenie takiego narzędzia - całkiem możliwe zadania, którego wynik będzie bardzo przydatna.
Tom Petri zauważył moje emocje ze względu na nowe pomysły. Po prezentacji, zabrał mnie do domu, i przypomnieć moje obowiązki, biorąc mnie obiecują zakończyć wersja alpha Thunderscan jak najszybciej, przed rozpoczęciem czegoś nowego. Umówiliśmy się na liście zadań, które miałem do wykonania dwóch najbliższych tygodni. Gdy wersja alfa był gotowy, byłem w stanie podjąć krótką przerwę do pracy na aplikacji przełączyć się do późniejszego ponownego zanurzenia się w pracach nad Thundescan, przygotowanie wersji 1.0 pod koniec listopada.
Polerowanie Thunderscan, zastanawiałem niuanse programowania przełącznika. Wybór między pobraniu aplikacji w jednym obszarze, który jest optymalne użycie pamięci i stosowanie indywidualnych Strefy dla lepszej izolacji każdego programu, zdecydowałem się na drugiej wersji, choć nie była pewna poprawność wybór.
Musieliśmy rozwiązać wiele małych problemów. Najważniejszy był fakt, że aplikacja jest przechowywana w pamięci jest zmienne globalne, które powinny zostać zastąpione podczas przełączania, jak każdy program ma swój własny zestaw zmiennych. Nie wszystkie punkty były dla mnie oczywiste. Wiedziałem, że moje pierwsze doświadczenie nie jest idealna, ale jestem przekonany, poradził sobie z debugowanie wszystkich nieuniknionych problemów.
Kilka dni po rozpoczęciu ostatniego etapu prac nad Thunderscan Dostałem bardzo ciekawy telefon od Jeffa Harbers który był menadżerem zespołu aplikacji Macintosh Microsoft. Poinformowano, że Microsoft opracował bardzo ważny projekt strategiczny, a oni myślą, że będę idealnym kandydatem do jej realizacji. Jeff nie ujawnił innych szczegółów na telefon, ale zaproponował lecieć do Seattle, aby omówić wszystko osobiście. Byłem zaintrygowany wystarczy do zatrzymania pracy na Thunderscan i siedzieć w samolocie.
Jeff podniósł mnie na lotnisku i udaliśmy się do głównego budynku firmy Microsoft, gdzie dołączył Neil Conze - utalentowany 23-letni programista w komputerze Macintosh. Znałem go z czasów naszej wspólnej pracy na dodanie funkcji do asemblerze. On w tym czasie był tylko 16 lat.
Jeff zapytał mnie co ja obecnie pracuje. Powiedziałem mu o Thunderscan, ale kiedy wspomniane eksperymenty z użytkowego przełączania aplikacji opadła mu szczęka. Jeff nie mógł uwierzyć, że tak naprawdę to powiedział.
„To jest dokładnie to, co chcieliśmy rozmawiać! To wspaniałe, że jesteś już nad nim pracuje! „- wykrzyknął Jeff.
Wyjaśnił, że konieczne jest, aby ciężko pracować, aby to działało konsekwentnie zastosowań w małych obszarach RAM Macintosh 128K. Ponadto, Lotus ogłosił niedawno nowy pakiet oprogramowania dla Jazz Macintosh 512K, który pozwala szybko i łatwo przełączać się pomiędzy jego obszarami funkcjonalnymi. Celem wizyty było się przekonać mnie do napisania podobnego wniosku, przełącznik na umowie z firmą Microsoft.
Neil Conze przedstawiony potencjalnego projektu narzędzi opracowanych na płycie. Zaproponował, aby korzystać z tego samego obszaru pamięci, który od razu odmówił, mówiąc o alternatywnym podejściu, z oddzielnych obszarach, co daje największą niezawodność.
Mój dzień w Microsoft zakończył prywatne spotkanie z Billem Gatesem. Jeff wziął mnie do swojego biura i przeprosił i zostawili nas w spokoju.
Po wymianie uprzejmości operatora, Bill spojrzał w górę i zapytał mnie w oku: „Naprawdę jesteś dobrym programistą, prawda? Myślę, że to naprawdę trzeba być dobrym programistą. "
„Myślę, że tak” - odpowiedziałam, nie wiedząc, dlaczego on mi schlebia.
„Ja też tak myślę. Jak myślisz, ile czasu potrwa do realizacji tego projektu? Miesiąc lub dwa? Wydaje mi się, dobry programista powinien obsłużyć to w ciągu kilku miesięcy. "
„Nie wiem - powiedziałem - nawet nie wiem, czy jest to możliwe do wykonania.”
„Zobacz Miejmy - powiedział trochę ton protekcjonalny - nie powinno to zająć więcej niż dziesięć tysiące linii kodu, a naprawdę dobry programista jest w stanie napisać co najmniej tysiąc wierszy tygodni. Myślę, że zajmie Ci nie więcej niż dziesięć tygodni. "
Nie wiem, co odpowiedzieć, więc po prostu milczał i słuchał.
„Co sądzisz, ile pieniędzy można zarobić dobre programator? Płacimy naszych najlepszych pracowników o dwa tysiące dolarów tygodniowo. Czy nie uważasz, że trzeba płacić więcej? "
„Nie wiem” - odparłem. Stało się jasne, że Bill próbował obrócić mnie w bardzo szybki sposób napisać tego narzędzia.
„Jeśli masz około czterech tysięcy dolarów tygodniowo, - ciągnął - że w końcu dziesięć tygodni można uzyskać czterdzieści tysięcy.”
Powiedziałem mu, że zrobię wszystko, co możliwe, aby upewnić się, że narzędzie dobrze współpracuje z aplikacjami firmy Microsoft. Chciałem to zrobić w każdym przypadku i bez tego wniosku, ponieważ programy firmy Microsoft są bardzo popularne wśród użytkowników. Podaliśmy sobie ręce i wyszedłem z biura na pozytywnym akcentem.
Powrót do domu w Palo Alto, chciałem opracować koncepcję narzędzia do programów przełączających, pomimo kończących się terminach przygotowania Thunderscan.
W końcu miałem do tworzenia interfejsu użytkownika dla tego narzędzia. Ja pracuję non-stop przez 20 godzin, opracowanie programu rdzenia. Niezwykle miło było oglądać stopniowo poprawia stabilność narzędzia, rozwiązywanie regularne problemy z pamięcią.
Pracując nad projektem, zauważyłem Bud Tribble, który powrócił do Apple w lipcu 1984 roku na stanowisko Menedżer oprogramowania po stażu medycznego na Uniwersytecie w Waszyngtonie i mieszkał w pobliżu mnie.
Poprosiłem Bud do siebie, aby wykazać, szybkie przełączanie pomiędzy macpaint, MacWrite i MacDraw. Był pod wrażeniem, ale ku mojemu zaskoczeniu, skarżył się, że przejście odbywa się zbyt szybko.
„A jeśli ktoś uczyni tego przełącznika przez przypadek? Może to powodować zamieszanie - powiedział mi - może to być możliwe wykorzystanie animacji stworzyć płynne przejście?”.
Ten pomysł wydawał się naprawdę dobrze. Zdecydowaliśmy, że zmiany programu muszą być przewijane poziomo, a wszystkie uruchomione aplikacje mogą być wyraźnie widoczne na małym obszarze ekranu. Szybko napisał kod niezbędny i był zaskoczony, jak wielki program błysnęła na ekranie.
I wykazał tę koncepcję do swoich przyjaciół z Apple i kilku prostych użytkowników. Wszystko pozytywnie przyjęli mój projekt. Niestety, nie mam czasu na zmiany Thunderscan, ale nadal spełnił obietnicę i był gotowy pod koniec listopada.
Po krótkiej przerwie nadszedł czas, aby wrócić do rozwoju narzędzi do zastosowań przełączających, zacząłem nazywać Switcher. Na początku grudnia, ja sobie sprawę większość z nich, w tym interfejsu użytkownika.
Na początku stycznia 1985 roku, otrzymałem telefon od Guy Kawasaki, który powiedział mi, że Apple jest zainteresowany kupnem Switcher. Pierwszym krokiem było przeprowadzenie prezentacji produktów Steve Jobs.
Idąc do gabinetu, byłem trochę zaniepokojony, oceniając projekt w ćwierć miliona dolarów, ale był pewien, że Steve nie płacą mi tak dużo. Byłem dumny z ich dzieckiem, a ja był zainteresowany w reakcji zatrudnienia na niego. Uruchamianie MacWrite, macpaint, MacDraw i Finder Celowo popisywał Switcher z animacją, aby później zrobić spektakularne wrażenie. I szybko przełączać się między aplikacjami w obu kierunkach.
„Cóż, widziałem tyle - Steve przerwał mi - to jest świetne. Chcielibyśmy, aby zintegrować ten projekt do Mac».
Przez chwilę stał i patrzył na mnie uważnie, jakby chciał mnie przestraszyć.
„Nie chcę, aby być wykorzystywane Jabłko».
„Co masz na myśli?” - zastanawia jego słowami, poprosiłem mu pytanie.
„Nie będzie w stanie zakończyć program bez informacji, które można uzyskać tutaj. W rezultacie utraty pragnienie, aby zakończyć projekt. "
„Program jest gotowy dokładnie pół. Wątpię, że jeśli płacą uczciwi, nie będę motywować, aby zakończyć pracę „- zacząłem się złościć.
Po obejrzeniu mnie jeszcze bardziej poważny wygląd, Steve ogłosił jeden numer, bez żadnego wyjaśnienia.
„Sto tysięcy dolarów.”
„Nie wiem - powiedziałem mu. - Myślę, że przełącznik jest znacznie droższe”
„Nie kłóć się ze mną, - odparował oferty - cenę uczciwej i dobrze o tym wiedzą.”
Wydawało się, że nie mają żadnej alternatywy, i musiałem poddać się Steve cen. Z nim to było rzeczywiście bardzo trudno argumentować. W końcu, po podpisaniu ostatecznej umowy z Guy Kawasaki udało mi się dostać premię, która w przyszłości przyniósł mi inny pięćdziesiąt tysięcy.
Zgodnie z oczekiwaniami, najtrudniejsza część pracy nad Switcher było zmusić go do stale pracować z aplikacjami firmy Microsoft. Twórcy dali się różnych swobód z systemem, uciekali od zwykłych instrukcji, które spowodowały, że pewne trudności.
Musiałem przetłumaczyć pseudo kod do kodu bajtowego. Tłumaczenie z sześciu zespołów do kolejnej debugowania było dość bolesne dla Switcher.
Jednym z problemów, wychodził do pierwszego wydania Switcher w marcu 1985 roku, Była to realizacja możliwością „zabijania” Hung aplikacji bez potrzeby wyłączania wszystkich natychmiast. Dodałem tę funkcję w połączeniu ze zdolnością do monitorowania stanu uruchomionych programów.
Miałem do wyboru tyle rzadką kombinację klawiszy, aby uruchomić tę funkcję. Wybrałem cztery przyciski, które, jak się wydawało, było bardzo trudno natknąć się przez przypadek, ale nadal był zaskoczony kiedy otrzymałem telefon od Jeffa Harbers Microsoft.
„I jak tej opcji zmuszeni zakończenia programów, ale musisz zmienić skrót klawiaturowy, bo to wykorzystać podczas pracy z programem Microsoft Word». Jeff wyjaśnił mi, że Słowo jest bardzo skomplikowany edytor i ma ogromną gamę skrótów klawiaturowych.
Jeff nie oferują niczego betonu, ale zadzwonił do mnie następnego dnia, oferując inną kombinację.
„Będziemy zmienić słowo w następnym numerze. Problemem jest to, że nie mamy się znaleźć sekwencję klawiszy bezpieczne. Po prostu używać ich wszystkich „- śmiał się ze mnie, Jeff.
Uwalnianie ostatecznej wersji Switcher jest oficjalnie w kwietniu 1985 r. Poparłem kilka wersji po starcie, ale w końcu dał Phila Goldmana, utalentowany programista z Princeton, który dostał pracę w Apple. Zaczął rozwijać MultiFinder, który stał odbiornik Switcher w 1987 roku.
przez Folklore.org