Mac os как unix

Является ли Mac OS X лицензированным Unix или Unix-подобным клоном, который соответствует спецификации Unix?

Mac OS X разработана на лицензированной Unix или это Unix-подобный клон, который, в отличие от Linux, достаточно хорошо соответствует спецификации Unix, чтобы быть зарегистрированным в качестве Unix OS. Только до Leopard, Mac OS X не получила сертификацию Unix. Но в Леопарде Терминал все еще печатает:

Но GNU — это GNU, а не Unix, а Mac OS X зарегистрирована как Unix. Это сбивает меня с толку, является ли OS X Unix или Unix-подобным.

Другими словами, OS X написан поверх Unix или переписан Unix, который настолько же Unix, насколько это возможно. Может быть, вместе с ответом кто-то может предоставить происхождение или другую справочную информацию.

4 ответа 4

Оригинальный UNIX был создан в AT & T. Они создали операционную систему для обработки текста, но не смогли ее продать из-за некоторых ограничений, под которыми они находились. Так как они не могли продать его, они были довольно щедрыми в предоставлении университетам доступа к исходным лентам. Несколько Unis внесли изменения, наиболее известным из которых был Калифорнийский университет в Беркли (UCB), который выпустил изменения как Berkeley Software Distribution или BSD. Вариант UNIX для BSD внес несколько важных дополнений в то, что называется UNIX, включая модель виртуальной памяти, сокеты BSD (например, TCP/IP), vi и CSH — первую оболочку, разработанную для интерактивного использования.

BSD UNIX начался как патчи к коду AT & T UNIX. Люди из Беркли очистили и удалили код AT & T, и в итоге был выпущен исходный код BSD без авторских прав AT & T. Это породило 386BSD, которая затем породила NetBSD, FreeBSD, OpenBSD и FireflyBSD (и другие). В конце концов, кодовые базы AT & T и BSD были объединены в «Официальную UNIX», и это было названо SVR4.

Ядро MacOS X Darwin основано на элементах NetBSD и FreeBSD, а также некотором коде Маха. Вы можете сказать, что это UNIX, он имеет кодовую линию через UC Berkeley вплоть до оригинального AT & T.

Но что значит UNIX? Это родословная от AT & T? Если так, то BSD отвечает требованиям, как и Solaris, и куча других. Это API, на котором вы можете запустить код UNIX? Затем те, которые подходят, как и Linux, который является записью с нуля в API UNIX корпус. Для большей части кода Cygwin будет квалифицироваться как цель для кода UNIX, поэтому он также является UNIX, даже если он работает поверх ядра Windows, а ядро UNIX — это DLL в пространстве пользователя. Это значок, который вы можете шлепнуть по коробке? Если это так, Apple, наконец, заплатил за это наличными в Leopard. Хм, но Microsoft заплатила за этот значок для подсистемы Windows NT4 POSIX. Да, Windows NT была под маркой «UNIX» до Solaris. Тем не менее, NetBSD, который является прямым потомком источников UNIX, никогда не платил за этот значок и не называет себя UNIX.

Что касается bash, я бы не стал использовать GNU в качестве стандарта для определения, является ли Mac OS X UNIX. bash распространен на платформах UNIX (и IIRC с bash является одним из требований для SVR4 UNIX), но может быть перенесен и на не-UNIX. «GNU — это не UNIX» — это больше о GNU Hurd, который должен был стать конкурентом UNIX в пространстве операционной системы. Предполагалось, что Hurd — это микроядро, которое может делать замечательные вещи, а также запускать код UNIX. Ядро Hurd мало что сделало, но достижение цели Hurd породило огромное количество невероятно полезного программного обеспечения, работающего под UNIX, включая bash, emacs, gcc и многие другие.

Читайте также:  Как убрать картинку при загрузке windows

Источник

Разница между macOS и ядрами Linux

