Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Язык Perl. Механизм выполнения программы, написанной на Perl.




Perl - интерпретируемый язык, приспособленный для обработки произвольных текстовых файлов, извлечения из них необходимой информациии и выдачи сообщений. Perl также удобен для написания различных системных программ. Этот язык прост в использовании, эффективен, но про него трудно сказать, что он элегантен и компактен. Perl сочитает в себе лучшие черты C, shell, sed и awk, поэтому для тех, кто знаком с ними, изучение Perl-а не представляет особого труда. Cинтаксис выражений Perl-а близок к синтаксису C. В отличие от большинства утилит ОС UNIX Perl не ставит ограничений на объем обрабатываемых данных и если хватает ресурсов, то весь файл обрабатывается как одна строка. Рекурсия может быть произвольной глубины. Perl поддерживает три типа данных:

скаляры;массивы скаляров;ассоциативные массивы скаляров (так называемые хэши).

Обычные массивы, как и в языке C, индексируются числами, начиная с нуля. Ассоциативные массивы индексируются строками. Простые скаляры всегда начинаются со знака доллара: $, даже в том случае, когда мы обращаемся к элементу массива.

Программа на Perl-е состоит из последовательности команд. В отличие от типизированных языков Perl не требует объявления типов своих объектов. Все объекты, определенные в программе, до присваивания им какого-либо значения по умолчанию принимают значение ``0''. Последовательность команд исполняется сразу, в отличие от sed и awk, где исполняется последовательно каждая строка. Комментарии выделяются знаком #, и вся строка следующая за этим знаком будет рассматриваться как комментарий. Если вы написали подпрограмму, то ее можно вызывать только ниже по тексту программы. Блоком называется последовательность операторов, логически составляющая единое целое в теле программы, как правило, блоки заключаются в фигурные скобки. Каждая команда отделяется от других точкой с запятой. Точка с запятой не обязательна, только если оператор является последним в блоке.

Perl поддерживает арифметические выражения. Он допускает выполнение всех стандартных арифметических операций, производимых при работе с другими языками программирования. Для группировки выражений надлежит употреблять круглые скобки. В качестве операндов могут выступать числовые константы, числовые пе­ременные или другие числовые выражения.

Управляющие структуры

МЕТКА: { операторы; }

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

Условные управляющие структуры: if, else, elsif, case

if (выражение) { операторы; }

Операторы выполняются, если проверочное выражение воз­вращает истинное значение. Необходимо, чтобы операторы на­ходились внутри блока

i f (выражение) { операторы; }

else (выражение) {операторы; }

Операторы выполняются, если проверочное Выражение воз­вращает истинное значение. В противном случае выполняются операторы в блоке else

if {выражение) {операторы; }

elsif ( выражение) {операторы;}

else ( выражение) { операторы;}

Ключевое слово elsif позволяет создавать вложенные струк­туры if и выбирать один из нескольких вариантов.

до первого истинного if-выражения

Операторы цикла: while, until, for, foreach

МЕТКА:while (выражение) { операторы;}

Операторы выполняются, пока проверочное выражение возращает истинное значение. МЕТКА не обязательна

do { операторы;} until (выражение)

Операторы выполняются, пока проверочное выражение воз­вращает ложное значение

foreach переменная (список-значений) {операторы;}

Цикл foreach предназчен для обработки списков значений, например массивов. Операнду переменная последователь­но присваиваются указанные значения

for (началъное-выражение;

выражение; выражение-

инкрементирования)

{ операторы;}

Операторы выполняются, пока выражение возвращает истин­ное значение. Первое выражение, начальное-еыражение, выполняется до начала цикла, а третье выражение, выражение-инкрементирования, вычисляется внутри цикла после вы­полнения операторов


27. Распределенные базы данных NIS+ и DNS.

Под распределенной (Distributed DataBase - DDB) обычно подразумевают базу данных, включающую фрагменты из нескольких баз данных, которые располагаются на различных узлах сети компьютеров, и, возможно управляются различными СУБД. Распределенная база данных выглядит с точки зрения пользователей и прикладных программ как обычная локальная база данных. В этом смысле слово "распределенная" отражает способ организации базы данных, но не внешнюю ее характеристику ("распределенность" базы данных невидима извне).

NIS

Служба Сетевой Информации (Network Information Service) - служба, которая предоставляет информацию, которая может быть получена по сети для всех машин в сети. На Linux машинах со стандартной библиотекой libc имеется поддержка NIS, которая далее будет называться "традиционная NIS".

NIS+

Служба Сетевой Информации (Плюс:-), на основе NIS со стероидами. NIS+ разрабатывается фирмой Sun Microsystems Inc. как замена для NIS с улучшенной безопасностью и управлением _большими_ установками.

NIS - это Службы Сетевой Информации. Цель NIS в том, чтобы предоставить нужную информацию по сети для всех машин в сети. Информация, которую предоставляет NIS это:

· имена для входа в систему/пароли/домашние каталоги (/etc/passwd)

· информация о группах (/etc/group)

В сети сервером NIS должна быть одна машина. Вы можете иметь несколько NIS серверов, каждый из которых будет обслуживать различные "домены" NIS - или вы можете иметь скооперированные серверы NISm где один сервер является мастер-сервером, а все другие являются подчиненными серверами (для определенного "домена" NIS) - или вы можете их смешивать...

Базы данных NIS - это базы, в так называемом, DBM формате, который является производным от баз данных в ASCII. Например, файлы /etc/passwd и /etc/group могут быть преобразованы в формат DBM напрямую, через программу трансляции ASCII-to-DBM ("makedbm", поставляемую с сервером). Мастер-сервер NIS должен иметь как ASCII базы данных так и DBM базы данных.

NIS+ - это новая версия службы имен сетевой информации от Sun. Самое большое отличие между NIS и NIS+ это то, что NIS+ имеет поддержку шифрования данных и авторизацию через безопасный RPC.

Модель имен в NIS+ основывается на структуре дерева. Каждый узел в дереве соотвествует одному объекту NIS+ из шести типов: каталог, запись, группа, ссылка, таблица и личное.

Каталог NIS+ который формирует главное пространство имен NIS+, называется корневым каталогом. Имеется два специальных каталога NIS+: org_dir и groups_dir. Каталог org_dir содержит все административные таблицы, такие как passwd (пароли), hosts (узлы) и mail_aliases (почтовые псевдонимы). Каталог groups_dir содержит объекты групп NIS+, которые используются для управления доступом. Коллекция org_dir, groups_dir и их родительского каталога называется доменом NIS+.

DNS

DNS (англ. Domain Name System — система доменных имён) — распределённая система преобразования имени хоста (компьютера или другого сетевого устройства) в IP адрес. DNS работает в сетях TCP/IP. Как частный случай, DNS может хранить и обрабатывать и обратные запросы, определения имени хоста по его IP (PTR-записи).

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...