В отличие от большинства операционных систем, загрузочный образ .ifs — это нечто большее, чем ядро и стартовый код. Образ также может содержать как приложения и библиотеки, так и простой стартовый shell-скрипт. Читать далее «Что такое сценарий загрузки»
Управляющая программа
Управляющая программа будет «заводить» драйвер считывателя посылая ему сообщение с указанием послать импульс когда считыватель получит данные о карте. После этого управляющая программа может продолжать свою работу. Читать далее «Управляющая программа»
Маленький проект PhAB, использующий Macromedia Flash Print E-mail
Представляется вашему вниманию маленький архив проекта PhAB (меньше не бывает ни одной строки дописанного программного кода), который демонстрирует widget, «проигрывающий» файл формата Macromedia Flash (*.swf). Читать далее «Маленький проект PhAB, использующий Macromedia Flash Print E-mail»
Оптимизация
Как указано выше, шаг 5 может быть оптимизирован следующим образом:
Во-первых, в реальности нам не нужно тестировать строку на существование каждый раз. Единственный случай, когда строка может не существовать — это сразу после создания ключа, то есть если мы не создали ключ только что, мы знаем, что строка существует. Читать далее «Оптимизация»
Сценарий Начальной загрузки
Типы начальной загрузки центрального процессора бывают оформлены различными способами. Таким образом, для них существуют различные программы запуска. Читать далее «Сценарий Начальной загрузки»
Условия соглашения
Для нормальной работы приведенного исходного кода нужно соблюдать несколько условий, нарушение которых приведет скорее всего к тому, что код не будет работать как задумывалось. Читать далее «Условия соглашения»
Ожидание устройства или файла
Здесь и далее для краткости я буду приводить фрагменты программ, в которых не выполняются проверки на ошибки. Часто для того, чтобы начать работу с устройством или файлом, надо дождаться пока это устройство или файл будут инициализированы. Читать далее «Ожидание устройства или файла»
Запуск от имени другого пользователя
В принципе, в этом нет ничего сложного или нового. Просто получаем идентификатор пользователя и его группы с помощью стандартных для UNIX вызовов getpwnam(), setuid(), setgid() и initgroups(). Последний вызов в этом примере не используется. Для выполнения этого примера нужны права администратора. Читать далее «Запуск от имени другого пользователя»
Rwlocks
С помощью блокирующего механизма, rwlocks, сделать это несложно. В отличие от мутексов, rwlock может иметь два состояния блокировки: чтение и запись. Читать далее «Rwlocks»
Запуск на удаленном узле QNX сети
Запуск на удаленном узле — это одна из ключевых возможностей утилиты on. Для этого используется тот же вызов spawn(), что и в предыдущих примерах. В структуре inheritance предусмотрено специальное поле для дескриптора удаленного узла — nd. Читать далее «Запуск на удаленном узле QNX сети»