2015-12-26 3 views
1

Я изучаю компьютерную науку в университете. Они используют Ubuntu учить о Unix архитектуры, поэтому они говорят о процессов (отец/сын), вилки, трубы, нитей, планирования и так далее. Я хочу купить новый ноутбук, и я думал о Mac OS X. Мои вопросы касательно этого поля:Архитектура Mac OS X и командная строка

  • Что такое архитектура Mac OS X?
  • Вы можете использовать команды Unix (fork, pipe, ...)?
  • Каковы различия между ОС Linux и Mac OS X, относящимися к этому полю?
  • Могу ли я писать на языке C в Mac OS X напрямую с помощью командной строки и команды gcc?

ответ

3

Что такое архитектура Mac OS X?

Mac OS X использует Darwin, модифицированный Mach гибридное ядро ​​с FreeBSD-подобный интерфейс системного вызова. Современные компьютеры Apple используют процессоры x86, но более ранние версии OS X также работают на платформах PowerPC, таких как более ранние Power Mac.

Вы можете использовать команды Unix (fork, pipe, ...)?

Mac OS X сертифицирован IEEE 1003.1 (POSIX). Вы можете использовать обе функции библиотеки POSIX как fork, pipe, open, read и write и POSIX утилит командной строки, как ls, sh, cd, mkdir и ed.

POSIX является отраслевым стандартом для операционных систем, который содержит большие части UNIX API и реализуется всеми основными поставщиками операционной системы, включая Microsoft (они целенаправленно испортили свою реализацию POSIX, хотя и бесполезны).

Каковы различия между ОС Linux и Mac OS X, относящимися к этому полю?

Как Linux, так и Mac OS X являются UNIX-подобными операционными системами. Оба имеют значительные отличия от «правильной» UNIX, такой как Solaris или OpenBSD, но все же они по-прежнему ощущаются довольно схожими при программировании для них программного обеспечения, отличного от GUI, система графического интерфейса полностью отличается от двух (в Linux обычно используется X-оконная система на OS X вы использовали бы Cocoa, хотя X также доступен).

Могу ли я писать на языке C в Mac OS X непосредственно с помощью командной строки и команды gcc?

Да. Компилятор по умолчанию на OS X равен clang, а gcc также доступен, если я правильно помню.На всех платформах POSIX вы всегда можете переносить с помощью C команды с помощью команд cc, c89 или c99.

Смежные вопросы