Некоторые люди могут подумать, что есть сходство между macOS и ядром Linux, потому что они могут обрабатывать похожие команды и аналогичное программное обеспечение.

Некоторые люди даже думают, что MacOS от Apple базируется на Linux.

Правда в том, что оба ядра имеют очень разные истории и особенности.

Сегодня мы рассмотрим разницу между ядрами macOS и Linux.

История ядра macOS

Мы начнем с истории ядра macOS.

В 1985 году Стив Джобс покинул Apple из-за ссоры с генеральным директором Джоном Скалли и советом директоров Apple.

Затем он основал новую компьютерную компанию NeXT.

Джобс хотел быстро выйти на новый компьютер (с новой операционной системой).

Чтобы сэкономить время, команда NeXT использовала ядро Mach) от Carnegie Mellon и части базы данных BSD для создания операционной системы NeXTSTEP.

NeXT никогда не становился финансовым успехом, отчасти благодаря привычке Джобса тратить деньги, как и на Apple.

Между тем, Apple несколько раз пыталась обновить свою операционную систему, даже до тех пор, пока не была партнером IBM.

В 1997 году Apple приобрела NeXT за 429 миллионов долларов.

В рамках сделки Стив Джобс вернулся в Apple, а NeXTSTEP стал основой macOS и iOS.

История ядра Linux

В отличие от ядра macOS, Linux не был создан как часть коммерческой деятельности.

Вместо этого он был создан в 1991 году финским студентом-информатиком Линусом Торвальдсом.

Первоначально ядро было написано по спецификациям компьютера Линуса, потому что он хотел воспользоваться своим новым процессором 80386.

Линус опубликовал код для своего нового ядра в Интернете в августе 1991 года.

Вскоре он получал предложения по коду и предложениям со всего мира.

В следующем году Orest Zborowski портировал систему X Windows на Linux, предоставляя ей возможность поддерживать графический интерфейс пользователя.

За последние 27 лет Linux вырос и приобрел функции.

Это уже не маленький проект студента.

Теперь он управляет большинством вычислительных устройств в мире и суперкомпьютерами в мире.

Особенности ядра macOS

Ядро macOS официально известно как XNU.

Сокращение означает, что «XNU – это не Unix».

Согласно странице Github от Apple, XNU является «гибридным ядром, объединяющим ядро Mach, разработанное в Университете Карнеги-Меллона, с компонентами FreeBSD и C ++ API для написания драйверов».

Подсистема BSD часть кода «обычно реализуется как серверы пользовательского пространства в микроядрах».

Часть Mach отвечает за работу на низком уровне, такую как многозадачность, защищенная память, управление виртуальной памятью, поддержка отладки ядра и консольный ввод-вывод.

Особенности ядра Linux

В то время как ядро macOS сочетает в себе свойство микроядра (Mach)) и монолитного ядра (BSD), Linux является единственным монолитным ядром.

Монолитное ядро отвечает за управление процессором, памятью, межпроцессорной связью, драйверами устройств, файловой системой и системными серверами.

Разница между ядром Mac и Linux в одной строке

Ядро macOS (XNU) было дольше, чем Linux, и было основано на сочетании двух ранних кодовых баз.

С другой стороны, Linux новее, написан с нуля, и используется на многих других устройствах.

Источник

Является ли macOS UNIX? (И что это значит?)

Является ли macOS UNIX или просто Unix? Или это Unix-подобный? Мы отвечаем на бесконечные дебаты и объясняем такие стандарты, как POSIX и SUS.

macOS: UNIX или нет?

Эта тема поднимает кучу разных вопросов. Какова родословная macOS? Сколько из этого наследственного материала все еще присутствует в современных macOS, и имеет ли это значение? Прежде чем мы сможем ответить, является ли что-то UNIX, Unix или Unix-подобным, нам нужно понять, что означают эти термины. Кто решает, является ли что-то Unix или UNIX, и какие критерии они используют?

