Ликбез по macOS. Разбираем в подробностях, как устроена macOS
Предположим, ты недавно приобрел «мак» или раздумываешь, не сделать ли это. Но macOS кажется чуждой и непонятной, да и вообще ходят слухи о том, что там чихнуть нельзя без разрешения Тима Кука. Другая распространенная небылица — что macOS всего лишь чуть‑чуть переделанный Linux. В этой статье мы пройдемся по всем основным механизмам macOS и заодно поговорим о том, какие в реальности есть ограничения и можно ли их обойти.
Краткая история macOS
История macOS, как и в целом история Apple, увлекательна и полна захватывающих перипетий. Здесь я перескажу ее в очень сокращенном и упрощенном виде.
Все началось в далекие восьмидесятые годы с компьютеров Apple II. Операционной системы в современном понимании этого слова у них, по сути, не было: сейчас их ОС мы бы назвали прошивкой. Как и в случае с другими домашними компьютерами той эпохи, в нее входил интерпретатор BASIC, служивший для выполнения пользовательских команд.
www
Никакого заметного наследия Apple II и III в macOS сейчас не найти, однако желающие прикоснуться к истории могут запустить эмулятор Apple II прямо в браузере.
Компьютер Apple Macintosh, вышедший на рынок в 1984 году, разительно отличался от этих машин. Его операционная система сразу включала в себя графический пользовательский интерфейс с поддержкой мыши. Оконный интерфейс по тем временам считался удивительной новинкой — до этого его не было ни у одного серийно производимого компьютера (Windows 1.0 появился через два года после Macintosh и многое у него позаимствовал).
Классическая Mac OS активно развивалась до 1996 года, а последний ее релиз вышел в 2001 году. И если для конца восьмидесятых она считалась передовой, то в девяностые ее архитектура с устаревшей моделью разделения памяти постепенно стала преградой для развития Apple. В качестве экстренной меры руководство компании решило приобрести стартап NeXT, основанный ранее вытесненным из Apple Стивом Джобсом.
Главной разработкой NeXT была графическая операционная система NeXTSTEP, в основе которой — Unix-образное ядро и окружение, продвинутый графический движок и набор объектно ориентированных фреймворков. Последний позволял разработчикам легко создавать оконные приложения на продвинутом по тем временам языке Objective-C. На компьютерах NeXT, к примеру, был создан прототип первого веб‑браузера.
После того как команда разработчиков NeXT перешла в Apple, совместными усилиями была создана новая система — Mac OS X. Позднее ее переименовали в OS X, а затем в macOS (отдел маркетинга в Apple никогда не сидит сложа руки). Технически Mac OS X основана на NeXTSTEP, однако ее интерфейс многое почерпнул из классической Mac OS.
В переходный период «макинтоши» поддерживали как классическую Mac OS, так и Mac OS X. С 2002 года все компьютеры Apple стали выходить с предустановленной Mac OS X, а Mac OS 9 еще несколько лет можно было запускать в режиме совместимости.
Ядро XNU
В основе macOS, как и в основе любой другой ОС, лежит ядро. Оно отвечает за выделение процессорного времени, управление оперативной памятью и кешем, взаимодействие с устройствами и сетью. В то же время оно обрабатывает системные вызовы приложений и обеспечивает взаимодействие процессов.
Современная macOS работает на ядре XNU, которое пришло из NeXTSTEP. За основу его кода в свое время был взят проект Mach — ответвление от ядра FreeBSD.
XNU означает X is Not Unix, «X — не Unix». Эта расшифровка — давно утерявший актуальность программистский юмор: macOS все же по большому счету считается одной из разновидностей Unix. Однако XNU не имеет бинарной совместимости с FreeBSD, то есть программы для FreeBSD в macOS нельзя запустить без изменений и перекомпиляции.
Ядро XNU — гибридное. Это значит, что в отличие от микроядер оно может быть дополнено расширениями, но при этом не является монолитным, как ядро Linux, где все функции собраны в один гигантский бинарный файл.
До macOS 10.15 основным способом расширения ядра были модули kext. Поскольку «кексты» работают в пространстве ядра, сбои в них могут приводить к нестабильной работе компьютера. К тому же они открывали большие возможности для недобросовестных разработчиков.
Сейчас «кексты» считаются устаревшим методом, и со временем он будет отключен. Вместо этого в Apple предлагают разработчикам использовать фреймворки DriverKit и SystemExtension, которые позволяют создавать драйверы и расширения, работающие в пространстве пользователя.
Darwin
Операционная система — это не только ядро. Вместе с Mach в NeXTSTEP, а затем и в Mac OS X перекочевал набор библиотек и исполняемых файлов, которые вместе с XNU обеспечивают поддержку POSIX — Portable Operating System Interface, «портируемого интерфейса операционной системы». Это стандарт, которому в той или иной мере соответствуют все Unix-образные операционные системы и который обеспечивает низкоуровневую совместимость между ними.
В macOS этот слой называется Darwin и по сути представляет собой самостоятельную операционную систему. Сюда не входят графическая среда и библиотеки, нужные для работы оконных приложений, но входят ядро, драйверы, сетевой стек, набор системных и пользовательских утилит командной строки, а также система запуска служб и приложений launchd.
При желании Darwin можно установить как самостоятельную минималистичную ОС с текстовым интерпретатором команд. Код Darwin с самого начала был открыт, однако со временем в нем появилось множество закрытых компонентов, включая специфичные для «маков» драйверы.
Последние версии Darwin уже было невозможно собрать и заставить работать без средств, доступных только программистам Apple. Получилось, что публикация исходников в таком виде стала не нужна ни Apple, ни сообществу, и ее просто прекратили. Код XNU тем временем по‑прежнему доступен на GitHub и продолжает обновляться.
Сейчас силами сообщества поддерживается проект PureDarwin — по‑настоящему открытая реализация Darwin.
info
Долгое время среди продвинутых маководов был популярен набор утилит MacPorts, также основанный на Darwin, но дополненный и расширенный современными версиями программ для Linux. MacPorts продолжают поддерживать, однако сейчас его почти полностью вытеснил пакетный менеджер brew.
Графическая система
Графический слой в macOS обычно называют Quartz, хотя подразумевается под этим набор библиотек Core Graphics. Две его важнейшие части — это Quartz 2D и Quartz Compositor.
Quartz 2D
Quartz 2D отвечает за все, что связано с двумерной графикой. В его основные задачи входит отрисовка текста и превращение графических примитивов, описанных в формате PostScript, в растровые изображения, которые затем передаются в Quartz Compositor.
Присоединяйся к сообществу «Xakep.ru»!
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Mac OS — что это за программа?
Приветствую. Данная статья расскажет о программе Mac OS, постараемся выяснить предназначение.
Mac OS — что это такое?
Операционная система, которая устанавливается на компьютеры фирмы Apple, называемые Mac.
В принципе это все, что нужно знать. Это операционная система как Windows, только она предназначена для персональных компьютеров Apple.
Некоторые моменты
Теперь рассмотрим некоторые особенности системы Mac OS.
Если человек никогда не видел Mac OS, то после знакомства, первое что бросается в глаза — плавность, красивая анимация, все детали интерфейса выполнены идеально, приятные эффекты появления меню/выбора значков:
Второе что — шрифты, Mac OS рисует шрифты как есть, в отличии от Windows, которая пытается подогнать толщину шрифта. По этой причине часто типографии или компании, которые связаны с печатью — предпочитают операционку Mac OS, так как там шрифты отображаются так, как будут отображаться в реальной жизни.
Скорость работы — Mac OS немного быстрее. Грузится немного быстрее, некоторый софт, например Adobe Photoshop — тоже запускается быстрее. Также вообще в Mac OS меньше подтормаживаний, которые свойственны Windows.
Также есть такое понятие как Док. Это небольшая панель с иконками, которая находится в нижней части экрана, как панель задач в Windows. Внешний вид док-панели:
Данная панель разделена на две части:
- Левая содержит закрепленные иконки, ярлыки приложений, которые в панели присутствуют всегда. Под значками приложений, которые запущены — появляется светлозеленый маленький индикатор.
- Правая, как я понимаю содержит запущенные документы, открытые папки, также здесь хранятся запущенные приложения, а точнее — их документы, активные вкладки, окна.
Закрытие программ необычно. При нажатии по крестику — не происходит обычного завершения работы программы, нет, происходит сворачивание программы в левую часть. В памяти приложение остается висеть, хотя выгружаются открытые документы, некоторые другие данные, но приложение остается висеть в памяти. Скорее всего данный механизм придуман чтобы приложение повторно было открыть уже намного быстрее. Но чтобы закрыть программу полностью — необходимо нажать по нему правой кнопкой мышки и выбрать необходимый пункт или просто зажать клавиши Ctrl + Q.
Еще необычная особенность — меню программ, в Windows оно всегда находится под заголовком (или примерно там). Но в Mac OS оно всегда в верхней части экрана (рабочего стола) — даже если приложение запущено не во весь экран, как пример с Мозиллой:
Как видите — браузер не развернут на весь экран, но меню браузера находится вверху. Это удобно да. Но я так понимаю что при написании программ данный момент учитывается, скорее всего есть некий стандарт, алгоритм при написании софта, чтобы Mac OS сама находила эту панель в программе и располагала ее в верхней части экрана. Удобно ли это на самом деле? Да, но тем, кто годами пользуется Windows — думаю что все же не очень.
Mac OS поддерживает несколько рабочих столов, между которыми удобно переключаться. Можно настроить на каком рабочем столе запускать какую программу и другие связанные полезные опции.
Установка и удаление программ. Здесь все необычно и проще — смотрите, программы из себя представляют просто упакованные папки. То есть чтобы установить программу достаточно скопировать папку с ней с папку с программами. Реестра нет. Настройки как понимаю хранятся в самой папке, а если нужно удалить приложение — то просто удаляем директорию с ней и все. Некоторые программы конечно не так просто ставятся, а прям внедряются в систему, но это касается сложных приложений например ПО Adobe.
Также на Mac OS почти нет вирусов. Их просто нет смысла создавать — самая популярная операционка это OS Windows, поэтому под нее и пишется большинство вирусов, а под Mac OS или Linux — особо смысла нет, сидят мало юзеров.
Софт. Да, софта под Mac OS в разы меньше намного. Но вроде бы есть решение — установка виртуальной машины Parallels Desktop, в которой можно запускать любые виндовские приложения. И вроде бы все хорошо, но нужно понимать что ресурсов для запуска приложения в виртуальной машине — нужно больше. Также есть режим Coherence в Parallels Desktop, который позволяет перекидывать окна и запущенные программы из виртуальной машины в реальную, выглядит это примерно так:
В Mac OS может отображаться даже меню Пуск из виртуальной Windows:
Мое мнение
Все хорошо, но возможно кому-то будет интересно и мое мнение.
- Если нужен ПК только для просмотра фильмов, прослушивания музыки, сидения в социальных сетях, читать новости — то здесь лучше Mac OS. Потому что один раз все настроили и получаете удовольствие от стабильной работы с приятным интерфейсом.
- Если вы работаете в софте Adobe (Photoshop, Lightroom) — то возможно Mac OS вам тоже подойдет, если например нет проблем с установкой дополнительных утилит для софта Adobe и реализацией других мелочей.
- Если вы за ПК играете — однозначно нет. Даже нечего обсуждать, игр поддерживается меньше, программ тоже меньше, например элементарно для подсчета FPS в игре.
- Да, конечно можно запустить софт через виртуальную машину. Но поверьте — это гемор. Можно запустить, да, можно пользоваться, но в итоге вы придете к тому, что вы используете две операционки. Потому что настройки приложений, которые запущены в виртуальной машине — настройки будут храниться там. Плюс дополнительно накладывается потребление ресурсов, например вам нужно запустить небольшую утилиту, которая работает только в винде, в итоге вам нужно чтобы работала целая операционная система, чтобы запустить небольшую утилиту. Не легче ли тогда установить Windows?
- Отсутствие вирусов. Тут все просто — их нет смысла создавать, так как по сравнению с Windows — Mac OS используют намного меньше. Намного. Во-вторых чтобы создавать вирусы под эту систему — нужно ее изучать, а это тоже неблагодарное дело из-за низкой популярности самой операционки. Это еще один плюс, почему Mac OS — идеальна, чтобы использовать ПК для мультимедийных задач, например музыка, кино, социальные сети, развлекательные сайты.
Заключение
- Mac OS — операционная система для компьютеров Apple, аналог Windows.
- Основные минусы: низкая популярность системы, и все вытекающие из этого минусы — меньше софта, меньше игр, меньше разных мануалов, инструкций как что сделать/настроить.
- Плюсы: мое мнение что лучше работает/красивее интерфейс, быстрее выполняются некоторые процессы, отсутствие вирусов, стабильная работа (все таки это компания Apple, продукция которой стоит дороже).
Руководство пользователя macOS
Вы можете легко настроить новый Mac и начать им пользоваться. Выберите обои для Рабочего стола, измените основные настройки, начните использовать приложения и выполнять другие задачи.
Переходите с Windows на Mac?
Если Вы переходите на Mac, начните с этого раздела, чтобы сделать переход плавным. Познакомьтесь с основными терминами, которые используются для Mac, узнайте, как находить файлы, и ознакомьтесь с другой информацией.
Использование Mac с другими устройствами Apple
Mac идеально работает со всеми устройствами Apple. Можно использовать iPhone в качестве веб-камеры Mac, выполнять копирование и вставку с использованием нескольких устройств, а также совершать другие действия.
Упрощение задач на Mac
Отслеживайте важные задачи в виджетах на рабочем столе, открывайте сайты из панели Dock и выполняйте другие действия. Функция «Постановщик» помогает расположить окна приложений таким образом, чтобы можно было легко переключаться между задачами, ни на что не отвлекаясь.
Конфиденциальная и защищенная работа
Нет ничего важнее защиты конфиденциальности и безопасности Вашей работы. В Mac встроены инструменты и приложения для надежной защиты Вашей информации: ключи доступа, частный доступ и многое другое.
Забыли пароль?
Узнайте, как изменить или сбросить пароль Apple ID.
Загрузите руководство с основными сведениями
У Вас новый Mac? Ознакомьтесь с основными сведениями о Вашей модели.
Служба поддержки Apple
Если у Вас возникли вопросы, Вы можете обратиться в службу поддержки Apple.
Чтобы изучить Руководство пользователя macOS, нажмите «Оглавление» вверху страницы либо введите слово или фразу в поле поиска.
Если Вам требуется дополнительная помощь, перейдите на веб-сайт поддержки macOS.
Некоторые функции и материалы доступны не во всех странах и регионах.
При подготовке материала использовались источники:
https://xakep.ru/2022/10/31/macos-tech-overview/
https://990x.top/mac-os-chto-eto-za-programma-otvet.html
https://support.apple.com/ru-ru/guide/mac-help/welcome/mac