Набор компонентов, установив которые можно работать -- ос. Лнукс -- не только ядро, но и усилия сообщества(дистрибутив), у которого отличительные черты -- наличие большого количества сущностей в репозитории и хранилище. Эти свойства -- следствия свободного лицензирования.

Выполнение действий из ком строки, модификация системы -- модификация текстовых файлов и выполнение команд из ком строки. Запуск сценариев, старт системы -- тоже запуск сценариев. Ещё поговорили про фс.

Осталось 2 темы, по каждой не на целую лекцию. 1. инварианты абстрактного и прикладного уровня. 2. выбор дистрибутива

Каталог /dev

монтируется как виртуальная фс

Udev файлы выглядят примерно так -- что делать, если появилось устройство такого вот класса. (создать файл в дев, выполнить какой-то скрипт).

Вторая часть рассказа о прикладных особенностях линукс.

DBUS

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

Типичный пример -- гном и кде, где особенно велика потребность в типизированной шине данных.

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

Есть несколько шин -- рутовая(изменение прав доступа, монтирование) Несколько пользователей должны работать одновременно спокойно, поэтому на каждый сеанс заводится собственная пользоватедьская шина.

Сначала заводятся сервисы -- те, кто будет обрабатывать. Именуются по доменному принципу.

Эти сервисы регистрируют объекты -- штуки, которые его будут вызывать (активности). Объекты указываются путем в фс.

Клиентская часть -- те, кто посылают сообщения, а не принимают. Пресловутый удев -- клиентская часть.

Объекты это то, чем они обмениваются.

Принцип в основе дбаса -- слишком общая система неудобно, давайте все описывать и публиковать.

Объекты это те самые обработчики, а у них есть интерфейсы.

Есть адресные сообщения, с меткой к какому объекту обращаетесь.

Ещё есть сигналы -- тип сообщения один ко многим. На шину помещаются данные опр типа, а потом все кто в них заинтересован их читают.

Есть ещё понятие прокси, которое позволяет делать промежуточную обработку.

Рассказ про дбас, чтобы показать, что самозарождения жизни не бывает, и что если при вставлении флешки что-то запучтилось, то это что-то жестко прописано.

qdbus -- query dbus.

dbus sender

Кому принадлежит устройство, если пользователей несколько? Года три назад в процессе авторизации писался модуль обеспечивающий то, что устройства в дев принадлежат последнему залогинившемуся. Появились поделки с собственным мозгом, которые старались решить, кому какие права.

Был разработан отдельный механизм Pol Kit. У нас есть дбас. У нас есть программа (механизм), которая хочет решить -- данному пользователю давать этот доступ или нет.

Первый начал клиент. Клиент говорит -- хочу диск. Механизм говорит -- сейчас спрошу у агента. Агент говорит -- введите пароль, ключ, все равно что.

Дбас -- шина в форме шара, через которую они все обшаются.

Всё это общение описывается в специальных политиках -- у кого просить пароль, у кого что.

Задача о предоставлении доступа начинает решаться динамически, после авторизации, а не быть жестко защитой.

После внедрения полкита стала возможна более менее нормальная равноправная работа нескольких пользователей на одном железе.

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

Три года назад это все не работало как надо.

Это подспудно работает, но пользователь его видит слабо. Результатами работы полкита пользователь пользуется постоянно.

Управляется это все (и полкит и удев) большим сводом правил.

Несмотря на прикладные свойства дбаса, он все больще завоевывает позиции в ос и так, наверно, будет продолжаться.

Ещё про одну вещь, коротко. В области сети.

Лектор намеренно опускает информацию целого курса "тцп ип в линукс". Что такое сеть с тз незнающего человека? Запускаешь броузер, там группы компьютеров, компьютеры, ресурсы, в них можно тыкать.

Представление не о семейства протоколов, а ровно об одном(двух) протоколах, которые позволяют броузить ресурсы.

То есть, для того чтобы идея о браузинге ресурсов работала необходима на всех участниках поддержка некоторого протокола. цивс? AVAHI. авахи - инструмент публикации и просмотра информации о сервисах.

Авахи рассылает сообщения, какие сервисы есть на компьютере. Другие ждут и парсят эти сообщения. Сервисы не специфицированы авахи и могут быть кем угодно.

Само наличие работающего авахи не приведет к реакции на нажатия кнопочки в браузере. Для этого нужно указать какие обработчики соотв какому сервису, и это внутрь авахи не зашито совсем.

Пока что он не дает возможности организовывать самонастраивающиеся системы, как это сделано в макоси. Хотя с макосовским бонжуром-зероконфом он совместим.

То есть, одно дело браузер и публикатор, а другое дело -- как этим сервисом воспользоваться

LecturesCMC/GnuLinuxSoftware2011/11 (last edited 2011-12-12 19:08:21 by Allena)