Еволюція Mac OS: від System 1.0 до Mac OS 9

З листопада минулого року у Мас'ів знову цікаве і яскраве майбутнє, і тепер доречно згадати про день народження цієї платформи. 24 січня Macintosh виповнилося 37 років. З 1988 або 1989, наприкінці кожного прес-релізу Apple Computer додавали (і додають досі) короткий опис історичних досягнень компанії - і на одному з перших місць був згаданий Mac, що 1984 року революційно змінив персональні комп'ютери. Правда, але не вся і не зовсім. Mac був чудовим компактним комп'ютером з унікальним дизайном і з 32-бітним процесором всередині - але нічого особливо революційного в ньому не було. Революційною, і це не перебільшення, була його операційна система. Через 37 років багато з її рис впізнавані і в найсучаснішій macOS Big Sur, вона ж macOS 11.0. Відлік версій починається з System 1.0, що вийшла разом з першим Mac 1984 року. У цій статті ми розглянемо еволюцію операційної системи Mac з самого її народження.

Чим саме перший Macintosh і його операційна система були революційні? Через те, що замість мови командного рядка для керування ним використовувалися графічний інтерфейс користувача (ГПІ), курсор і однокнопкова миша, що переміщає його по екрану? Все це вже було. Наприклад, у робочій станції (1973 року народження) Xerox Alto, яку Стіву і супроводжуючим його особам показали в 1979 році.


У Mac'e, вперше в історії ГПІ, його змусили працювати в 128 кілобайтах оперативної пам'яті комп'ютера, це було видатним досягненням. Але витрачати мільйони тільки на це було б нерозумно, і рада директорів не затвердила б це неподобство. Все було серйозніше: у той час лише невелика частина з тих, хто був достатньо забезпечений, щоб придбати персональний комп'ютер, купували його. Інші вважали комп'ютери незрозумілими і складними і не хотіли витрачати багато часу на його освоєння. У результаті десятки мільярдів доларів, якщо не сотні, не потрапляли на рахунки виробників комп'ютерів, периферії і програм. Це був, образно кажучи, потужний нафтоносний шар на недоступній глибині.

Як з'явилася Mac OS?

Побачивши Xerox Alto, Стів зрозумів, як можна дістатися до цих мільярдів. Для цього потрібно було створити комп'ютер, заснований на тих же принципах, але більш простий і зрозумілий - який можна було освоїти за хвилини, без вивчення документації і нелюдської мови командного рядка. Щоб основних принципів (які можна було б викласти на одній сторінці) вистачало для включення інтуїції і здорового глузду. А вже вони підказали б все інше. Ще цей комп'ютер повинен бути досить недорогим, щоб продаватися масовими тиражами.

Всередині комп'ютер може бути наскільки завгодно складним - але користувачеві знати про це ні до чого. Створити такий комп'ютер складніше, ніж звичайний і такий же як у всіх, але років через п'ять після початку його продажів всі комп'ютери в світі будуть такими ж, як він, і витрати окупляться. Приблизно так Стів пояснив цілі і сенс своєї пропозиції раді директорів. Щоб остаточно їх переконати, знадобився час, але «шалено великому наміру» Стіва, зрештою, дали зелене світло.

Стів хотів позбавити користувачів від складності і незрозумілості операційних систем і досяг успіху в цьому. Сторонні спостерігачі прийшли до висновку, що Mac настільки примітивний, що в ньому взагалі немає ніякої операційної системи. Це марна іграшка, а те, що це убожество коштує 2 495 доларів (у доларах 2021 року - приблизно 6 200), - чистої води шахрайство.

Операційна система, тим не менш, була. Її навіть можна було побачити, заглянувши в системну теку (System Folder). Один з файлів у цій теці так і називався - System. До системи належав Finder, фактично - програма, що керувала робочим столом, вікнами і меню, взаємодією з користувачем, а також виконувала функції файлового менеджера.

У системі була ще одна дійова особа, ПЗУ з бібліотеками системи, але про неї знали тільки розробники.


Особливості Mac OS

Файли в Масовській системі складалися з двох частин, або форків (від англійського fork, в даному випадку «відгалуження») - форка даних і форка ресурсів. Форк даних був аналогічний звичайним файлам у звичайних системах. Формат форка ресурсів був строго і чітко визначений. Термін «ресурс» в класичній Мас'івській системі, крім інших його значень, мав ще одне - фрагмент даних, розміром до 32 кілобайт. У межах форка ресурсів він позначався двома параметрами.

