» » » Марк Митчелл - Программирование для Linux. Профессиональный подход


Авторские права

Марк Митчелл - Программирование для Linux. Профессиональный подход

Здесь можно скачать бесплатно "Марк Митчелл - Программирование для Linux. Профессиональный подход" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование, издательство Вильямс, год 2002. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Марк Митчелл - Программирование для Linux. Профессиональный подход
Рейтинг:
Название:
Программирование для Linux. Профессиональный подход
Издательство:
Вильямс
Год:
2002
ISBN:
5-8459-0243-6
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

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

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Программирование для Linux. Профессиональный подход"

Описание и краткое содержание "Программирование для Linux. Профессиональный подход" читать бесплатно онлайн.



Данная книга в основном посвящена программированию в среде GNU/Linux. Авторы применяют обучающий подход, последовательно излагая самые важные концепции и методики использования расширенных возможностей системы GNU/Linux в прикладных программах. Читатели научатся писать программы, к интерфейсу которых привыкли пользователи Linux; освоят такие технологии, как многозадачность, многопотоковое программирование, межзадачное взаимодействие и взаимодействие с аппаратными устройствами; смогут улучшить свои программы, сделав их быстрее, надежнее и безопаснее; поймут особенности системы GNU/Linux, ее ограничения, дополнительные возможности и специфические соглашения.

Книга предназначена для программистов, уже знакомых с языком С и имеющих базовый опыт работы в GNU/Linux.






int fd = open("/dev/lp0", O_WRONLY);

write(fd, buffer, bufffer_length);

close(fd);

6.4. Аппаратные устройства

В табл. 6.1 перечислены распространенные блочные устройства. "Родственные" устройства именуются схожим образом (например, второй раздел первого SCSI-диска называется /dev/sda2). Эта информация будет полезна при анализе файла /proc/mounts на предмет того, какие файловые системы смонтированы в настоящий момент (об этом рассказывается в разделе 7.5, "Дисководы, точки монтирования и файловые системы").


Таблица 6.1. Распространенные блочные устройства

Устройство Имя Старший номер Младший номер Первый дисковод гибких дисков /dev/fd0 2 0 Второй дисковод гибких дисков /dev/fd1 2 1 Основной IDE-контроллер, главное устройство /dev/hda 3 0 Основной IDE-контроллер, главное устройство, первый раздел /dev/hda1 3 1 Основной IDE-контроллер, подчиненное устройство /dev/hdb 3 64 Основной IDE-контроллер, подчиненное устройство, первый раздел /dev/hdb1 3 65 Дополнительный IDE-контроллер, главное устройство /dev/hdc 22 0 Дополнительный IDE-контроллер, подчиненное устройство /dev/hdd 22 64 Первый SCSI-диск /dev/sda 8 0 Первый SCSI-диск, первый раздел /dev/sda1 8 1 Второй SCSI диск /dev/sdb 8 16 Второй SCSI-диск, первый раздел /dev/sdb1 8 17 Первый SCSI-дисковод CD-ROM /dev/scd0 11 0 Второй SCSI-дисковод CD-ROM /dev/scd1 11 1

В табл. 6.2 перечислены распространенные символьные устройства.


Таблица 6.2. Распространенные символьные устройства

Устройство Имя Старший номер Младший номер Параллельный порт 0 /dev/lp0 или /dev/par0 6 0 Параллельный порт 1 /dev/lp1 или /dev/par1 6 1 Первый последовательный порт /dev/ttyS0 4 64 Второй последовательный порт /dev/ttyS1 4 65 IDE-накопитель на магнитной ленте /dev/ht0 37 0 Первый SCSI-накопитель на магнитной ленте /dev/st0 9 0 Второй SCSI-накопитель на магнитной ленте /dev/st1 9 1 Системная консоль /dev/console 5 1 Первый виртуальный терминал /dev/tty1 4 1 Второй виртуальный терминал /dev/tty2 4 2 Текущее терминальное устройство процесса /dev/tty 5 0 Звуковая плата /dev/audio 14 4

К некоторым аппаратным компонентам можно получить доступ сразу через несколько символьных устройств. Чаще всего этим устройствам соответствует разная семантика доступа. Например, если в системе есть ленточное IDE-устройство /dev/ht0, то Linux автоматически перематывает ленту в дисководе, когда программа закрывает дескриптор файла устройства. С помощью ссылки /dev/nht0 можно обратиться к тому же ленточному накопителю, но режим автоматической перемотки в нем будет отключен. Иногда в системе есть ссылки наподобие /dev/cua0. Это старые интерфейсы последовательных портов, таких как /dev/ttyS0.

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

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

■ Программа резервного копирования записывает данные непосредственно на ленту. Такая программа может реализовывать свои собственные алгоритмы сжатия и проверки ошибок.

■ Программа обращается к первому виртуальному терминалу,[19] записывая данные в устройство /dev/tty1.

Терминальным окнам, работающим в графической среде, и окнам сеансов удаленной регистрации назначаются не виртуальные терминалы, а псевдотерминалы (о них говорится в разделе 6.6, "Псевдотерминалы")

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

Например, программа может попросить пользователя ввести пароль. Из соображений безопасности требуется проигнорировать перенаправление стандартных потоков ввода и вывода и прочитать пароль с терминала независимо от того, как пользователь вызвал программу. Для этого можно открыть файл /dev/tty, всегда соответствующий текущему терминальному устройству процесса. Запишите в данный файл строку приглашения, а затем прочитайте пароль. Это не позволит пользователю передать программе пароль из файла с помощью следующего синтаксиса:

% secure_program < my-password.txt

■ Программа воспроизводит аудиофайл через звуковую плату, посылая аудиоданные в устройство /dev/audio. Эти данные должны быть представлены в формате Sun (такие файлы обычно имеют расширение .au).

Например, во многие дистрибутивы Linux входит файл /usr/share/sndconfig/sample.au. Попробуйте воспроизвести его с помощью такой команды:

% cat /usr/share/sndconfig/sample.au > /dev/audio

Те, кто хотят включить звук в свои программы, должны использовать специальные сервисы и библиотеки функций работы со звуком, имеющиеся в Linux. В графической среде Gnome есть демон EsounD (доступен по адресу http://www.tux.org/~riclude/EsounD.html), в KDE — программа aRts (http://space.twc.de/~stefan/kde/arts-mcop-doc/). Благодаря этим средствам приложения, обращающиеся к звуковой плате, лучше взаимодействуют друг с другом.

6.5. Специальные устройства

В Linux есть также ряд специальных символьных устройств, которым не соответствуют никакие аппаратные компоненты. Старший номер всех таких устройств равен 1. Это означает, что обращение к устройству переадресуется ядру Linux.

6.5.1. /dev/null

Устройство /dev/null служит двум целям.

■ Linux удаляет любые данные, направляемые в устройство /dev/null. В тех случаях, когда выводные данные программы не нужны, в качестве выходного файла назначают устройство /dev/null, например:


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Программирование для Linux. Профессиональный подход"

Книги похожие на "Программирование для Linux. Профессиональный подход" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Марк Митчелл

Марк Митчелл - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Марк Митчелл - Программирование для Linux. Профессиональный подход"

Отзывы читателей о книге "Программирование для Linux. Профессиональный подход", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.