Новые книги

В книге изложены методы восстановления данных с различных носителей информации – жестких дисков, массивов RAID, CD, DVD, карт флэш-памяти, карт фотоаппаратов и мобильных телефонов. Ремонт поврежденного оборудования рассматривается в издании только как один из аспектов всего процесса извлечения данных. Основная тема – извлечение данных, поврежденных из-за физических или логических нарушений в работе компьютерной системы либо неверных действий пользователя. В книге рассматривается восстановление случайно удаленных файлов, извлечение ценной информации с поломанных жестких дисков; описываются программы и методика восстановления данных с поврежденных массивов RAID, что критически важно для работы корпоративных компьютерных систем.

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

2.6 УПРАЖНЕНИЯ

 

2.6 УПРАЖНЕНИЯ

1. Рассмотрим следующий набор команд:

    grep main a.c b.c c.c > grepout &
     wc -1 < grepout &
     rm grepout &

Амперсанд (символ "&") в конце каждой командной строки говорит командному процессору shell о том, что команду следует выполнить на фоне, при этом shell может выполнять все командные строки параллельно. Почему это не равноценно следующей командной строке?

    grep main a.c b.c c.c | wc -1

2. Рассмотрим пример программы, приведенный на Рисунке 2.7. Предположим, что в тот момент, когда при ее выполнении встретился комментарий, произошло переключение контекста и другой процесс убрал содержимое буфера из списка указателей с помощью следующих команд:

    remove(gp)
          struct queue *gp;
     {
          gp - > forp - > backp = gp - > backp;
          gp - > backp - > forp = gp - > forp;
          gp - > forp = gp - > backp = NULL;
     }

Рассмотрим три случая:

  • Процесс убирает из списка с указателями структуру bp1.
  • Процесс убирает из списка с указателями структуру, следующую после структуры bp1.
  • Процесс убирает из списка структуру, которая первоначально следовала за bp1 до того, как структура bp была наполовину включена в указанный список.

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

3. Что произошло бы в том случае, если ядро попыталось бы возобновить выполнение всех процессов, приостановленных по событию, но в системе не было бы к этому моменту ни одного такого процесса?

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