Перший з них, число довжиною в 4 байти, називали типом ресурсу. Байт - це ще й буква, цифра або якийсь знак в ASCII. Системі зручніше було мати справу з довгими числами, людині - з мнемонічними позначеннями. Ресурс типу рядок позначався як «STR», з пробілом на кінці. У ресурсах типу «STR #» зберігалися списки рядків. «WIND», «PICT», «DLOG», «CNTL» і сотні різних інших їх типів були визначені Apple. Позначення типів ресурсів, що складаються тільки з заголовних або тільки з рядкових букв, були зарезервовані за нею. Крім того, у кожного ресурсу був номер, і ресурси позначалися так: CODE 0, STR # 128 або BNDL 0. Файли System і Finder складалися з величезної кількості ресурсів, які можна було редагувати.

Числові значення з мнемонічним сенсом, хоча технічно це звичайне довге число (довжиною в 4 байти), отримали в Apple спеціальне позначення - OSType, і дуже широке поширення. У більшості систем того часу файли позначали за схемою 8.3 - вісім букв латинського алфавіту (рядкові і заголовні літери вважаються рівними) позначали ім'я, інші три, після точки - тип файлу. Наприклад, System.exe або otcQ221.dat.

У Масівській системі ім'я файлу до його ідентифікації не мало майже жодного стосунку. Тип файлу (програма, драйвер, документ MS Word або MS Excel тощо) позначався двома значеннями типу OSType. Умовно назву їх «тип» і «походження». Комбінація цих значень визначала багато - іконку, якою цей файл відображався на робочому столі, і дії, що викликаються подвійним кліком за цією іконкою - якою програмою їх слід відкривати.

Скільки оперативної пам'яті було в першому Mac

Оперативної пам'яті в першому Mac'e було 128 КБ. Спочатку хотіли обійтися взагалі 64 КБ, щоб зробити його дешевшим - але не вийшло. Системи з графічним інтерфейсом користувача від Xerox працювали (зі скрипом) мінімум при 350 КБ оперативної пам'яті. Як накопичувач перший Mac використовував виключно дискети ємністю в 400 КБ. Графічний інтерфейс користувача - це графіка, піктограми, бібліотеки і багато всілякої іншої всячини.

В Apple закликали на допомогу магію? Так. Магію творчої думки. Бібліотеки (не тільки графічні), піктограми і системний код розмістили в постійній пам'яті, в ПЗУ (в ROM). В IBM PC теж було ПЗУ, розміром у 8 КБ. У ньому зберігалися BIOS і POST - базова система введення/виведення і самотестування комп'ютера при його включенні. У першому Mac'e розмір ПЗУ був 64 КБ. Розмістити в ньому потрібно було в п'ять-шість разів більший обсяг даних, збільшувати розмір ПЗУ було не можна. Глухий кут? Допомогла та ж магія. Систему писали на Паскалі, мові високого рівня. Виконуваний код на asm, асемблері Motorola 68000, який виходив після компіляції, оптимізували вручну.

У нашому випадку, правда, цим зайнявся автор ідеї, Енді Херцфельд. У підсумку розмір коду зменшився приблизно в чотири рази, а його треба було зменшити в п'ять-шість разів. В оптимізованому коді Енді шукав ідентичні і майже ідентичні фрагменти, потім фрагменти, які можна було звести до них, ну і ті, без яких можна було обійтися - в результаті в ПЗУ навіть залишалося незайняте місце. А після кожної компіляції доводилося робити все це ще раз, заново і з самого початку.


C System 1.0 до System 4.0 Масовська система вважалася однозадачною. Тобто в будь-який момент працювало тільки одна програма - або Finder. Як і в перших системах iPhone. Але насправді, система Мас'ів не була однозадачною. Вона була «півторозадачною». Розробники системи не могли змиритися з тим, що для того, щоб подивитися на годинник або порахувати щось на калькуляторі, потрібно вийти з додатка, в якому працюєш (не забувши зберегти зміни). А потім знову запускати додаток. І придумали аксесуари робочого столу (DA). Фактично це були драйвери, але ті, хто працює не з залізом, а з користувачем і користувальницьким інтерфейсом. Доступ до DA розмістили в меню з логотипом Apple замість назви, яка так і називається - «Apple».

System 1.0 - перша Mac OS

Назва цієї версії системи була присвоєна заднім числом, наприкінці 90-х. Офіційно її ніяк не називали. Або називали системним програмним забезпеченням. Більш-менш виразне її позначення було тільки у розробників - 0.97, вони не вважали її ні остаточною, ні готовою до виходу. Системи залишалися безіменними до System 4.

Поки система була тільки одна, проблем не виникало. Після неї версію системи визначали за номерами версій Finder і System. Зазвичай вони були різними, але в System 1 у них у обох версія 1.0. Система займала на дискеті 216 К (більше половини) і складалася з 6 файлів: System з аксесуарами робочого столу (DA) всередині, Finder, драйвера принтера ImceWriter, буфера обміну (Clipboard), сховища для картинок (Scrapbook) і записної книжки (Note). Крім цього, для системи було два додатки від самої Apple - MacWrite і MacPaint, і якимось невідомим чином винесений з Apple Computer редактор ресурсів ResEdit, про який майже ніхто не знав.

