Новые книги

Книга «Ух ты! Сервис» написана Виталием Антощенко, руководителем «Объединенной Консалтинговой Группы». Это издание посвящено теории и практике оказания высококачественных услуг клиентского сервиса, необходимого для успешной и продуктивной работы любой организации. Книга состоит из семи глав, в каждой из которых описаны общие принципы стратегии построения идеальной клиентоориентированной компании. Автор объединил наиболее ценные факты и термины о практике оказания сервисных услуг, сформировав словарь ключевых терминов. Читателю предлагаются полезные практические советы (в том числе с учетом опыта зарубежных фирм) по развитию профессионализма, общению с клиентами, созданию крепкой и доверительной атмосферы в коллективе. Работа создавалась на основе положительного практического опыта автора, что делает ее ценным инструментом в работе любого профессионала в области продаж, сервисных и консалтинговых услуг.
Сегодня мы уже не можем себе представить жизнь без компьютеров и Интернета. Каждый день возникают все новые и новые гаджеты, которые во многом определяют наше существование — нашу работу, отдых, общение с друзьями. Меняются наши реакции, образ мышления. Известный американский психиатр, профессор Лос-Анджелесского университета и директор Научного центра по проблемам старения Гэри Смолл вместе со своим соавтором (и женой) Гиги Ворган утверждают: мы наблюдаем настоящий эволюционный скачок, и произошел он всего за пару-тройку десятилетий!

В этой непростой ситуации, говорят авторы, перед всем человечеством встает трудная задача: остаться людьми, не превратившись в придаток компьютера, и не разучиться сопереживать, общаться, любить…

3.7 УПРАЖНЕНИЯ

 

3.7 УПРАЖНЕНИЯ

1. Рассмотрим функцию хеширования применительно к Рисунку 3.3. Наилучшей функцией хеширования является та, которая единым образом распределяет блоки между хеш-очередями. Что Вы могли бы предложить в качестве оптимальной функции хеширования? Должна ли эта функция в своих расчетах использовать логический номер устройства?

2. В алгоритме getblk, если ядро удаляет буфер из списка свободных буферов, оно должно повысить приоритет прерывания работы процессора так, чтобы блокировать прерывания до проверки списка. Почему?

*3. В алгоритме getblk ядро должно повысить приоритет прерывания работы процессора так, чтобы блокировать прерывания до проверки занятости блока. (Это не показано в тексте.) Почему?

4. В алгоритме brelse ядро помещает буфер в "голову" списка свободных буферов, если содержимое буфера неверно. Если содержимое буфера неверно, должен ли буфер появиться в хеш-очереди?

5. Предположим, что ядро выполняет отложенную запись блока. Что произойдет, когда другой процесс выберет этот блок из его хеш-очереди? Из списка свободных буферов?

*6. Если несколько процессов оспаривают буфер, ядро гарантирует, что ни один из них не приостановится навсегда, но не гарантирует, что процесс не "зависнет" и дождется получения буфера. Переделайте алгоритм getblk так, чтобы процессу было в конечном итоге гарантировано получение буфера.

7. Переделайте алгоритмы getblk и brelse так, чтобы ядро следовало не схеме замещения буферов, к которым наиболее долго не было обращений, а схеме "первым пришел - первым вышел". Повторите то же самое со схемой замещения редко используемых буферов.

8. Опишите ситуацию в алгоритме bread, когда информация в буфере уже верна.

*9. Опишите различные ситуации, встречающиеся в алгоритме breada. Что произойдет в случае следующего выполнения алгоритма bread или breada, когда текущий блок прочитан с продвижением? В алгоритме breada, если первый или второй блок отсутствует в кеше, в дальнейшем при проверке правильности содержимого буфера предполагается, что блок мог быть в буферном пуле. Как это может быть?

10. Опишите алгоритм, запрашивающий и получающий любой свободный буфер из буферного пула. Сравните этот алгоритм с getblk.

11. В различных системных операциях, таких как umount и sync (глава 5), требуется, чтобы ядро перекачивало на диск содержимое всех буферов, которые помечены для "отложенной записи" в данной файловой системе. Опишите алгоритм, реализующий перекачку буферов. Что произойдет с очередностью расположения буферов в списке свободных буферов в результате этой операции? Как ядро может гарантировать, что ни один другой процесс не подберется к буферу с пометкой "отложенная запись" и не сможет переписать его содержимое в файловую систему, пока процесс перекачки приостановлен в ожидании завершения операции ввода-вывода?

12. Определим время реакции системы как среднее время выполнения системного вызова. Определим пропускную способность системы как количество процессов, которые система может выполнять в данный период времени. Объясните, как буферный кеш может способствовать повышению реакции системы. Способствует ли он с неизбежностью увеличению пропускной способности системы?

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