Слово о невидимом. Софте.
© Copyright 2006 - 2010 Грибов Игорь, e-mail: gribov@depni.sinp.msu.ru http://vserv.sinp.msu.ru/invisiblebook/PMC_main.html
Изменения в версиях книги. Авторское право. Вступительное слово. Малые замечания. Критические разделяемые ресурсы. Процесс пошел. Сигнало-безопасная память. Асинхронный клиент. Регистрация событий, ошибок и статусов. Динамические базы данных. Достоинства ложного положения. Обозначение основных типов данных.
Полная версия книги задается как версия.подверсия.выпуск.
Номер версии книги увеличивается при появлении новых разделов в виде отдельных документов (файлов). Подверсия увеличивается, когда в существующие документы добавляются новые главы. А при внесении любых правок в имеющиеся главы (изменение подверсии или выпуска разделов) увеличивается номер выпуска книги.
Версия 1.1.0. Завершено написание раздела «Асинхронный клиент».
Версия 1.2.0. Завершено написание раздела «Регистрация событий, ошибок и статусов».
Версия 1.3.0. Завершено написание раздела «Динамические базы данных».
Версия 2.0.0. Добавлен новый раздел «Достоинства ложного положения».
Версия 2.1.0. Добавлены новые главы в разделы «Критические разделяемые ресурсы» и «Сигнало-безопасная память».
Авторское право на данную книгу устанавливается разделом VII «Права на результат интеллектуальной деятельности и средства индивидуализации» части четвертой Гражданского Кодекса Российской Федерации.
При использовании материалов книги целесообразно руководствоваться двумя основными правилами:
Возможно безвозмездное не ограниченное распространение и использование всех материалов данной книги в учебных, научных и исследовательских целях. При этом обязательна ссылка на источник данного материала и указание владельца авторского права.
Полное либо частичное использование любых материалов книги в коммерческих целях требует заключения дополнительного соглашения с владельцем авторского права.
Эта книга явилась плодом четверть векового накопления программных технологий и логических алгоритмов, используемых в разработке систем управления, встроенных приложений, микроконтроллеров, компактных операционных систем - словом, скрываемых от пользователей программ. Автор сохраняет надежду, что опыт - уже накопленный и приобретаемый вновь - поможет сохранить преемственность поколений в столь деликатной сфере, как разработка системных и управляющих программ, где требуется высшее напряжение мысли, необходима особая способность решения логических задач, важно понимание ответственности за плоды своего труда.
Все примеры алгоритмов и программ используют стандартный язык С1. Автор не дает никаких гарантий отсутствия ошибок, опечаток и оплошностей в примерах программ.
Книга подготовлена с использованием пакета OpenOffice.
Характеристика реального времени.
Счетчики.
Кольцевой буфер (FIFO).
Полное чтение данных.
Против микро-оптимизации.
Критические ресурсы. Семафоры. Пример использования критических ресурсов. Не атомарные семафоры. Пример с не атомарными семафорами.
Организация сигнало-безопасной памяти.
Программное решение.
Вариант с не атомарными семафорами и многопоточностью.
О процессах с любовью. Другим путем. Программное решение.
Задачи клиента.
Программное решение.
Свойства регистратора. Программная реализация регистратора.
Базы данных для встроенных приложений. Программная реализация неупорядоченного списка. Упорядоченный массив с первичным ключем. Упорядоченный массив с внешними ключами.
Управление объектом. Алгоритм regula falsi. Программа.
int8 Целое 8 бит со знаком. unsigned8 Беззнаковое целое 8 бит. int16 Целое 16 бит со знаком. unsigned16 Беззнаковое целое 16 бит. int32 Целое 32 бита со знаком. unsigned32 Беззнаковое целое 32 бита. int64 Целое 64 бита со знаком. unsigned64 Беззнаковое целое 64 бита. real32 32-х разрядное с плавающей точкой. real64 64-х разрядное с плавающей точкой.
1Б.Керниган, Д.Ритчи «Язык программирования Си» М., Финансы и статистика, 1992.