Читайте также:  Fps minecraft windows 10 edition

Давайте начнем с самого начала.

Unix был создан пятьдесят лет назад в Bell Labs , научно-исследовательской компании AT & T. Перенесемся в 1973 г. и в версию 4 Unix, которая была переписана на языке программирования C. Это сделало операционную систему намного более переносимой и более легкой для переноса на другие аппаратные платформы. В том же году Кен Томпсон и Деннис Ритчи , два основных архитектора Unix, представили на конференции доклад об операционных системах. Сразу же они получили запросы на копии операционной системы.

Связанный указом о согласии от 1956 года, AT & T должен был отказаться от «любого бизнеса, кроме предоставления услуг связи обычных операторов связи». Unix не квалифицировался как нечто, от чего AT & T могла бы извлечь выгоду. Итак, компания сделала что-то примечательное для того времени: распространил Unix в качестве исходного кода с либеральной лицензией. Небольшие сборы покрывали доставку и упаковку, а также «разумный гонорар».

Распространение Unixes

Поскольку Unix был предоставлен «как есть», он пришел без поддержки. В результате сообщество Unix начало объединяться, чтобы помогать участникам, а также исправлять и расширять Unix. Таким образом, вы можете получить исходный код, изменить его и получить поддержку от сообщества. Это знакомое кольцо. Различные разновидности Unix начали появляться, адаптироваться и настраиваться в соответствии с организацией, выполняющей работу.

Боб Фабри , профессор компьютерных наук в Калифорнийском университете в Беркли, был в программном комитете симпозиума по принципам операционных систем 1973 года. Он слушал презентацию Томпсона и Ричи, озаглавленную «Система разделения времени UNIX» .

Фабри запросил копию операционной системы, и в 1974 году Unix был установлен на PDP / 11 в Исследовательской группе по компьютерным наукам (CSRG) в Калифорнийском университете в Беркли. Примечательно, что Кен Томпсон провел там год, работая над тем, что быстро стало собственной разновидностью Unix в университете. Копии изменений и дополнений UC Berkeley были распространены и стали называться Berkeley Software Distribution (BSD). В конце концов, они стали дистрибутивами всей системы Unix, все еще известной как BSD. Номера версий, такие как 4.2BSD, идентифицировали разные версии.

В 1984 году AT & T была освобождена от строгих условий соглашения о согласии 1956 года и способна правильно продавать свою операционную систему. Он включает в себя код BSD, такой как TCP / IP , vi и оболочку C, csh . Даже при таком перекрестном опылении и сотрудничестве возникли трудности с лицензированием. BSD содержал код AT & T, который не был открытым исходным кодом, но элементы BSD были.

Версия BSD без кода AT & T была разработана, чтобы обойти эти проблемы. Однако когда код AT & T был удален, около 20 процентов ядра отсутствовало. Уильям Джолиц написал недостающие части, и эта версия Unix была выпущена как 386BSD . Проект 386BSD застопорился, но в 1993 году его база исходного кода породила проекты NetBSD и FreeBSD .

Это дало нам один кусок головоломки: FreeBSD.

Следующий шаг

После того, как он был уволен из Apple, Inc. в 1985 году, Стив Джобс основал компанию NeXT, Inc. Чтобы предоставить операционную систему для своей линейки продуктов для рабочих станций, NeXT разработал NeXTSTEP . Он использовал BSD в качестве кодовой базы, но представил совершенно другое ядро.

NeXT использовал модифицированную версию микроядра Mach и 4.3BSD для формирования NeXTSTEP, который является второй частью этой головоломки. Mach был разработан в Carnegie Mellon для облегчения исследований в области распределенных и параллельных вычислений. Исследовательская группа использовала BSD в качестве операционной системы и заменила ядро, а не написала свою собственную операционную систему.

Читайте также:  Mplayer ��� linux mint

