Новые книги

Каждому человеку приятно заполучить что-нибудь «забесплатно». Сладкое слово «халява» ласкает слух, тешит иллюзиями, питает надеждами. Конечно, все мы знаем известную поговорку про бесплатный сыр в мышеловке, но это ничего не меняет: многочисленная армия любителей бесплатного в любом случае намного превышает количество тех, кто согласен приобрести то же самое за деньги. Собственно, в этом ничего плохого нет – так уж устроена человеческая природа: взять побольше, а отдать – поменьше.

Вот об этом и будет рассказано в данной книге. Прочитав ее, вы сможете бесплатно изучить иностранный язык, скачать книгу или реферат, просмотреть телепередачу (причем в удобное для себя время), прослушать музыку, узнать новости, создавать и редактировать документы, работать с графикой, искать любые данные и файлы, слушать радио, пользоваться торрент-трекерами и торрент-клиентами, а также много чего еще, подогреваемого сладким словом «халява».
Время – это основной ресурс каждого человека, и от того, как мы относимся к каждому часу и минуте своей жизни, во многом зависит наша судьба. Тайм-менеджмент, или наука управления временем, предлагает всевозможные техники и приемы, позволяющие беречь драгоценное время, распределять его более рационально и благодаря этому быстрее достигать своих целей. В книге описаны способы эффективного планирования времени на личном, командном и корпоративном уровнях, а также методы и правила достижения личной эффективности путем самомотивации и расстановки приоритетов. Вы сможете изучить понятия, суть, задачи техник тайм-менеджмента, чтобы затем применять их на практике.

5.5 УКАЗАНИЕ МЕСТА В ФАЙЛЕ, ГДЕ БУДЕТ ВЫПОЛНЯТЬСЯ ВВОД-ВЫВОД - LSEEК

 

5.5 УКАЗАНИЕ МЕСТА В ФАЙЛЕ, ГДЕ БУДЕТ ВЫПОЛНЯТЬСЯ ВВОД-ВЫВОД - LSEEК

Обычное использование системных функций read и write обеспечивает последовательный доступ к файлу, однако процессы могут использовать вызов системной функции lseek для указания места в файле, где будет производиться ввод-вывод, и осуществления произвольного доступа к файлу. Синтаксис вызова системной функции:

   position = lseek(fd,offset,reference);

где fd - дескриптор файла, идентифицирующий файл, offset - смещение в байтах, а reference указывает, является ли значение offset смещением от начала файла, смещением от текущей позиции ввода-вывода или смещением от конца файла. Возвращаемое значение, position, является смещением в байтах до места, где будет начинаться следующая операция чтения или записи. Например, в программе, приведенной на Рисунке 5.10, процесс открывает файл, считывает байт, а затем вызывает функцию lseek, чтобы заменить значение поля смещения в таблице файлов величиной, равной 1023 (с переменной reference, имеющей значение 1), и выполняет цикл. Таким образом, программа считывает каждый 1024-й байт файла. Если reference имеет значение 0, ядро осуществляет поиск от начала файла, а если 2, ядро ведет поиск от конца файла. Функция lseek ничего не должна делать, кроме операции поиска, которая позиционирует головку чтения-записи на указанный дисковый сектор. Для того, чтобы выполнить функцию lseek, ядро просто выбирает значение смещения из таблицы файлов; в последующих вызовах функций read и write смещение из таблицы файлов используется в качестве начального смещения.

Предыдущая глава || Оглавление || Следующая глава