Найти тему
Борис Державец

Разница между GNU и Unix

Большинство из нас привыкли к операционным системам Windows, и хорошо, что многим по-крайней мере известно о других, таких как Unix,Linux,QNX и т.д. Windows не решает задач, специчных для ОС Реального Времени (RTOS) и это немедленно делает Виндовс бесполезной для многих промышленных процессов, впрочем также как и ванильное ядро Linux без расширения "-rt". Это не означает, что единственной операционной системой, которая использовалась во всем мире, является Windows, но и остальные также занимают большую долю в использовании. Какую бы ОС мы ни использовали, конечная функциональность одна и та же: использование компьютеров для облегчения наших задач. Прежде чем перейти к различиям между GNU и Unix, давайте также изучим основные концепции, связанные с любой операционной системой, с точки зрения непрофессионала.
Что такое GNU ?
Термин GNU означает «GNU, а не Unix». Большинство людей думают, что GNU Linux такая же, как и Unix, но это не так. GNU Linux - это проект с открытым исходным кодом, созданный на основе Unix-подобной архитектуры.
Хотя он произошел от Unix, он никоим образом не является адаптацией исходного кода предшественника. Кроме того, GNU Linux имеет открытый исходный код, и вы можете использовать исходный код бесплатно. Надо также упомянуть о лицензировании этого GNU и проекта GNU, лицензируемого по GPL - General Public License. Вы можете задаться вопросом, почему GNU не используется как таковой и всегда поставляется с комбинацией Linux ? Чтобы ответить на вопрос, надо сказать, что GNU - это всего лишь исходный код или программное обеспечение, разработанное под лицензией GPL. Таким образом, это открытый исходный код, и каждый может использовать его в соответствии со своими потребностями. Но его нельзя использовать как таковой, поскольку для его интерпретации на компьютере требуется ОС. Для этой цели его комбинируют с Unix-подобным ядром с открытым исходным кодом - Linux. Эти две комбинации обычно называются GNU/Linux или просто Linux или реже GNU. Архитектура GNU Linux:
Давайте теперь посмотрим на различные компоненты архитектуры GNU Linux.

GNU/Linux internal architecture
GNU/Linux internal architecture

Аппаратный уровень является самым внутренним и включает в себя периферийные устройства, такие как ЦП, ОЗУ, жесткий диск и т. д. Следующим компонентом, напрямую взаимодействующим с оборудованием, является ядро. Он образует основной компонент любой операционной системы и отвечает за доставку услуг на верхние уровни из нижних уровней. Следующий - Shell, отвечающий за интерпретацию команд пользователя с точки зрения функций ядра. Имея Shell (bash -Bourne Shell again), нас не смущает сложность, связанная с ядром. Представьте себе ситуацию, когда вам нужно давать команды в двоичных цифрах, ведь компьютер понимает только это! Это беспокойно, да? Именно здесь Shell позволяет нам давать команды на естественном языке, а не в понятной машине форме. Самый внешний уровень — это набор служебных программ, которые мы также называем «Приложениями». Эти программы предназначены для выполнения определенных задач, таких как печать, компиляция и т. д. Можно также сказать, что эти утилиты являются непосредственными компонентами, через которые мы взаимодействуем с компьютером и, в свою очередь, взаимодействие идет дальше на другие уровни.

P.S. Bash (Bourne Again Shell) — это бесплатная расширенная версия оболочки Bourne, распространяемая с операционными системами Linux. Bash похож на оригинал, но в него добавлены такие функции, как редактирование из командной строки.