2012-04-08 5 views
7

Как программы взаимодействуют с ядром ядра/ядра monocity/exo?Как взаимодействуют программы - ядро ​​ядра ядра ядра ядра ядра

enter image description here

Я прочитал много книг, которые показывают, как на картинке, что монолитные ядра взаимодействуют с программой с помощью системного вызова таблицы/файловой системы слоя.

Но как микро ядра и ядро ​​exo взаимодействуют с программой?

делает базу микроядерного ядра непосредственно с программой, а затем микроядро взаимодействует с серверами?

Update: Я нашел это ответил довольно красиво

клиент-сервер или Microkernel Операционная система Появление новых концепций в области дизайна операционной системы, микроядра, направлена ​​на миграцию traditionalservices операционной системы из монолитного ядра в процесс пользовательского уровня. Идея состоит в том, чтобы разделить операционную систему на несколько процессов, каждый из которых реализует единый набор сервисов - например, серверы ввода-вывода, сервер памяти, сервер процессов, систему интерфейса потоков. Каждый сервер запускает режим inuser, предоставляет услуги запрашиваемому клиенту. Клиент, который может быть либо другим компонентом операционной системы, либо прикладной программой, запрашивает службу, отправляя сообщение на сервер. Ядро ANOS (или микроядро), работающее в режиме ядра, доставляет сообщение на соответствующий сервер; сервер выполняет операцию; и микроядро доставляет результаты клиенту в другом сообщении

+0

Разве эти книги не упоминают интерфейс системного вызова? В некотором смысле, на системах * nix, которые являются ** единственным способом, который большинство процессов связывается с ядром. –

+0

@AdamMihalcin, так что вы говорите, что программа взаимодействует с базовым ядром через интерфейс системного вызова, а не через серверы? – zeitue

+0

Также здесь, в этих документах https://docs.google.com/viewer?a=v&q=cache:P8U0Y9-4UPkJ:community.qnx.com/sf/sfmain/do/downloadAttachment/projects.core_os/wiki/Oct27_Microkernel_Innovation% 3Fid% 3Datch1222 + & гектолитров = еп & гЛ = нам & PID = бл & srcid = ADGEESgXFLBn6HJD6f9RndRAJJikgttpH7VoD8MW-YVTg7X2AsucCnhr6m2Jj9ivbSS7DjXnqll7Z8WDyvd2Gb7cBGMWCkjb3sLcqSJinAemmdSHuA0nOJPkXw1KGO05uSJPzpSXAgXn и сиг = AHIEtbSwaYInyP7NR98kM2hMJw5tsX5OrQ это показывает, есть автобус сообщение, что все, что общаться с помощью. но я до сих пор не знаю, где находится таблица системных вызовов на любых этих микроядрах. – zeitue

ответ

2

Системные вызовы являются основным способом связи как с монолитными, так и с микроядрами. Использование системных вызовов. Интерфейс ядра может предоставлять многочисленные методы IPC (такие как сигналы, разделяемая память, передача сообщений). Из-за природы микроячейков IPC обычно является самой важной частью такого ядра и используется для того, чтобы программы могли взаимодействовать с серверами.

Другими словами, существуют системные вызовы, которые позволяют программам делать запросы к ядру. Ядро предоставляет некоторые методы IPC, которые позволяют программам взаимодействовать друг с другом, включая серверы в операционных системах на основе микроядра.

+0

поэтому программа общается с ядром, как и программа -> library -> servers -> kernel then <-, да? – zeitue

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

  • Нет связанных вопросов^_^