В 1996 году Apple Inc. приобрела NeXT, Inc. и тем самым приобрела NeXTSTEP. Apple начала разрабатывать операционную систему, которая в конечном итоге стала macOS с помощью Mac OS X. Он обновил ядро ​​Mach и заменил его более продвинутой версией, разработанной и использованной Open Software Foundation в операционной системе OSF / 1 . Apple также обновила компоненты BSD обновленными и улучшенными версиями из дистрибутива FreeBSD.

Apple вернула элементы ядра BSD обратно в ядро ​​Mach. Он также разработал гибридное ядро, которое объединило характеристики как монолитной, так и микроядерной архитектуры.

Также был включен комплект ввода / вывода , разработанный Apple на основе DriverXit NeXTSTEP. Это позволило добавлять драйверы в ядро ​​без необходимости каждый раз изменять его.

XNU — третья часть головоломки.

Стандарты POSIX и SUS

В 1996 году два органа по стандартизации — X / Open и Open Software Foundation — объединились, чтобы сформировать The Open Group .

Open Group является органом по сертификации торговой марки UNIX. Другими словами, перед тем, как вы сможете назвать ее UNIX, она должна проштамповать вашу операционную систему как соответствующую ее стандартам. UNIX во всех заглавных буквах является знаком соответствия.

Итак, категории следующие:

  • Unix: семейство операционных систем. Это семейство включает как операционные системы UNIX, так и Unix-подобные операционные системы.
  • Операционные системыUNIX : они были сертифицированы как соответствующие стандартам.
  • Unix-подобныеоперационные системы : они выглядят и работают как Unix, но не были сертифицированы как совместимые.

Конечно, вполне возможно, что некоторые операционные системы в категории «Unix-like» могут быть протестированы завтра и признаны совместимыми. Сейчас это, по сути, UNIX, но их можно отнести только к категории Unix, потому что у них еще нет штампов.

Есть два стандарта, которые сертифицируют UNIX: POSIX и Single UNIX Specification (SUS) . SUS — это расширенный набор POSIX. Итак, что-то может быть POSIX-совместимым, но это не делает его UNIX. Однако, если что-то совместимо с SUS, это UNIX.

POSIX и SUS образуют большие коллекции документов (около 3700 страниц). Они определяют работу и ожидаемое поведение каждого аспекта совместимой системы UNIX. Все, от асинхронного и синхронного ввода-вывода до интерфейса сценариев и программ уровня пользователя, каталогизируется и определяется.

Стандарты определяют интерфейсы приложений и поведение во время выполнения, но не определяют, как они реализованы .

Итак, MacOS UNIX?

Ответ должен быть да.

Вы можете проследить его происхождение через FreeBSD до BSD, а оттуда — до Unix, распространяемого Bell Labs, до увеличения платы за лицензию от AT & T.

Но это не имеет значения.

Если вы пишете операционную систему с нуля прямо сейчас, если она удовлетворяет требованиям SUS, она считается UNIX. И не важно, как вы это реализуете. Ядро XNU в основе macOS представляет собой гибридную архитектуру. Он объединяет код Apple с частями ядер Mach и BSD.

Но это тоже не важно. Важно то, что он соответствует требованиям стандартов, по которым он измеряется.

Часть BSD ядра XNU предоставляет интерфейсы прикладного программирования POSIX (такие как различные системные вызовы API и BSD). Сохранение этого элемента ядра BSD без изменений в XNU является ключом к получению сертификации в качестве UNIX. Это позволяет XNU говорить о совместимости и совместимости UNIX с остальной частью системы.

macOS — это совместимая с UNIX 03 операционная система, сертифицированная The Open Group. Это было с 2007 года, начиная с MAC OS X 10.5. Единственным исключением был Mac OS X 10.7 Lion, но соответствие было восстановлено с OS X 10.8 Mountain Lion.

Забавно, но так же, как GNU означает «GNU — не Unix», XNU — «X не Unix ».

Источник

Оцените статью