У версії використовувалася плоска файлова система (не ієрархічна), MFS. Macintosh File System. Папок, насправді, не було. Був список, що зв'язує ідентифікатори файлів з текою, якої не було, але в якій вони знаходилися. У першій версії тек було дві - System і «порожня тека». Порожню теку можна було перейменувати. Не вдалося створити нові теки. Плоска файлова система займала помітне місце у звинуваченнях проти Apple і Macintosh - більше в жодній операційній системі світу, навіть у самій примітивній, не було такої ганьби. Але нічого ганебного в цьому рішенні не було. HFS, ієрархічна файлова система, була написана і налагоджена задовго до MFS, але для системи, що має справу з 400-кілобайтними дискетами, HFS була надлишкова, а в ПЗУ вона займала занадто багато місця. MFS була написана Енді Херцфельдом, відразу на asm.

У травні 1984 року вийшов мінорний апгрейд системи, System 1.1, в основному багфікс (з виправленням виявлених помилок і проблем), але і з новими функціями. У меню з'явилися дві нові команди - «Про систему» (в меню «Apple»), де можна було подивитися номери версій файлів System і Finder, і «Вирівняти» (в меню «View»). Команда розставляла іконки в активному вікні по сітці. Версії Finder і System - 1.1g і 1.1.


System 2.0 - поява тек і знімок екрана

Ця версія вийшла у квітні. Одночасно з приголомшливим і абсолютно несподіваною новинкою від Apple Computer, тим самим ще одним «шалено великим проектом». Стів оголосив про створення першої в світі доступної настільної видавничої системи (DTP). У рамках цієї програми був представлений LaserWriter, перший настільний лазерний принтер з підтримкою мови PostScript. За 7 тисяч доларів, в два рази дорожче вийшов одночасно з ним і заснованого на такому ж движку oCanon HP LaserJet. І додаток PceMaker від нікому поки ще невідомої компанії Aldus. Це і справді був шалений проект, який мав шалений успіх. Наприкінці 80-х Apple вийшла на лідерські позиції на цьому ринку, PceMaker продавав Мас'і - але все це було пізніше. Поки продажі Масів майже припинилися, третій поспіль комп'ютер від Apple явно зазнавав аварії (інші два провалені проекти - Apple III і Lisa).

Версія Finder - 4.1, версія System - 2.0. Змін у самій системі було небагато. Тепер під час перейменування порожньої теки автоматично створювалася нова порожня тека, в меню Special з'явилася команда «Вимкнути», і з'явилася утиліта MiniFinder, яка прискорювала запуск часто використовуваних програм.

Система знову розчарувала, про це розчарування писали, але Стів був зайнятий наступними проектами - комп'ютером BigMac, на роль операційної системи для якого компанії довелося придбати ліцензію на дорогий комерційний Unix. І портативним пристроєм - не то ноутбуком, не то взагалі планшетом.

У вересні 1985 вийшов мінорний апгрейд, System 2.1, з виправленням багів і мінімумом нововведень - підтримкою зовнішнього жорсткого 20-мегабайтного диска Hard Disk 20, але тільки з Macintosh 512 K. Версія Finder - 5.0, версія System - 2.1. А ще - з Apple Computer пішов Стів Джобс. Його ніхто не звільняв, йому просто заборонили чим-небудь займатися, оскільки від його проектів найчастіше була тільки шкода. Він пішов сам, хоча фактично його видавили. Починаючи з цієї версії, крім MFS використовувалася HFS, справжня ієрархічна файлова система - але тільки на Hard Disk 20. На дискетах (ємністю в 400 КБ і в 800 КБ), як і раніше, застосовувалася MFS.

System 3.0 - 1 мегабайт оперативної пам'яті

Вийшла System 3 в січні 1986 року, одночасно з першим реально корисним Мас'ом в їх історії, з якого вона, власне, і почалася - це був Macintosh Plus. На його коробці, великими літерами і цифрами, був розмір його оперативної пам'яті - 1 мегабайт. Оперативну пам'ять можна було збільшити до 4 Мегабайт. Розмір ПЗУ зріс до 128 кілобайт - у ньому з'явився код для підтримки SCSI, двосторонніх 800К-дискет, і повноцінна реалізація HFS (ієрархічної файлової системи). Mac Plus підтримував дорелізну і нестандартну версію SCSI, що відрізняється від остаточної версії, через що згодом були серйозні проблеми - але вони були потім. До Mac'y тепер можна було підключати різні периферійні пристрої.


