- •Введение
- •Что такое файл?
- •Метки даты и времени
- •Доступ к файлам
- •Регулярные файлы и каталоги Регулярные файлы
- •Каталоги
- •Где хранятся экстенты
- •Увеличение файлов
- •Связи и индексные дескрипторы (inodes)
- •Операции с каталогами
- •Чтение элементов каталога
- •Экстенты
- •Удаление связей
- •Связи каталога
- •Символические связи
- •Программные каналы (pipes) и fifo Программные каналы (pipes)
- •Производительность Менеджера файловой системы
- •Лифтовый поиск
- •Многопотоковая обработка
- •Клиент-управляемый приоритет
- •Временные файлы
- •Псевдодиски
- •Надежность файловой системы
- •Восстановление файловой системы
- •Работа с дисками
- •Диски и дисковые подсистемы
- •Разделы ос
- •Определение блок-ориентированный файлов
- •Монтирование файловой системы
- •Битовая карта
- •Корневой каталог
- •Менеджер файловой системы dos
- •Файловая система cd-rom
- •Файловая система флэш
- •Ограничения
- •Восстановление свободного пространства
- •Сжатие и распаковка
- •Доступ к файлам
- •Монтирование
- •Доступ на низком уровне
- •Файловая система nfs
- •Файловая система smb
- •Менеджер устройств
- •Введение
- •Обслуживание устройств
- •Режим редактируемого ввода
- •Режим необрабатываемого ввода
- •Драйверы устройств
- •Управление устройствами
- •Консоль qnx
- •Функции, специфичные для консоли
- •Последовательные устройства
- •Параллельные устройства
- •Производительность подсистемы устройств
- •Менеджер сети
- •Введение
- •Обязанности Менеджера сети
- •Независимый модуль
- •Интерфейс Микроядро/Менеджер сети
- •Посылка сообщения на удаленный узел
- •Получение сообщения с удаленного узла
- •Сетевые драйверы
- •Идентификаторы узла и сети
- •Физический id узла
- •Логический id узла
- •Логический id сети
- •Выбор сети
- •Распределение нагрузки
- •Отказоустойчивость
- •Мосты между сетями qnx
- •Сеть tcp/ip
- •Менеджер tcp/ip
- •Сокет api
- •Возможность взаимодействия сетей
- •Оконная система Photon microGui
- •Графическое микроядро
- •Пространство событий Photon
- •Регионы
- •События
- •Графические драйверы
- •Несколько графических драйверов
- •Цветовая модель
- •Масштабируемые шрифты
- •Наборы шрифтов Основной латинский набор
- •Расширенный латинский набор
- •Поддерживаемые языки
- •Дополнительные языковые пакеты
- •Многоязычная поддержка Unicode
- •Поддержка анимации
- •Поддержка печати
- •Менеджер окон Photon
- •Библиотека виджетов
- •Виджет Панель (PtPane)
- •Виджет Группа (PtGroup)
- •Виджет Область прокрутки (PtScrollArea)
- •Виджет Дерево (PtTree)
- •Виджеты Терминал (PtTty, PtTerminal)
- •Виджет Делитель (PtDivider)
Виджет Панель (PtPane)
Виджеты Панель являются простыми виджетами-контейнерами, которые используются для размещения других виджетов. Хотя он и является родительским виджетом, панель никаким образом не управляет дочерними виджетами. Панели очень удобны для построения форм, обычно встречающихся в окнах диалога.
Виджет Группа (PtGroup)
Виджет Группа - это очень мощный виджет, который управляет геометрией всех своих дочерних виджетов. Он может выравнивать виджеты по горизонтали, по вертикали или в виде матрицы. Группа может быть привязана к стороне любого другого контейнера (например, окна) таким образом, чтобы группа автоматически изменяла размер при изменении размера окна. Виджет Группа также предусматривает атрибуты, которые позволяют задать необходимость растягивания дочерних виджетов при увеличении размеров группы.
Виджет Область прокрутки (PtScrollArea)
Область прокрутки обеспечивает "окно" просмотра содержимого контейнера потенциально большего размера. Вы можете поместить любое количество виджетов внутрь области прокрутки, и она автоматически создаст полосы прокрутки в случае, если виджеты выходят за границы видимой области. Области прокрутки могут быть использованы для создания окна просмотра текстовых файлов, текстовых редакторов, просмотра списков и так далее.
Для быстрой прокрутки дочерних виджетов область прокрутки использует аппаратный блиттер (при условии, что он поддерживается графическим драйвером).
Виджет Фон (PtBkgd)
Данный виджет позволяет создавать любой фон, начиная от простого перехода цветов до симметрично расположенных текстур. Практически любое требование к фону может быть удовлетворено этим виджетом.
Сложные виджеты
Виджеты Меню (PtMenu, PtMenuBar, PtMenuButton)
Photon предусматривает все необходимое для организации меню. Виджет PtMenuBar упрощает создание стандартной линейки меню. Виджет PtMenu обрабатывает отображение всплывающего меню, нажатие-перемещение-отпускание (мыши), указание и нажатие, ввод с клавиатуры и выбор пунктов меню. Виджет PtMenuButton используется для создания отдельных пунктов меню.
Виджет Список (PtList)
Данный виджет управляет списком элементов. Он предусматривает много различных режимов выбора, включая единичный выбор, множественный выбор и выбор диапазона. Виджет Список также поддерживает многостолбцовые списки при использовании виджета PtDivider.
Виджет Разворачиваемый список (PtComboBox)
Разворачиваемый список совмещает виджет PtText (для ввода текста) с кнопкой для отображения виджета PtList. При выборе пользователем элемента списка, виджет Текст автоматически обновляется в соответствии с текущим выбором. Разворачиваемый список очень полезен в для отображения списка в ограниченном пространстве. Диалоги и контейнеры занимают значительно меньше места на экране, что особенно важно для встроенных приложений.
Виджет Дерево (PtTree)
Виджет Дерево напоминает виджет Список - они имеют общих предшественников. Основное отличие состоит в том, что виджет Дерево показывает элементы в виде иерархии. Элементы, называемые ветвями, могут быть развернуты или сжаты; может быть создано любое количество ветвей. Для каждой ветви можно определить свое уникальное графическое изображение.
В число приложений Photon, использующих деревья, входят: Файл-Менеджер (показ каталога), PhAB (иерархия виджетов), vsin (список процессов) и многие другие.
