русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Порядок поиска в каталогах и переменная PATH


Дата добавления: 2013-12-23; просмотров: 929; Нарушение авторских прав


Поиск в каталогах

Количество байтов данных

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

sort file | grep pattern

grep pattern file | sort

 

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

ls -l /usr/bin* >/dev/null

cd /usr/bin; ls -l * >/dev/null

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

 

Переменная PATH предоставляет удобный механизм для организации процедур. Однако применять ее нужно с разумной осторожностью, иначе может произойти значительное увеличение дополнительных затрат системных ресурсов.

Процесс нахождения команды заключается в чтении содержимого каждого каталога, включенной в переменную PATH, до тех пор пока не будет найдена нужная команда. В качестве примера рассмотрим, как вызывается nroff (предположим, что команда находится в каталоге /usr/bin), когда переменной PATH присвоено значение ":/bin:/ usr/bin". Последовательность просмотра каталогов следующая:

.

/

/bin

/

/usr

/usr/bin

В нашем примере было просмотрено 6 каталогов. Если же переменной PATH присвоен длинный список путей, то количество просматриваемых каталогов может значительно возрасти.



Бездумное присвоение переменной PATH значений приводит к большим затратам времени на ненужный просмотр каталогов. Ниже приводятся четыре примера значений переменной PATH в порядке от самого плохого варианта до наилучшего:

:/usr/john/bin:/usr/localbin:/bin:/usr/bin

:/bin:/usr/john/bin:/usr/localbin:/usr/bin

:/bin:/usr/bin:/usr/john/bin:/usr/localbin

/bin::/usr/bin:/usr/john/bin:/usr/localbin

Первый вариант следует исключить. Остальные варианты приемлемы и выбор среди них определяется составом команд, содержащихся в каталогах /bin и /usr/bin.

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

 



<== предыдущая лекция | следующая лекция ==>
Число генерируемых процессов | Примеры процедур Shell


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.