Розробляти програмне забезпечення для Mac тепер можна було на самому Mac (для цього більше не треба було купувати за шалені гроші Lisa). Коштував же Plus всього на 100 доларів дорожче, ніж перший Macintosh (2 599 доларів). На Mac'ax все ще відчувався дефіцит програмного забезпечення, але навіть незважаючи на неймовірно високу вартість мінімального комплексу технічних засобів, для Mac з'являлися все нові і нові програми.

Продажі Мас'ів пішли вгору, вони знову були цікаві. Версія Finder - 5.1, версія System - 3.0.

У 1986 році вийшло два апгрейди системи, в основному лід-фікси - 3.1 (Версія Finder - 5.2, версія System - 3.1) і 3.2 (Версія Finder - 5.3, версія System - 3.2). В Apple працювали над чимось більшим і шалено великим, але хоча б була надія, що поліпшення торкнуться і операційної системи. А настільні видавничі системи стали приносити компанії несподівано великий дохід. Aldus PceMaker буквально продавав Mac.

System 4.0 - поява ^ Share

Четверта версія системи вийшла в січні 1987 року, головним її нововведенням став ^ Share, комплекс мережевих сервісів. Його активно тестували в 1986 році, ідеї його створення були запропоновані ще Стівом Джобсом, в рамках проекту Macintosh Office. Виявилося, що якщо реалізовувати їх без фанатизму, все виходить. Версія Finder - 5.4, версія System - 4.0.

Привід для випуску версії 4.1 був найнеймовірнішим за всю історію Мас'ів: Apple представила Macintosh II, перший модульний Mac, і Macintosh SE. У System 4.1, що вийшла в березні, майже не було багфіксів, всі зміни стосувалися підтримки нових Мас'ів, особливо Macintosh II з його слотами розширення, процесором Motorola 68020 і підтримкою кольору. Це було друге народження Mac. У Mac SE і Mac II розмір ПЗУ збільшився до 256 КБ.


Перші чотири версії Мас'овської системи вважаються особливою групою - вони безіменні, архаїчні і здатні в одиницю часу виконувати тільки одне завдання. Адже аксесуари робочого столу (DA) - все-таки так собі рішення. Хотілося справжньої багатозадачності. І чогось нового, яскравого, незвичайного. Між тим, оптимізований вручну код на асемблері був на диво швидким, відгукувався на команди користувача майже негайно, і в порівнянні з усіма іншими часами він був неймовірно надійний. Але це здавалося зрозумілим. Радіючи появі все нових і нових Мас'ів, систему критикували за відсутність радикальних змін, її називали нудною - і вимагали нових функцій, змін в дизайні системи і чого-небудь ще.

Історія WriteNow

У 1987 році в продаж надійшов ще один текстовий редактор для Mac, WriteNow. Його розробку в 1983 році організував Стів Джобс, на свої власні гроші. В Apple до виходу першого Mac'a розробляли MacWrite, який не влаштовував Стіва - до речі, було через що.

MacWrite вийшов вчасно, запасний варіант не знадобився, але розробка WriteNow тривала ще кілька років. Стів перфекціоніст, він вимагав від розробників WriteNow неможливого - і домігся свого. До того ж у 1987 році на Mac'ax було з півдюжини текстових редакторів (MacWrite II, MindWrite, MS Word та інші), кращим серед яких вважався Microsoft Word, але у кожного з них були свої недоліки - у WriteNow їх виправили. У хіт-парадах як і раніше лідирував MS Word, але багатьом WriteNow подобався набагато більше.

System 5.0 - перша Mac OS з багатозадачністю

Вперше систему можна було купити, за 49 доларів, у фірмовій упаковці, разом з трьома томами документації та набором програмних інструментів для усунення надзвичайних ситуацій (відновлення випадково викинутого файлу, наприклад) і деяких несправностей у системі. У дилерів Apple і в групах Мас'овських користувачів саму систему і набір інструментів дозволяли копіювати на дискети користувача «просто так».

Тепер, коли Мас'і стали досить потужними, ніякого виправдання відсутності багатозадачності не було. Насправді вона була доступна починаючи з System 3.0, в неофіційній програмі Енді Херцфельда (він вже пішов з Apple), але ні в кого з моїх знайомих, ні в мене самого, подружитися з нею не вийшло. Вона глючила. Зайнята програмою оперативна пам'ять після виходу з неї залишалася недоступною - для систем з типовим для того часу 1 мегабайтом оперативної пам'яті це було неприйнятно.

Пам'ять не вдавалося повертати через особливості реалізації системи, виправити яку було непр

COM_SPPAGEBUILDER_NO_ITEMS_FOUND