Sebagai multitasking fitur pertama kali muncul di Macintosh
Makradar Teknologi / / December 19, 2019
Setiap manusia modern menikmati multitasking fitur untuk perangkat mereka. Tidak peduli apa itu: sebuah smartphone, tablet, atau komputer di rumah. Kebanyakan orang bahkan tidak berpikir banyak tentang bagaimana membangun pengoperasian sistem dengan beberapa proses pada saat yang sama: kami hanya Kami berkomunikasi pada jaringan, bekerja dengan dokumen yang berbeda, mendengarkan musik dan menonton acara TV, cekatan bergerak antara beberapa berjalan program. Kisah ini, yang penulis adalah Andy Gertsfeld tidak memuat penjelasan distribusi kompleks memori dan lainnya membosankan manual teknis, tetapi berbicara tentang bagaimana multitasking dan dengan demikian muncul di komputer perusahaan Apple.
Produk komersial pertama, saya bekerja setelah meninggalkan Apel Maret 1984, adalah Thunderscan - cukup scanner murah untuk Macintosh. penciptaan berlangsung bekerjasama dengan sebuah perusahaan kecil Thunderware. Pekerjaan dimulai pada bulan Juni tahun 1984, dan pada awal Oktober, proyek hampir selesai.
Tom Petri, salah satu dari dua pemimpin Thunderware (yang kedua adalah Victor Bull, dengan siapa saya bekerja pada thermal printer Silentype, yang menjadi proyek pertama, Saya telah membuat untuk Apple), saya memberikan beberapa presentasi untuk berbagai majalah komputer untuk memperoleh umpan balik positif yang diperlukan untuk promosi produk. 11 Oktober 1984 saya pergi dengan Tim ke kantor di Hillsboro untuk menunjukkan Thunderscan untuk majalah Byte.
resensi byte adalah John Markof. Dia adalah penulis kolom tentang teknologi di San Francisco Chronicle. John dianggap salah satu wartawan terbaik yang mencakup industri komputer pribadi. Tom berbicara tentang Thunderscan, dan kemudian mulai demo scan. John mengajukan beberapa pertanyaan, yang ditulis dalam editor teks IBM PC. Selama jawaban saya berikutnya telepon berdering.
Meminta maaf, John menekan tombol pada keyboard, dan kemudian pada editor teks layar komputer dengan cepat berubah ke aplikasi lain. Dia berada di telepon untuk satu atau dua menit, dan kemudian menyelesaikan percakapan, kembali ke daftar pertanyaan tentang Thunderscan menggunakan semua kombinasi tombol yang sama.
"Apa yang Anda lakukan? - Saya tertarik perangkat lunak - Anda bisa beralih ke program lain begitu cepat "?
"Oh, saya menggunakan Shift Memory. Apakah Anda tidak mengalami hal ini? - John mengatakan - adalah utilitas DOS yang memungkinkan Anda untuk diingat beberapa aplikasi dan beralih di antara mereka dengan cepat. Saya sering menggunakannya dalam beberapa tahun terakhir. " Dia mendemonstrasikan proses beralih beberapa kali untuk menunjukkan kecepatan utilitas ini.
"Kau tahu, saya pikir saya bisa melakukan sesuatu yang mirip untuk Macintosh», - saya berseru sebelum sadar memikirkan semuanya.
Macintosh 512K pengiriman dimulai beberapa minggu yang lalu. Saya mencoba untuk menjalankan beberapa aplikasi secara bersamaan pada 512K, tapi itu konflik memori terpojok dan perangkap potensial lainnya. Tapi sekarang, setelah melihat realokasi dalam tindakan, saya punya ide, yang, tampaknya, tidak terlalu sulit untuk diterapkan.
"Ya, itu akan menjadi besar" - John setuju. Aku terus demonstrasi Thunderscan, tapi tidak bisa berkonsentrasi penuh, berpikir tentang beralih antara aplikasi. Tampaknya bagi saya bahwa penciptaan seperti utilitas - tugas yang cukup layak, hasil yang akan sangat berguna.
Tom Petri melihat kegembiraan saya karena dari ide-ide baru. Setelah presentasi, ia membawa saya pulang, dan mengingat kewajiban saya, membawa saya berjanji untuk menyelesaikan rilis alpha Thunderscan sesegera mungkin, sebelum memulai sesuatu yang baru. Kami sepakat pada daftar tugas yang saya harus melakukan dua minggu mendatang. Setelah versi alpha siap, saya bisa mengambil istirahat sejenak untuk bekerja pada aplikasi saklar untuk kemudian kembali membenamkan diri dalam pekerjaan pada Thundescan, mempersiapkan versi 1.0 pada akhir November.
Polishing Thunderscan, saya merenungkan nuansa pemrograman switch. Memilih antara men-download aplikasi menjadi satu daerah yang optimal untuk menggunakan memori, dan penggunaan individu zona untuk isolasi yang lebih baik dari masing-masing program, aku menetap di versi kedua, meskipun ia tidak yakin atas kebenaran ini pilihan.
Kami harus memecahkan banyak masalah kecil. Yang paling penting adalah fakta bahwa aplikasi disimpan dalam memori adalah variabel global yang harus diganti selama switch, karena masing-masing program memiliki menetapkan sendiri variabel. Tidak semua poin yang jelas bagi saya. Saya tahu bahwa pengalaman pertama saya tidak ideal, tapi saya yakin diatasi dengan debugging dari semua masalah yang tak terelakkan.
Beberapa hari setelah dimulainya tahap akhir pekerjaan pada Thunderscan aku sangat panggilan telepon yang menarik dari Jeff Harbers yang adalah manajer dari tim aplikasi Macintosh Microsoft. Hal ini melaporkan bahwa Microsoft telah mengembangkan proyek strategis yang sangat penting, dan mereka berpikir bahwa saya akan menjadi calon yang ideal untuk pelaksanaannya. Jeff tidak mengungkapkan rincian lainnya di telepon, tapi ia menawarkan untuk terbang ke Seattle untuk membicarakan segala sesuatu secara pribadi. Saya tertarik cukup untuk pekerjaan berhenti di Thunderscan dan duduk di pesawat.
Jeff menjemputku di bandara dan kami menuju ke bangunan utama dari perusahaan Microsoft, di mana kami bergabung dengan Neil Conze - programmer 23 tahun berbakat di Macintosh. Aku tahu dia dari saat bekerja bersama kami pada menambahkan fitur untuk bahasa assembly. Dia saat itu baru berusia 16 tahun.
Jeff meminta saya apa yang saya saat ini bekerja pada. Aku bercerita tentang Thunderscan, tapi ketika disebutkan percobaan dengan aplikasi utilitas beralih rahangnya turun. Jeff tidak bisa percaya bahwa saya benar-benar mengatakan itu.
"Ini adalah apa yang kita ingin bicara! Sangat menyenangkan bahwa Anda sudah bekerja di atasnya "-! Jeff seru.
Dia menjelaskan bahwa perlu bekerja keras untuk membuatnya bekerja secara konsisten aplikasi di daerah kecil dari RAM Macintosh 128K. Selain itu, Lotus baru-baru ini mengumumkan paket perangkat lunak baru untuk Jazz Macintosh 512K, yang memungkinkan Anda dengan cepat dan mudah beralih di antara daerah-daerah fungsional. Tujuan dari kunjungan ini adalah untuk membujuk saya untuk menulis aplikasi serupa, beralih pada kontrak dengan Microsoft.
Neil Conze disajikan proyek potensial alat yang dikembangkan di papan tulis. Ia mengusulkan untuk menggunakan area memori yang sama, yang saya langsung menolak, menceritakan tentang pendekatan alternatif, dengan wilayah yang terpisah, memberikan keandalan terbesar.
hari saya di Microsoft menyelesaikan pertemuan pribadi dengan Bill Gates. Jeff membawa saya ke kantornya dan meminta maaf dan meninggalkan kami sendirian.
Setelah pertukaran petugas dari sapa, Bill mendongak dan bertanya di mata: "Kau benar-benar seorang programmer yang baik, bukan? Saya pikir Anda benar-benar harus menjadi seorang programmer yang baik. "
"Saya kira begitu," - Aku menjawab, tidak tahu mengapa dia menyanjung saya.
"Saya pikir juga begitu. Bagaimana menurut Anda berapa banyak waktu yang diperlukan untuk melaksanakan proyek ini? Satu atau dua bulan? Sepertinya saya, seorang programmer yang baik harus menangani ini dalam beberapa bulan. "
"Saya tidak tahu - saya katakan - bahkan tidak tahu apakah mungkin untuk melaksanakan."
"Lihat Mari - katanya dengan nada merendahkan sedikit - tidak harus mengambil lebih dari sepuluh ribuan baris kode, dan programmer benar-benar baik mampu menulis setidaknya seribu baris dalam seminggu. Saya pikir itu akan membawa Anda tidak lebih dari minggu sepuluh. "
Aku tidak tahu harus menjawab apa, jadi aku hanya diam dan mendengarkan.
"Apa yang Anda pikirkan, berapa banyak uang bisa mendapatkan seorang programmer yang baik? Kami membayar karyawan terbaik kami sekitar dua ribu dolar seminggu. Apakah Anda tidak berpikir bahwa Anda harus membayar lebih? "
"Saya tidak tahu" - jawabku. Ini menjadi jelas bahwa Bill sedang berusaha untuk mengubah saya cara yang sangat cepat untuk menulis utilitas ini.
"Jika Anda mendapatkan sekitar empat ribu dolar seminggu, - lanjutnya - bahwa pada akhir minggu sepuluh Anda bisa mendapatkan empat puluh ribu."
Saya mengatakan kepadanya bahwa saya akan melakukan segala kemungkinan untuk memastikan bahwa alat ini bekerja dengan baik dengan aplikasi dari Microsoft. Saya ingin melakukan ini dalam hal apapun dan tanpa proposal ini, karena program Microsoft sudah sangat populer di kalangan pengguna. Kami berjabat tangan dan saya meninggalkan kantor dengan catatan positif.
Kembali ke rumah di Palo Alto, saya ingin mengembangkan konsep utilitas untuk program switch, meskipun tanggal berakhir persiapan Thunderscan.
Pada akhirnya, saya harus membuat antarmuka pengguna untuk utilitas ini. Saya telah bekerja non-stop 20 jam, mengembangkan program inti. Sangat itu bagus untuk menonton secara bertahap meningkatkan stabilitas utilitas, memecahkan masalah rutin dengan memori.
Ketika bekerja pada proyek-nya, saya melihat Bud Tribble, yang kembali ke Apple pada bulan Juli 1984 untuk jabatan Software Manager setelah magang kedokteran di University of Washington dan tinggal di dekat saya.
Aku bertanya Bud untuk dirinya sendiri, untuk menunjukkan cepat beralih antara MacPaint, MacWrite dan MacDraw. Dia terkesan, tapi saya terkejut, telah mengeluh bahwa transisi berlangsung terlalu cepat.
"Dan jika seseorang akan membuat switch ini secara tidak sengaja? Hal ini dapat menyebabkan kebingungan, - dia mengatakan kepada saya - dimungkinkan untuk menggunakan animasi untuk membuat kelancaran transisi "?.
Ide ini tampaknya benar-benar baik. Kami memutuskan bahwa mengubah program harus menggulir secara horizontal, dan semua aplikasi yang berjalan dapat ditampilkan dengan jelas di daerah kecil layar. Aku segera menulis kode yang diperlukan dan kagum melihat betapa besar program melintas di layar.
Saya menunjukkan konsep ini ke teman Anda dari Apple dan beberapa pengguna sederhana. Semuanya positif memeluk proyek saya. Sayangnya, saya tidak punya waktu untuk revisi Thunderscan, tapi aku masih memenuhi janji, dan ia siap pada akhir November.
Setelah istirahat sejenak sudah waktunya untuk kembali ke pengembangan utilitas untuk aplikasi switch, aku mulai memanggil Switcher. Pada awal Desember, saya menyadari sebagian besar, termasuk user interface.
Pada awal Januari tahun 1985, saya menerima telepon dari Guy Kawasaki, yang mengatakan kepada saya bahwa Apple tertarik untuk membeli Switcher. Langkah pertama adalah untuk melakukan presentasi produk untuk Steve Jobs.
Pergi ke kantornya, aku masih kecil khawatir, menilai proyek dalam seperempat juta dolar, tapi ia yakin bahwa Steve tidak pernah membayar saya begitu banyak. Saya bangga anak mereka, dan saya tertarik pada reaksi Jobs pada dirinya. Menjalankan MacWrite, MacPaint, MacDraw dan Finder, saya sengaja memamerkan Switcher dengan animasi, untuk kemudian membuat kesan yang spektakuler. Aku cepat beralih antara aplikasi di kedua arah.
"Yah, aku melihat cukup - Steve menginterupsi, - itu bagus. Kami ingin mengintegrasikan proyek ini ke Mac ».
Sesaat dia berdiri dan menatapku tajam, seolah ia ingin menakut-nakuti saya.
"Saya tidak ingin Anda untuk digunakan Apel».
"Apa maksudmu?" - bingung dengan kata-katanya, aku bertanya pertanyaan.
"Anda tidak akan dapat menyelesaikan program tanpa informasi yang bisa Anda dapatkan di sini. Sebagai hasilnya, Anda telah kehilangan keinginan untuk menyelesaikan proyek itu. "
"Program ini siap persis setengah. Saya ragu bahwa jika saya membayar jujur, aku tidak akan memotivasi untuk menyelesaikan pekerjaan, "- Saya mulai marah.
Setelah melihat saya bahkan terlihat lebih serius, Steve mengumumkan satu nomor, tanpa penjelasan apapun.
"Seratus ribu dolar."
"Saya tidak tahu - saya mengatakan kepadanya -. Saya berpikir bahwa Switcher jauh lebih mahal"
"Jangan berdebat dengan saya, - silat Jobs - harga yang adil, dan kau tahu itu."
Tampaknya bahwa saya tidak memiliki alternatif lain, dan aku harus menyerah kepada Steve harga. Dengan dia itu memang sangat sulit untuk berdebat. Pada akhirnya, saat penandatanganan perjanjian definitif dengan Guy Kawasaki saya bisa mendapatkan bonus, yang di masa depan membawa saya lima puluh ribu.
Seperti yang diharapkan, bagian yang paling sulit dari pekerjaan pada Switcher adalah untuk mendapatkan dia untuk bekerja terus dengan aplikasi Microsoft. Pengembang telah membiarkan diri mereka berbagai kebebasan dengan sistem, telah menjauh dari petunjuk yang biasa, yang menyebabkan saya beberapa kesulitan.
Aku harus menerjemahkan kode semu untuk bytecode. Terjemahan dengan enam tim untuk debugging berikutnya cukup menyakitkan bagi Switcher.
Salah satu masalah baru-baru ini, saya menghadapi hingga rilis Switcher pertama bulan Maret tahun 1985, Itu pelaksanaan kemungkinan "pembunuhan" aplikasi hung tanpa perlu menutup semua segera. Saya telah menambahkan fitur ini dalam kombinasi dengan kemampuan untuk memonitor status program yang berjalan.
Aku harus memilih kombinasi yang cukup langka kunci untuk memulai fungsi ini. Saya memilih empat tombol, yang, seperti yang terlihat, itu sangat sulit untuk menemukan secara kebetulan, tapi masih terkejut ketika saya menerima panggilan telepon dari Jeff Harbers dari Microsoft.
"Saya seperti ini pilihan memaksa penyelesaian program, tetapi Anda harus mengubah cara pintas keyboard, karena kami menggunakan ini ketika bekerja dengan Microsoft Word». Jeff menjelaskan kepada saya bahwa Firman adalah editor yang sangat rumit dan memiliki sejumlah besar shortcut keyboard.
Jeff tidak menawarkan beton apa-apa, tapi menelepon saya keesokan harinya, menawarkan kombinasi yang berbeda.
"Kami akan mengubah Firman dalam edisi berikutnya. Masalahnya adalah bahwa kita tidak datang untuk menemukan urutan kunci aman. Kami hanya menggunakan mereka semua, "- menertawakanku, Jeff.
Rilis versi final dari Switcher secara resmi diadakan di April 1985. Saya mendukung beberapa versi setelah peluncuran, tapi akhirnya memberikannya kepada Phil Goldman, seorang programmer berbakat dari Princeton, yang telah mendapat pekerjaan di Apple. Dia mulai mengembangkan MultiFinder, yang menjadi penerima Switcher pada tahun 1987.
melalui Folklore.org