Основы программирования (работа 6)

1. Cохранение информации в памяти компьютера

Цель работы: Изучать как сохранять и обработать документ в памяти компьютера с помощью Microsoft Word

Теоретическая часть: Механизм сортировки Word позволяет сортировать текст, ориентируясь на символы конца абзаца, табуляции и др. Чтобы отсортировать весь документ или только выделенный текст по алфавиту или какому-либо иному признаку, следует воспользоваться меню Таблица|Сортировка (Table|Sort). Окно Сортировка текста (Sort Text) позволяет выбрать, нужно ли сортировать целиком абзацы (Абзацы [Paragraphs]), или только текст, набранный до символа табуляции (Поле 1 [Field 1]); сортировать по возрастанию или убыванию, по алфавиту, числам или дате, а также считать ли первую строку текста заголовком (рис. 1).

Рис. 1

Обратите внимание: хотя команда Сортировка находится в меню Таблица, она позволяет сортировать любой, а не только табличный текст.

Таблицы Word 97 обладает широкими возможностями оформления таблиц. Для создания простых табличных документов часто используют табуляцию - после набора каждой "ячейки" таблицы нажимают клавишу Tab. Для того чтобы быстро "привести в порядок" таблицу, набранную таким образом, можно использовать простой механизм оформления табулированного текста - выделить табулированное содержимое и левой кнопкой мыши поставить позиции табуляции на линейке в верхней части окна Word 97, как показано на рис. 2. Чтобы изменить ширину колонок, маркеры табуляции можно перетаскивать мышью.

Рис. 2

Для того чтобы новые позиции табуляции задавали другой тип выравнивания, щелкните на значке выравнивания, который находится с левого края линейки.

Рис. 3

Для того чтобы изменить все возможные параметры табулированного текста, вызовите окно Табуляция (Tabs) командой меню Word 97 Формат|Табуляция (Format|Tabs). Оно позволяет изменить не только позиции табуляции и выравнивание табулированного текста, но и тип заполнителя между колонками (рис. 3).

Табулированный текст легко преобразовать в таблицу. Для этого его нужно выделить, а затем выбрать команду Таблица|Преобразо вать в таблицу (Table|Convert Text to Table). В диалоговом окне Преобразовать в таблицу (Convert Text to Table) будет автоматически выбрано число столбцов и разделитель, по которому будет определена граница столбца (рис. 4). Если все выделенные строки будут содержать равное количество символов табуляции, Word 97 должен правильно опознать эти параметры.

Рис. 4

Для обратного преобразования - из таблицы в текст - нужно выделить всю таблицу, например, командой Таблица|Выделить таблицу (Table|Select Table), а затем выбрать команду Таблица|Преобразовать в текст (Table|Convert Table to Text). Возникнет диалоговое окно (рис. 5), где следует выбрать символ, который появится вместо вертикальных разделителей (по умолчанию - символ табуляции).

Рис. 5

Чтобы создать новую таблицу, следует воспользоваться командой меню Таблица|Добавить таблицу (Table|Insert Table), указав в появившемся окне Вставка таблицы (Insert Table) число столбцов и строк, или щелкнуть на кнопке Добавить таблицу (Insert Table) панели инструментов Word 97 (рис. 6). Самый простой способ создания таблицы - нажать кнопку Таблицы и границы (Tables and Borders) инструментальной панели окна Word 97 и просто нарисовать таблицу с нужным числом строк и столбцов. Для последова тельного перемещения между ячейками таблицы используйте клавишу Tab, для обратного перемещения - Shift+Tab.

Рис. 6

Чтобы добавить к таблице новый столбец, нужно выделить столбец, рядом с которым должен появиться новый, командой Таблица|Выделить столбец (Table|Select Column) или, поместив указатель мыши на верхнюю границу столбца, щелкнуть ее. После того как столбец выделен, нужно дать команду Таблица|Добавить столбцы (Table|Insert Columns). Появится новый столбец, а выделенный будет смещен вправо.

Чтобы добавить столбец с правого края таблицы, поместите курсор правее крайнего справа столбца, дайте команду Таблица|Выде лить столбец (Table|Select Column), а затем - Таблица|Добавить столбцы (Table|Insert Columns). Новую строку внизу таблицы можно добавить, поместив курсор в последнюю ячейку таблицы и нажав клавишу Tab. Есть и другой способ - выделить строку, выше которой должна появиться новая, командой Таблица|Выделить строку (Table|Select Row) и дать команду Таблица|Добавить строки (Table|Insert Rows). Выделенная строка сместится вниз. Добавив к таблице несколько колонок, вы обнаружите, что таблица получилась значительно шире, чем стандартный лист бумаги. Ширину столбцов проще всего регулировать мышью. Кроме того, можно использовать окно изменения ширины столбцов и высоты строк (рис. 7), которое появляется по команде Таблица|Высота и ширина ячейки (Table|Cell Height and Width).

Рис. 7

Наиболее легкий способ быстро привести таблицу в соответствие с шириной листа и объемом текста в каждой ячейке заключается в следующем: нужно выделить всю таблицу командой Таблица|Выделить таблицу, затем командой Таблица|Высота и ширина ячейки (Table|Cell Height and Width) вывести на экран окно Высота и ширина ячеек (Table|Cell Height and Width) и на вкладке Столбец (Column) нажать кнопку Автоподбор (AutoFit). Чтобы слить ячейки по горизонтали или вертикали, как на рис. 8, нужно выделить их и выбрать команду Таблица|Объединить ячейки (Table|Merge Cells).

Рис. 8

Горизонтальное выравнивание текста в ячейках выполняется так же, как и обычное форматирование абзаца. Вертикальное выравнивание (верхнее, по центру, нижнее) достигается командой контекстного меню Выравнивание (Alignment), как показано на рис. 9.

Рис. 9

Чтобы удалить строки или столбцы, нужно выделить их. Далее используйте команды Таблица|Удалить строки (Table|Delete Rows) или Таблица|Удалить столбцы (Table|Delete Columns).

Задание:

1.Сортировка текстов

2. Создать таблицу

3. Форматирование текстов

4. Табуляция текста

5. Гиперссылка в Ms Word

Контрольные вопросы:

1. Для чего служит Ms Word

2. Как сортируются тексты в Ms Word

3. Как форматируются тексты в Ms Word

2. Выполнение операции над строками

Цель работы: Изучать выполнений операции над строками с помощью Microsoft Excel

Теоретическая часть:Для запуска EXCEL из операционной среды WINDOWS необходимо:

      Выполнить щелчок по кнопке Пуск в главном меню

      Установить указатель мыши на пункт Программы

      В открывшемся меню выбрать команду Microsoft EXCEL

Существует и более быстрый способ запуска EXCEL, для применения которого необходимо наличие панели инструментов Microsoft Office. Если панель Microsoft Office установлена на вашем компьютере, для запуска программы достаточно выполнить щелчок по кнопке программы.

Окно книги.

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

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

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

Строка формул.

Под панелями инструментов находится строка формул, которая предназначена для обработки содержимого ячеек. Она разделена на три части. В левой части этой строки находится поле имени, в котором указывается адрес выбранной ячейки, имя ячейки или функции, а в правой части показывается содержимое выбранной ячейки. Редактирование данных осуществляется или в ячейке, или в строке формул. Для перехода в режим редактирования данных в строке формул следует нажать клавишу F2 или выполнить щелчок в правой части строки формул. Чтобы установить режим редактирования данных в ячейке, необходимо выполнить на ней двойной щелчок, вследствие чего ячейка станет активной и в ней появится курсор ввода.

Ввод данных в ячейки таблицы.

Ячейки электронной таблицы могут содержать самую разнообразную информацию: константы и формулы. При вводе данных Excel автоматически распознаёт их тип. Ввод данных выполняется в активной ячейке или в строке формул.

Константы разделяются на три основные категории: числовые значения, текстовые значения и значения дат и времени.

Ввод числовых и текстовых значений.

Для того чтобы ввести числовое значение, выделите ячейку и введите с клавиатуры число. По мере ввода цифр, они выводятся в строке формул и в активной ячейке. Числовые значения могут содержать только цифры от 0 до 9 и специальные символы: + - Е ( ) % $ . , /. Если число вводится со знаком + или -, Excel опускает + и сохраняет -. Символ Е используется в экспоненциальном представлении, например. 1Е6 означает число 1000000. числовые значения, заключённые в () Excel интерпретирует как отрицательные числа, например, (100) = -1000. при вводе можно использовать символы, как десятичные знаки. Кроме того, позволяется вставлять пробел как разделитель групп разрядов, например, 1 936 838. если начать ввод числа со знака $, Excel применяет к ячейке денежный формат, например, при вводе $123456 Excel выведет в ячейке $123456, а в строке формул 123456. если ввод числа заканчивается символом %, Excel применяет к ячейке процентный формат. Если при вводе значения используется символ /, то Excel интерпретирует введённое значение как дробь, например, если ввести 11 5/8, то Excel выведет 11.625 в строке формул и 11 5/8 в ячейке.

Ввод текста аналогичен вводу числовых значений. Если вводится текст, который не может поместиться в одной ячейке, Excel выводит текст, перекрывая соседние ячейки, но текст при этом будет храниться в одной ячейке. Когда вводится текст в ячейку рядом с другой, которая уже заполнена текстом, то перекрывающийся текст обрезается на экране, но целиком остаётся во введённой ячейке и увидеть этот текст целиком можно в строке формул. Длинный текст в ячейке можно ввести с переносом на следующие строки без наложения текста на другие ячейки необходимо выполнить следующие действия:

      В меню Формат выбрать команду Ячейки

      В появившемся окне на вкладке Выравнивание установить флажок Переносить по словам и нажать клавишу ОК.

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

Ввод формул.

Если бы не формулы, электронные таблицы можно было бы создавать с помощью текстового редактора. Формула – это арифметическое выражение, в котором могут быть числа, адреса ячеек, функции и знаки арифметических операций: + - * /. Все функции в Excel начинаются со знака = . выделите пустую ячейку и введите в неё =10+5, нажмите Enter. В ячейке появится значение 15, а в строке формул – сама формула. В формулах наряду с числами можно использовать адреса ячеек, которые называются ссылками. Создавая формулу, содержащую ссылки на ячейки, вы связываете формулу с ячейками книги. Значение формулы зависит от содержимого ячеек, на которые указывает ссылка, и оно изменяется при изменении содержимого этих ячеек.

Вычисления.

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

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

    Фамилия

    Имя

    Отчество

    Должность

    Величина заработной платы

    Подоходный налог

    Отчисление в соц. Фонд

    Профсоюзные взносы

    К выдаче

Создав заголовок, приступают к вводу информации в ячейки таблицы, используя приёмы, рассмотренные выше. Не заполняются только поля подоходный налог, соц. Фонд, профсоюзные взносы и к выдаче.

После выполнения этих действий таблица будет выглядеть так:

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

Теперь осталось заполнить остальные столбцы таблицы. Это – не простые ячейки – это вычисляемые ячейки. Иными словами, в эти ячейки необходимо ввести расчётные формулы. Для нашего простейшего варианта принимаются следующие установки:

    Подоходный налог взимать из расчёта 5% от заработной платы

    В соц. фонд отчислять 10% от заработной платы

    Профсоюзные взносы взимать из расчёта 2% от заработной платы

Не трудно догадаться, что расчётные формулы основываются на арифметической пропорции. Поэтому в ячейку расчёта Подоходного налога необходимо ввести формулу:

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

Вы, наверное, обратили внимание, что расчётные формулы для каждого конкретного работника очень похожи. В частности, разница заключается только в том, что в ссылке на ячейку заработной платы изменяется только координата столбца. Нетрудно сообразить, что в случае, когда таблица содержала бы большее количество работников, процесс ввода расчётных формул растянулся бы на долгое время. Поэтому программа Excel предоставляет удобную возможность по оптимизации этого процесса. Дело в том, что формулу можно копировать, и делается это следующим образом. В первую ячейку столбца вводится расчётная формула обычным образом. Затем необходимо сделать эту ячейку активной, то есть, выделить её. В правом нижнем углу рамки выделения находится едва заметный узелок. Необходимо поставить указатель мыши в эту точку (если это сделано правильно указатель принимает форму +), нажать клавишу мыши и не отпуская её провести по остальным ячейкам таблицы, в которые осуществляется копирование формулы. После того, как вы проделаете эту операцию во все ячейки копирования будет вставлена соответствующая формула. Итак, давайте в первые ячейки таблицы столбцов "Соц. Фонд", "Проф. Взносы", "К выдаче" занесём соответствующие расчётные формулы. Они будут отличаться только расчётом процента от заработной платы, а в ячейке столбца "К выдаче" должна быть введена формула разности между заработной платой и всеми вычетами. Таблица принимает следующий вид:

Задание:

1.Ввод данных

2. Работа с листами

3. Форматирование ячеек

4. Ввод формул

5. Гиперссылка в Ms Excel

Контрольные вопросы:

1. Для чего служит Ms Excel

2. Как используются формулы в Ms Excel

3. Как форматируются тексты в Ms Excel

3. Список в оперативной памяти

Блоки памяти и модули

Основные понятия

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

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

Термин оперативная память часто обозначает не только микросхемы, которые составляют устройства памяти в системе, но включает и такие понятия, как логическое отображение и размещение. Логическое отображение — это способ представления адресов памяти на фактически установленных микросхемах. Размещение — это расположение информации (данных и команд) определенного типа по конкретным адресам памяти системы.

В современных компьютерах используются запоминающие устройства трех основных типов.

    ROM (Read Only Memory). Постоянное запоминающее устройство — ПЗУ, не способное выполнять операцию записи данных.

    DRAM (Dynamic Random Access Memory). Динамическое запоминающее устройство с произвольным порядком выборки.

    SRAM (Static RAM). Статическая оперативная память.

Память типа ROM

В памяти типа ROM (Read Only Memory), или ПЗУ (постоянное запоминающее устройство), данные можно только хранить, изменять их нельзя. Именно поэтому такая память используется только для чтения данных. ROM также часто называется энергонезависимой памятью, потому что любые данные, записанные в нее, сохраняются при выключении питания. Поэтому в ROM помещаются команды запуска персонального компьютера, т.е. программное обеспечение, которое загружает систему. Заметьте, что ROM и оперативная память — не противоположные понятия. На самом деле ROM представляет собой часть оперативной памяти системы. Другими словами, часть адресного пространства оперативной памяти отводится для ROM. Это необходимо для хранения программного обеспечения, которое позволяет загрузить операционную систему. Основной код BIOS содержится в микросхеме ROM на системной плате, но на платах адаптеров также имеются аналогичные микросхемы. Они содержат вспомогательные подпрограммы базовой системы ввода-вывода и драйверы, необходимые для конкретной платы, особенно для тех плат, которые должны быть активизированы на раннем этапе начальной загрузки, например видеоадаптер. Платы, не нуждающиеся в драйверах на раннем этапе начальной загрузки, обычно не имеют ROM, потому что их драйверы могут быть загружены с жесткого диска позже — в процессе начальной загрузки.

Память DRAM

Динамическая оперативная память (Dynamic RAM — DRAM) используется в большинстве систем оперативной памяти современных персональных компьютеров. Основное преимущество памяти этого типа состоит в том, что ее ячейки упакованы очень плотно, т.е. в небольшую микросхему можно упаковать много битов, а значит, на их основе можно построить память большой емкости. Ячейки памяти в микросхеме DRAM— это крошечные конденсаторы, которые удерживают заряды. Именно так (наличием или отсутствием зарядов) и кодируются биты. Проблемы, связанные с памятью этого типа, вызваны тем, что она динамическая, т.е. должна постоянно регенерироваться, так как в противном случае электрические заряды в конденсаторах памяти будут "стекать" и данные будут потеряны. Регенерация происходит, когда контроллер памяти системы берет крошечный перерыв и обращается ко всем строкам данных в микросхемах памяти. Большинство систем имеет контроллер памяти (обычно встраиваемый в набор микросхем системной платы), который настроен на соответствующую промышленным стандартам частоту регенерации, равную 15 мкс. Ко всем строкам данных обращение осуществляется по прохождении 128 специальных циклов регенерации. Это означает, что каждые 1,92 мс (128Ч15 мкс) прочитываются все строки в памяти для обеспечения регенерации данных. Регенерация памяти, к сожалению, отнимает время у процессора: каждый цикл регенерации по длительности занимает несколько циклов центрального процессора. В старых компьютерах циклы регенерации могли занимать до 10% (или больше) процессорного времени, но в современных системах, работающих на частотах, равных сотням мегагерц, расходы на регенерацию составляют 1% (или меньше) процессорного времени. Некоторые системы позволяют изменить параметры регенерации с помощью программы установки параметров CMOS, но увеличение времени между циклами регенерации может привести к тому, что в некоторых ячейках памяти заряд "стечет", а это вызовет сбои памяти. В большинстве случаев надежнее придерживаться рекомендуемой или заданной по умолчанию частоты регенерации. Поскольку затраты на регенерацию в современных компьютерах составляют менее 1%, изменение частоты регенерации оказывает незначительное влияние на характеристики компьютера. В устройствах DRAM для хранения одного бита используется только один транзистор и пара конденсаторов, поэтому они более вместительны, чем микросхемы других типов памяти. В настоящее время имеются микросхемы динамической оперативной памяти емкостью до 256 Мбит и больше. Это означает, что подобные микросхемы содержат 256 млн (и даже больше) транзисторов! А ведь Pentium II имеет только 7,5 млн транзисторов. Откуда такая разница? Дело в том, что в микросхеме памяти все транзисторы и конденсаторы размещаются последовательно, обычно в узлах квадратной решетки, в виде очень простых, периодически повторяющихся структур, в отличие от процессора, представляющего собой более сложную схему различных структур, не имеющую четкой организации.

Транзистор для каждого одноразрядного регистра DRAM используется для чтения состояния смежного конденсатора. Если конденсатор заряжен, в ячейке записана 1; если заряда нет — записан 0. Заряды в крошечных конденсаторах все время стекают, вот почему память должна постоянно регенерироваться. Даже мгновенное прерывание подачи питания или какой-нибудь сбой в циклах регенерации приведет к потере заряда в ячейке DRAM, а следовательно, и к потере данных. Динамическая оперативная память используется в персональных компьютерах; поскольку она недорогая, то микросхемы могут быть плотно упакованы, а это означает, что запоминающее устройство большой емкости может занимать небольшое пространство. К сожалению, память этого типа не отличается высоким быстродействием, обычно она намного "медленнее" процессора. Поэтому существует множество различных типов организации

DRAM, позволяющих улучшить эту характеристику.

Кэш память SRAM

Существует тип памяти, совершенно отличный от других, — статическая оперативная память (Static RAM — SRAM). Она названа так потому, что, в отличие от динамической оперативной памяти (DRAM), для сохранения ее содержимого не требуется периодической регенерации. Но это не единственное ее преимущество. SRAM имеет более высокое быстродействие, чем динамическая оперативная память, и может работать на той же частоте, что и современные процессоры.

Время доступа SRAM не более 2 нс; это означает, что такая память может работать синхронно с процессорами на частоте 500 МГц или выше. Однако для хранения каждого бита в конструкции SRAM используется кластер из шести транзисторов. Использование транзисторов без каких-либо конденсаторов означает, что нет необходимости в регенерации. (Ведь если нет никаких конденсаторов, то и заряды не теряются.) Пока подается питание, SRAM будет помнить то, что сохранено. Почему же тогда микросхемы SRAM не используются для всей системной памяти? По сравнению с динамической оперативной памятью быстродействие SRAM намного выше, но плотность ее намного ниже, а цена довольно высокая. Более низкая плотность означает, что микросхемы SRAM имеют большие габариты, хотя их информационная емкость намного меньше. Большое число транзисторов и кластеризованное их размещение не только увеличивает габариты микросхем SRAM, но и значительно повышает стоимость технологического процесса по сравнению с аналогичными параметрами для микросхем DRAM. Например, емкость модуля DRAM может равняться 128 Мбайт или больше, в то время как емкость модуля SRAM приблизительно того же размера составляет только 2 Мбайт, причем их стоимость будет одинаковой. Таким образом, габариты SRAM в среднем в 30 раз превышают размер динамической оперативной памяти, то же самое можно сказать и о стоимости. Все это не позволяет использовать память типа SRAM в качестве оперативной памяти в персональных компьютерах.

Несмотря на это, разработчики все-таки применяют память типа SRAM для повышения эффективности PC. Но во избежание значительного увеличения стоимости устанавливается только небольшой объем высокоскоростной памяти SRAM, которая используется в качестве кэш памяти. Кэш-память работает на тактовых частотах, близких или даже равных тактовым частотам процессора, причем обычно именно эта память непосредственно используется процессором при чтении и записи. Во время операций чтения данные в высокоскоростную кэш-память предварительно записываются из оперативной памяти с низким быстродействием, т.е. из DRAM. Еще недавно время доступа динамической оперативной памяти было не менее 60 нс (что соответствует тактовой частоте 16 МГц). Когда процессор персонального компьютера работал на тактовой частоте 16 МГц и ниже, DRAM могла быть синхронизирована с системной платой и процессором, поэтому кэш был не нужен. Однако, как только тактовая частота процессора поднялась выше 16 МГц, синхронизировать DRAM с процессором стало невозможно, и именно тогда разработчики начали использовать SRAM в персональных компьютерах. Это произошло в 1986 и 1987 годах, когда появились PC с процессором 386, работающим на частотах 16 и 20 МГц. Именно в этих персональных компьютерах впервые нашла применение так называемая кэш-память, т.е. высокоскоростной буфер, построенный на микросхемах SRAM, который непосредственно обменивается данными с процессором. Поскольку быстродействие кэша может быть сравнимо с быстродействием процессора, контроллер кэша может предугадывать потребности процессора в данных и предварительно загружать необходимые данные в высокоскоростную кэш-память. Тогда при выдаче процессором адреса памяти данные могут быть переданы из высокоскоростного кэша, а не из оперативной памяти, быстродействие которой намного ниже.

Кэш-память позволяет сократить количество "простоев" и увеличить быстродействие компьютера в целом. Чтобы минимизировать время ожидания при считывании процессором данных из медленной оперативной памяти, в современных персональных компьютерах обычно предусмотрены два типа кэш-памяти: кэш-память первого уровня (L1) и кэш-память второго уровня (L2). Кэш память первого уровня также называется встроенным, или внутренним кэшем; он непосредственно встроен в процессор и фактически является частью микросхемы процессора. Во всех процессорах 486 и выше кэш-память первого уровня интегрирована в микросхему процессора. Кэш-память второго уровня называется вторичным, или внешним кэшем; он устанавливается вне микросхемы процессора. Первоначально она устанавливалась на системной плате. (Так было во всех компьютерах на основе процессоров 386, 486 и Pentium.) Если кэш-память второго уровня установлена на системной плате, то она работает на ее частоте. В этом случае кэш-память второго уровня обычно находится рядом с разъемом процессора.

Для повышения эффективности в более поздних компьютерах на основе процессоров Pentium Pro, Pentium II/III и Athlon кэш-память второго уровня является частью процессора. Конечно же, он внешний по отношению к кристаллу центрального процессора, просто эта отдельная микросхема устанавливается внутри корпуса (картриджа) процессора. Поэтому на системных платах для процессоров Pentium Pro или Pentium II нет никакого кэша. В последних моделях процессоров Pentium III и Athlon кэш-память второго уровня является частью микросхемы процессора (подобно кэш-памяти первого уровня) и работает на более высоких частотах (на частоте процессора, половинной или трети).

4. Простые файловые структуры данных. Сетевые технологии

Глобальные сети, городские сети, локальные сети

Сети с коммутацией пакетов, которые разрослись до больших географических размеров(например, континентальной части США), сильно отличаются от сетей, имеющих небольшие размеры(например, одну комнату). Чтобы помочь охарактеризовать различия в пропускной способности и способах использования, технологии коммутации пакетов часто делят на три большие категории: глобальные сети(WAN), городские сети(MAN) и локальные сети(LAN). Технологии WAN, иногда называемые long haul networks(буквально - сети дальних перевозок), позволяют взаимодействующим местам быть достаточно далеко друг от друга и предназначены для использования на больших расстояниях. Обычно WAN работают на более низких скоростях, чем другие технологии, и имеют гораздо большие паузы при соединении. Обычно скорости WAN лежат в диапазоне от 9.6 Кбит/с до 45 Мбит/с.

Самый новый вид сетевого оборудования, технологии MAN позволяют взаимодействовать в географических областях средних размеров и работают на скоростях от средних до высоких. Они получили такое имя из-за способности одной MAN занимать область размером с большой город. MAN работают с меньшими паузами, чем WAN, но не могут обеспечить взаимодействие на таких же больших расстояниях. Типичные MAN работают со скоростями от 56 Кбит/с до 100 Мбит/с.

Технологии LAN обеспечивают наивысшие скорости соединений между компьютерами, но не позволяют им занимать большие области. Например, типичная LAN занимает пространство, такое же как одно здание или небольшой университетский городок, и работает со скоростями от 4 Мбит/с до 2 Гбит/с.

Мы уже говорили о компромиссе между скоростью и расстоянием: технологии, обеспечивающие более высокие скорости взаимодействия, работают на более коротких расстояниях. Существуют и другие различия среди технологий в указанных выше трех категориях. В технологиях LAN каждый компьютер обычно содержит сетевое интерфейсное устройство, которое соединяет машину напрямую с сетевой средой передачи данных(например, медным проводом или коаксиальным кабелем). Часто сеть является пассивной, полагая, что электронные устройства в присоединенных компьютерах сами будут генерировать и получать необходимые электрические сигналы. В технологиях MAN сеть содержит активные коммутирующие элементы, которые приводят к появлению коротких задержек при направлении данных к их назначению. В технологиях WAN сеть обычно состоит из групп сложных маршрутизаторов пакетов, соединенных линиями связи. Сеть может быть расширена добавлением нового маршрутизатора и еще одной линии связи. Присоединить компьютер к WAN значит соединить его с одним из маршрутизаторов пакетов. Эти маршрутизаторы вводят значительные паузы при маршрутизации траффика. Поэтому, чем больше становится WAN, тем больше времени ей надо для маршрутизации траффика.

Целью разработки сетевых протоколов является скрыть технологические различия между сетями, сделав соединение независимым от используемого оборудования. Следующие секции содержат шесть примеров сетевых технологий, используемых в Интернете, показывая при этом различия между ними. Следующие главы показывают, как программное обеспечение TCP/IP скрывает такие различия и делает коммуникационную систему независимой от базовой аппаратной технологии.

Технология Ethernet

Ethernet - это имя, данное популярной технологии локальной сети с коммутацией пакетов, разработанной в Xerox PARC в начале 1970 года. Версия, описанная здесь, была стандартизована Xerox Corporation, Intel Corporation и Digital Equipment Corporation в 1978 году. Как показано на рисунке 2.1, Ethernet состоит из коаксиального кабеля приблизительно полдюйма в диаметре и до 500 метров длиной. Между центральным проводом и защитной оболочкой на каждом конце добавляется резистор для предотвращения отражения электрических сигналов. Называемый ether(для удобства будем называть его просто Е-кабель), этот кабель является полностью пассивным; все активные электронные компоненты, выполняющие сетевую функцию, связаны с компьютерами, присоединенными к сети.

Рисунок 2.1 Коаксиальный кабель, иcпользуемый в Ethernet

Ethernet'ы могут быть дополнены устройствами, называемыми повторителями, которые передают электрические сигналы от одного кабеля к другому. Рисунок 2.2 показывает типичное использование повторителей в здании фирмы. Один вертикальный магистральный кабель проложен через все этажи здания, и повторитель соединяет дополнительные кабели на каждом этаже с магистральным кабелем. Компьютеры присоединяются к кабелям, проложенным на каждом этаже. Только два повторителя могут быть помещены между любыми двумя машинами, поэтому общая длина простого Ethernetа довольно маленькая(до 1500 метров). Расширение Ethernetа, используя повторители, имеет свои преимущества и недостатки. Повторители менее избыточны, чем другие типы соединяющего оборудования, что делает их самым дешевым способом расширения Ethernetа. Тем не менее, повторители имеют два недостатка. Во-первых, так как повторители повторяют и усиливают все электрические сигналы, то они копируют шумы, возникающие в одном проводе, в другой провод. Во-вторых, так как они содержат активные электронные компоненты, требующие энергии, они могут выйти из строя. В здании авария может произойти в неудобном месте(например, между перекрытиями или в розетке), делая трудным ее нахождение и устранение.

Рисунок 2.2 Повторители, используемые для соединения кабелей Ethernetа в здании. Самое большее два повторителя могут быть помещены между парой взаимодействующих машин.

Соединения с E-кабелем делаются с помощью ответвлений, как показывает рисунок 2.3. При каждом ответвлении маленькая дырка во внешних слоях кабеля позволяет маленьким контактам касаться центрального провода и защитной металлической оболочки(некоторые производители требуют, чтобы кабель был разрезан и вставлен Т-образный соединитель). Каждое соединение с Ethernetом имеет две основные электрические компоненты. Трансивер присоединяется к центральному проводу и металлической оплетке на Е-кабеле, принимая и передавая сигналы. Интерфейс с ЭВМ соединяется с трансивером и взаимодействует с компьютером(обычно через шину компьютера). Трансивер - это небольшая часть оборудования, физически смежная с Е-кабелем. Помимо аналогового оборудования, которое принимает сигналы от Е-кабеля и управляет им, трансивер содержит цифровые схемы, которые позволяют ему взаимодействовать с цифровым компьютером. Трансивер может определить, когда Е-кабель используется, и может транслировать аналоговые электрические сигналы, идущие по Е-кабелю, в цифровую форму или из нее в аналоговую. По кабелю трансивера, находящемуся между трансивером и интерфейсом ЭВМ, передается питание трансивера, а также сигналы, управляющие его работой. Рисунок 2.4 показывает соединение между компьютером и трансивером. Каждый интерфейс ЭВМ управляет работой одного трансивера согласно командам, которые он получает от программного обеспечения компьютера. Для операционной системы интерфейс представляется в виде устройства ввода-вывода, которое воспринимает основные команды передачи данных от компьютера, управляет трансивером при их выполнении, прерывается, когда задача завершается, и сообщает информацию о состоянии. В то время как трансивер - это простое аппаратное устройство, интерфейс с ЭВМ может быть сложным(например, он может содержать микропроцессор, используемый для управления передачей данных между памятью компьютера и Е-кабелем).

Рисунок 2.3 (а) Наглядное представление кабеля, показывающее детали двух электрических соединений между трансивером и кабелем при ответвлении, и (b) схематическая диаграмма Ethernetа с группой ответвлений.

Свойства Ethernet'а

Ethernet - это технология общей шины со скоростью 10 Мбит/с , с механизмом негарантированной(best effort) доставки и распределенным управлением доступом. Она называется технологией общей шины из-за того, что все станции разделяют один общий канал взаимодействия; она - широковещательная, так как все трансиверы принимают информацию, передаваемую всеми станциями. Метод, используемый для передачи пакетов от одной станции к другой или к группе станций, будет рассмотрен позднее. На данный момент достаточно уяснить, что трансиверы не фильтруют информацию - они передают все пакеты на интерфейс ЭВМ, который выбирает из них нужные этой ЭВМ и отбрасывает другие пакеты. Ethernet называется механизмом негарантированной доставки, так как он не информирует отправителя о том, был ли доведен пакет до получателя. Например, если случилось так, что машина получателя выключена, пакет будет потерян, но отправитель ничего не будет знать об этом. мы увидим позднее, как протоколы TCP/IP согласованы с оборудованием с негарантированным доведением.

Рисунок 2.4 Соединение между кабелем Ethernet и компьютером

память компьютер интернет сеть

Управление доступом в Ethernetе распределенное, так как, в отличие от некоторого другого сетевого оборудования, здесь нет централизованной схемы предоставления доступа. Схема доступа Ethernetа называется множественным доступом с контролем несущей и обнаружением коллизий(CSMA/CD). Она является CSMA, так как несколько машин могут получить доступ к Ethernetу одновременно, и каждая машина определяет, занят ли Е-кабель, по наличию несущей в нем. Когда интерфейс компьютера имеет пакет, который нужно передать, он слушает Е-кабель, чтобы узнать, передается ли уже чье-то сообщение(т.е. определяет наличие несущей). Когда передачи не обнаружено, интерфейс компьютера начинает передачу. Каждая передача ограничена в своей продолжительности(так как существует максимальный размер пакета). Более того, оборудование должно делать небольшие паузы между передачами пакетов, чтобы не получилось так, что сеть используется одной парой машин, и чтобы другие машины тоже имели возможность доступа к сети.

Обнаружение коллизий и восстановление

Когда трансивер начинает передачу, сигнал не достигает всех частей сети одновременно. На самом деле он передается по кабелю со скоростью, составляющей примерно 80% от скорости света. Поэтому возможна ситуация, когда два трансивера могут определить, что сеть незанята, и одновременно начать передачу. Когда два электрических сигнала передаются одновременно, они перемешиваются, в результате чего оба становятся искаженными. Такие события называются коллизиями.

Ethernet обрабатывает коллизии оригинальным способом. Каждый трансивер следит за состоянием кабеля, когда он передает , чтобы узнать, когда другой сигнал помешал его передаче. На техническом языке такое слежение называется обнаружением коллизий и делает Ethernet сетью CSMA/CD. Когда коллизия обнаружена, интерфейс ЭВМ аварийно завершает передачу, ждет конца работы других станций и снова пытается повторить передачу. При этом нужно соблюдать осторожность, иначе сеть может оказаться перегруженной трансиверами, впустую пытающимися передавать, причем каждая передача будет приводить к коллизии. Чтобы избежать таких ситуаций, Ethernet использует стратегию двоичной экспоненциальной задержки, при которой отправитель ждет случайное время после первой коллизии, в два раза дольше, если вторая попытка передать, также привела к коллизии, в четыре раза дольше, если третья попытка привела к коллизии, и так далее. Идея, лежащая в основе экспоненциальной задержки, заключается в том, что при коллизии возможно, что большое число станций будет пытаться передавать одновременно и может возникнуть большие помехи для траффика. При таких помехах существует большая вероятность того, что две станции выберут похожие времена задержки. Поэтому вероятность того, что возникнет новая коллизия, велика. С помощью удвоения случайного времени задержки стратегия экспоненциальной задержки быстро распределяет попытки повторной передачи станций на достаточно большой промежуток времени, что делает вероятность дальнейших коллизий крайне маленькой.

Пропускная способность Ethernet'а

Стандартный Ethernet работает со скоростью 10 Мбит/с, что означает, что данные могут передаваться по кабелю со скоростью 10 миллионов бит в секунду. Хотя многие современные компьютеры могут генерировать данные со скоростью Ethernetа, реальную скорость сети не следует представлять как скорость, с которой два компьютера обмениваются данными. На самом деле скорость сети является мерой пропускной способности общего траффика сети. Представьте сеть в виде высокоскоростной магистрали(highway), соединяющей группу городов. Высокие скорости при движении по магистрали означают, что она может выдержать большую загрузку траффиком, а низкие скорости - что эта магистраль не может выдержать большой объем траффика. Ethernet со скоростью 10 Мбит/с, например, может выдержать несколько компьютеров, генерирующих высокоскоростной траффик или большое число компьютеров, генерирующих медленный траффик.

Вариации Ethernet'а

Последние достижения в технологии сделали возможным создание Ethernetа, который нуждается в электрической изоляции коаксиального кабеля. Называемая Ethernet - витая пара, эта технология позволяет обычному Ethernetу со скоростью 10 Мбит/c передаваться по паре медных проводов, во многом похожих на те, которые используются для соединения телефонов. Преимущество использования витой пары состоит в том, что она дешевле и позволяет многим группам использовать существующие кабеля вместо установки новых.

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

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

Производители рабочих станций обнаружили, что Ethernet-тонкий кабель особенно привлекателен из-за того, что они могут интегрировать Ethernet-овское оборудование в одноплатные компьютеры и смонтировать BNC-разъемы прямо в задней стенке машины. Не требуя специальных средств, BNC-разъемы делают возможным для пользователей присоединение их рабочих станций к Ethernet-у. Конечно, предоставление пользователям возможности добавлять их машины к сетям имеет свои недостатки. Это означает, что сеть будет чувствительной к разъединениям, неправильным соединениям кабелей, и другим ошибкам. Но в большинстве случаев преимущества перевешивают недостатки.

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

5. Проектирование LAN. Топология локальных сетей

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

Существует три базовые топологии сети:

    Шина (bus) — все компьютеры параллельно подключаются к одной линии связи. Информация от каждого компьютера одновременно передается всем остальным компьютерам (рис. 1.5).

Рис. 1.5. Сетевая топология шина

    Звезда (star) — к одному центральному компьютеру присоединяются остальные периферийные компьютеры, причем каждый из них использует отдельную линию связи (рис. 1.6). Информация от периферийного компьютера передается только центральному компьютеру, от центрального — одному или нескольким периферийным.

Рис. 1.6. Сетевая топология звезда

    Кольцо (ring) — компьютеры последовательно объединены в кольцо. Передача информации в кольце всегда производится только в одном направлении. Каждый из компьютеров передает информацию только одному компьютеру, следующему в цепочке за ним, а получает информацию только от предыдущего в цепочке компьютера (рис. 1.7).

Рис. 1.7. Сетевая топология кольцо

На практике нередко используют и другие топологии локальных сетей, однако большинство сетей ориентировано именно на три базовые топологии.

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

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

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

    Целостность кабеля сети. При обрыве кабеля сети (например, из-за механических воздействий) может нарушиться обмен информацией во всей сети или в одной из ее частей. Для электрических кабелей столь же критично короткое замыкание в кабеле.

    Ограничение длины кабеля, связанное с затуханием распространяющегося по нему сигнала. Как известно, в любой среде при распространении сигнал ослабляется (затухает). И чем большее расстояние проходит сигнал, тем больше он затухает (рис. 1.8). Необходимо следить, чтобы длина кабеля сети не была больше предельной длины L>пр>, при превышении которой затухание становится уже неприемлемым (принимающий абонент не распознает ослабевший сигнал).

Рис. 1.8. Затухание сигнала при распространении по сети

Топология шина

Топология шина (или, как ее еще называют, общая шина) самой своей структурой предполагает идентичность сетевого оборудования компьютеров, а также равноправие всех абонентов по доступу к сети. Компьютеры в шине могут передавать только по очереди, так как линия связи в данном случае единственная. Если несколько компьютеров будут передавать информацию одновременно, она исказится в результате наложения (конфликта, коллизии). В шине всегда реализуется режим так называемого полудуплексного (half duplex) обмена (в обоих направлениях, но по очереди, а не одновременно).

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

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

Рис. 1.9. Обрыв кабеля в сети с топологией шина

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

Казалось бы, при обрыве кабеля получаются две вполне работоспособные шины (рис. 1.9). Однако надо учитывать, что из-за особенностей распространения электрических сигналов по длинным линиям связи необходимо предусматривать включение на концах шины специальных согласующих устройств, терминаторов, показанных на рис. 1.5 и 1.9 в виде прямоугольников. Без включения терминаторов сигнал отражается от конца линии и искажается так, что связь по сети становится невозможной. В случае разрыва или повреждения кабеля нарушается согласование линии связи, и прекращается обмен даже между теми компьютерами, которые остались соединенными между собой. Подробнее о согласовании будет изложено в специальном разделе книги. Короткое замыкание в любой точке кабеля шины выводит из строя всю сеть.

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

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

Если принять, что сигнал в кабеле сети ослабляется до предельно допустимого уровня на длине L>пр>, то полная длина шины не может превышать величины L>пр>. В этом смысле шина обеспечивает наименьшую длину по сравнению с другими базовыми топологиями.

Для увеличения длины сети с топологией шина часто используют несколько сегментов (частей сети, каждый из которых представляет собой шину), соединенных между собой с помощью специальных усилителей и восстановителей сигналов — репитеров или повторителей (на рис. 1.10 показано соединение двух сегментов, предельная длина сети в этом случае возрастает до 2 L>пр>, так как каждый из сегментов может быть длиной L>пр>). Однако такое наращивание длины сети не может продолжаться бесконечно. Ограничения на длину связаны с конечной скоростью распространения сигналов по линиям связи.

Рис. 1.10. Соединение сегментов сети типа шина с помощью репитера

Топология звезда

Звезда — это единственная топология сети с явно выделенным центром, к которому подключаются все остальные абоненты. Обмен информацией идет исключительно через центральный компьютер, на который ложится большая нагрузка, поэтому ничем другим, кроме сети, он, как правило, заниматься не может. Понятно, что сетевое оборудование центрального абонента должно быть существенно более сложным, чем оборудование периферийных абонентов. О равноправии всех абонентов (как в шине) в данном случае говорить не приходится. Обычно центральный компьютер самый мощный, именно на него возлагаются все функции по управлению обменом. Никакие конфликты в сети с топологией звезда в принципе невозможны, так как управление полностью централизовано.

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

Обрыв кабеля или короткое замыкание в нем при топологии звезда нарушает обмен только с одним компьютером, а все остальные компьютеры могут нормально продолжать работу.

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

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

Серьезный недостаток топологии звезда состоит в жестком ограничении количества абонентов. Обычно центральный абонент может обслуживать не более 8—16 периферийных абонентов. В этих пределах подключение новых абонентов довольно просто, но за ними оно просто невозможно. В звезде допустимо подключение вместо периферийного еще одного центрального абонента (в результате получается топология из нескольких соединенных между собой звезд).

Звезда, показанная на рис. 1.6, носит название активной или истинной звезды. Существует также топология, называемая пассивной звездой, которая только внешне похожа на звезду (рис. 1.11). В настоящее время она распространена гораздо более широко, чем активная звезда. Достаточно сказать, что она используется в наиболее популярной сегодня сети Ethernet.

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

Рис. 1.11. Топология пассивная звезда и ее эквивалентная схема

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

Можно выделить также промежуточный тип топологии между активной и пассивной звездой. В этом случае концентратор не только ретранслирует поступающие на него сигналы, но и производит управление обменом, однако сам в обмене не участвует (так сделано в сети 100VG-AnyLAN).

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

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

Топология кольцо

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

Важная особенность кольца состоит в том, что каждый компьютер ретранслирует (восстанавливает, усиливает) приходящий к нему сигнал, то есть выступает в роли репитера. Затухание сигнала во всем кольце не имеет никакого значения, важно только затухание между соседними компьютерами кольца. Если предельная длина кабеля, ограниченная затуханием, составляет L>пр>, то суммарная длина кольца может достигать NL>пр>, где N — количество компьютеров в кольце. Полный размер сети в пределе будет NL>пр>/2, так как кольцо придется сложить вдвое. На практике размеры кольцевых сетей достигают десятков километров (например, в сети FDDI). Кольцо в этом отношении существенно превосходит любые другие топологии.

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

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

Рис. 1.12. Сеть с двумя кольцами

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

Точно так же обрыв или короткое замыкание в любом из кабелей кольца делает работу всей сети невозможной. Из трех рассмотренных топологий кольцо наиболее уязвимо к повреждениям кабеля, поэтому в случае топологии кольца обычно предусматривают прокладку двух (или более) параллельных линий связи, одна из которых находится в резерве.

Иногда сеть с топологией кольцо выполняется на основе двух параллельных кольцевых линий связи, передающих информацию в противоположных направлениях (рис. 1.12). Цель подобного решения — увеличение (в идеале — вдвое) скорости передачи информации по сети. К тому же при повреждении одного из кабелей сеть может работать с другим кабелем (правда, предельная скорость уменьшится).

Другие топологии

Кроме трех рассмотренных базовых топологий нередко применяется также сетевая топология дерево (tree), которую можно рассматривать как комбинацию нескольких звезд. Причем, как и в случае звезды, дерево может быть активным или истинным (рис. 1.13) и пассивным (рис. 1.14). При активном дереве в центрах объединения нескольких линий связи находятся центральные компьютеры, а при пассивном — концентраторы (хабы).

Рис. 1.13. Топология активное дерево

Рис. 1.14. Топология пассивное дерево. К — концентраторы

Довольно часто применяются комбинированные топологии, среди которых наиболее распространены звездно-шинная (рис. 1.15) и звездно-кольцевая (рис. 1.16).

Рис. 1.15. Пример звездно-шинной топологии

Рис. 1.16. Пример звездно-кольцевой топологии

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

В случае звездно-кольцевой (star-ring) топологии в кольцо объединяются не сами компьютеры, а специальные концентраторы (изображенные на рис. 1.16 в виде прямоугольников), к которым в свою очередь подключаются компьютеры с помощью звездообразных двойных линий связи. В действительности все компьютеры сети включаются в замкнутое кольцо, так как внутри концентраторов линии связи образуют замкнутый контур (как показано на рис. 1.16). Данная топология дает возможность комбинировать преимущества звездной и кольцевой топологий. Например, концентраторы позволяют собрать в одно место все точки подключения кабелей сети. Если говорить о распространении информации, данная топология равноценна классическому кольцу.

В заключение надо также сказать о сеточной топологии (mesh), при которой компьютеры связываются между собой не одной, а многими линиями связи, образующими сетку (рис. 1.17).

Рис. 1.17. Сеточная топология: полная (а) и частичная (б)

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

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

6. Интернет технологии. Язык HTML. Расположение текстов в Web страницах

Internet - всемирная компьютерная сеть, совокупность технических средств и программного обеспечения, стандартов и договоренностей, позволяющих поддерживать связь между различными компьютерными сетями в мире. Internet — это все сети, которые, взаимодействуя с помощью протокола IP, образуют единое информационное пространство для своих пользователей. Виды доступа к сети

Имеются несколько видов доступа к услугам сети Internet:

    Непосредственный доступ - выделенная линия

    Dial-Up - диалап;

    Доступ UUCP

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

Диалап позволяет получить доступ к Internet при предъявлении логического имени (логина - LOGIcal Name). Доступ UUCP касается компьютеров с операционной системой UNIX, которые поддерживают сервис, называемый UUCP и позволяющий пересылать данные по стандартным телефонным линиям.

Сервисы Internet

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

www - сервис поиска и просмотра гипертекстовых документов, включающих в себя графику, звук и видео.

Тelnet - сервис удаленного доступа к компьютерам. Дает возможность абоненту работать на любой ЭВМ сети Internet как на своей собственной, т.е. запускать программы, читать файлы и т.д.

FTP (File Transfer Protocol) - протокол передачи файлов. Дает возможность абоненту обмениваться двоичными и текстовыми файлами с любым компьютером сети. Установив связь с удаленным компьютером, пользователь может скопировать файл с удаленного компьютера на свой или скопировать файл со своего компьютера на удаленный. Файлы, доступные для FTP, объединены в FTP-архивы - коллекции файлов, структурированные по каталогам и тематикам. Крупные и хорошо структурированные FTP-архивы обеспечивают пользователей индексом - списком всех файлов, имеющихся в этом архиве, с описаниями и названиями каталогов, где эти файлы расположены. Такой индекс хранится в файле с названием index в корневом каталоге ftp - архива.

Е-mail - сервис передачи электронной почты - обмен почтовыми сообщениями с любым абонентом сети Internet. Существует возможность отправки как текстовых, так и двоичных файлов.

NFS (Network File System) - распределенная файловая система. Дает возможность абоненту пользоваться файловой системой удаленного компьютера, как своей собственной.

Кроме вышеперечисленных основных услуг, сеть Internet предоставляет также следующие специфические услуги:

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

Finger - получение информации о пользователях удаленного компьютера.

Webster - сетевая версия толкового словаря английского языка.

Факс-сервис - дает возможность пользователю отправлять сообщения по факсимильной связи, пользуясь факс - сервером сети.

Электронный переводчик - производит перевод присланного на него текста с одного языка на другой. Обращение к электронным переводчикам происходит посредством электронной почты.

Шлюзы - дают возможность абоненту отправлять сообщения в сети, не работающие с протоколами TCP/IP - Fido, Goldnet, АТ50.

Средство просмотра - это программа для просмотра страниц Web.

Начальная страница - самая первая страница, которая появляется на экране компьютера, когда он подключается к определенному серверу WWW.

URL (Universal Resource Locator) - это адрес в Internet, который указывет на конкретную Web-страницу или какой-либо другой ресурс. Примером URL может служить - http://www.altavista.com/

Гиперссылка - это некоторый фрагмент (объект) страницы WWW который является указателем на другой ресурс Internet, выбрав который можно перейти к этому ресурсу Internet. Если в некотором месте Web-страницы указатель мыши принимает форму указывающего пальца, значит в этом месте находится гиперссылка.

HTTP (Hypertext Transfer Protocol) - Протокол передачи данных, при помощи которого по сети Internet пересылаются документы HTML.

Создание документов в стандарте HTML

HTML – введение

HyperText Markup Language (HTML) является стандартным языком, предназначенным для создания гипертекстовых документов в среде WEB. HTML-документы могут просматриваться различными типами WEB-браузеров. Когда документ создан с использованием HTML, WEB-браузер может интерпретировать HTML для выделения различных элементов документа и первичной их обработки. Использование HTML позволяет форматировать документы для их представления с использованием шрифтов, линий и других графических элементов на любой системе, их просматривающей.

Большинство документов имеют стандартные элементы, такие, как заголовок, параграфы или списки. Используя, тэги HTML вы можете, обозначать данные элементы, обеспечивая WEB-браузеры минимальной информацией для отображения данных элементов, сохраняя в целом общую структуру и информационную полноту документов. Все что необходимо, чтобы прочитать HTML-документ - это WEB-браузер, который интерпретирует тэги HTML и воспроизводит на экране документ в виде, который ему придает автор.

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

HTML-тэги могут быть условно разделены на две категории:

    тэги, определяющие, как будет отображаться WEB-браузером тело документа в целом

    тэги, описывающие общие свойства документа, такие как заголовок или автор документа

Запомните, что основное преимущество HTML заключается в том, что ваш документ может быть просмотрен на WEB-браузерах различных типов и на различных платформах.

Основные положения

Все тэги HTML начинаются с "<" (левой угловой скобки) и заканчиваются символом ">" (правой угловой скобки). Как правило, существует стартовый тэг и завершающий тэг. Для примера приведем тэги заголовка, определяющие текст, находящийся внутри стартового и завершающего тэга и описывающий заголовок документа:

<TITLE> Заголовок документа </TITLE>

Завершающий тэг выглядит также, как стартовый, и отличается от него прямым слэшем перед текстом внутри угловых скобок. В данном примере тэг <TITLE> говорит WEB-браузеру об использовании формата заголовка, а тэг </TITLE> - о завершении текста заголовка.

Некоторые тэги, такие, как <P> (тэг, определяющий абзац), не требуют завершающего тэга, но его использование придает исходному тексту документа улучшенную читаемость и структурируемость.

HTML не реагирует на регистр символов, описывающих тэг, и приведенный ранее пример может выглядеть следующим образом:

<title> Заголовок документа </title>

Внимание! Дополнительные пробелы, символы табуляции и возврата каретки, добавленные в исходный текст HTML-документа для его лучшей читаемости, будут проигнорированы WEB-браузером при интерпретации документа. HTML-документ может включать вышеописанные элементы только если они помещены внутрь тэгов <PRE> и </PRE>. Более подробно о тэгах <PRE> будет написано ниже.

Структура документа

Когда WEB-браузер получает документ, он определяет, как документ должен быть интерпретирован. Самый первый тэг, который встречается в документе, должен быть тэгом <HTML>. Данный тэг сообщает WEB-браузеру, что ваш документ написан с использованием HTML. Минимальный HTML-документ будет выглядеть так:

<HTML> ...тело документа... </HTML>

Заголовочная часть документа <HEAD>

Тэг заголовочной части документа должен быть использован сразу после тэга <HTML> и более нигде в теле документа. Данный тэг представляет собой общее описание документа. Избегайте размещать какой-либо текст внутри тэга <HEAD>. Стартовый тэг <HEAD> помещается непосредственно перед тэгом <TITLE> и другими тэгами, описывающими документ, а завершающий тэг </HEAD> размещается сразу после окончания описания документа. Например:

<HTML>

<HEAD>

<TITLE> Список сотрудников </TITLE>

</HEAD>

Внимание! Технически, стартовые и завершающие тэги типа <HTML>, <HEAD> и <BODY> необязательны. Но настоятельно рекомендуется их использовать, поскольку использование данных тэгов позволяет WEB-браузеру уверенно разделить заголовочную часть документа и непосредственно смысловую часть.

Заголовок документа <TITLE>

Большинство WEB-браузеров отображают содержимое тэга <TITLE> в заголовке окна, содержащего документ и в файле закладок, если он поддерживается WEB-браузером. Заголовок, ограниченный тэгами <TITLE> и </TITLE>, размещается внутри <HEAD>-тэгов, как показано выше на примере. Заголовок документа не появляется при отображении самого документа в окне.

Комментарии

Как любой язык, HTML позволяет вставлять в тело документа комментарии, которые сохраняются при передаче документа по сети, но не отображаются браузером. Синтаксис комментария:

<!-- Это комментарий -->

Комментарии могут встречаться в документе где угодно и в любом количестве.

Тэги тела документа

Тэги тела документа идентифицируют отображаемые в окне компоненты HTML-документа. Тело документа может содержать ссылки на другие документы, текст и другую форматированную информацию.

Тело документа <BODY>

Тело документа должно находиться между тэгами <BODY> и </BODY>. Это та часть документа, которая отображается как текстовая и графическая (смысловая) информация вашего документа.

Уровни заголовков <Hx>

Когда пишется HTML-документ, текст структурно делится на просто текст, заголовки частей текста, заголовки более высокого уровня и т.д. Первый уровень заголовков (самый большой) обозначается цифрой 1, следующий - 2, и т.д. Большинство браузеров поддерживает интерпретацию шести уровней заголовков, определяя каждому из них собственный стиль. Заголовки выше шестого уровня не являются стандартом и могут не поддерживаться браузером. Заголовок самого верхнего уровня имеет признак "1". Синтакс заголовка уровня 1 следующий:

<H2> Заголовок первого уровня </H2>

Заголовки другого уровня могут быть представлены в общем случае так:

<Hx> Заголовок x-го уровня </Hx>

где x - цифра от 1 до 6, определяющая уровень заголовка.

Тэг абзаца <P>

В отличии от большинства текстовых процессоров, в HTML-документе обычно игнорируются символы возврата каретки. Физический разрыв абзаца может находиться в любом месте исходного текста документа (для удобства его читаемости). Однако браузер разделяет абзацы только при наличии тэга <P>. Если вы не разделите абзацы тэгом <P>, ваш документ будет выглядеть как один большой абзац.

Дополнительные параметры тэга <P>:

<P ALIGN=left|center|right>

позволяют выравнивать абзац по левому краю, центру и правому краю соответственно.

Центрирование элементов документа

Вы можете центрировать все элементы документа в окне браузера. Для этого можно использовать тэг <CENTER>.

Все элементы между тэгами <CENTER> и </CENTER> будут находиться в центре окна

Тэг преформатирования <PRE>

Тэг преформатирования, <PRE>, позволяет представлять текст со специфическим форматированием на экране. Предварительно сформатированный текст заканчивается завершающим тэгом </PRE>. Внутри предварительно сформатированного текста разрешается использовать:

    перевод строки

    символы табуляции (сдвиг на 8 символов вправо)

    непропорциональный шрифт, устанавливаемый браузером

Использование тэгов, определяющих формат абзаца, таких как <Hx> или <ADDRESS>, будет игнорироваться браузером при помещении их между тэгами <PRE> и </PRE>.

Далее идет несколько более подробный пример, собранный из предыдущих:

<HTML>

<HEAD>

<TITLE> Список сотрудников </TITLE>

</HEAD>

<BODY>

<H3> Список сотрудников нашей фирмы </H3>

<H3> Составлено: 30 июля 1996 года </H3>

Данный список содержит фамилии, имена и отчества

всех сотрудников нашей компании. <P>

Список может быть использован только в служебных целях.

<P>

</BODY>

</HTML>

Вот, что вы увидите на экране браузера:

Список сотрудников фирмы

Составлено: 30 июля 2004 года

Данный список содержит фамилии, имена и отчества всех сотрудников нашей компании.

Список может быть использован только в служебных целях.

Внимание! Заголовок "Список сотрудников" не отображен браузером как часть документа. Он появится в заголовке окна браузера.

Разрыв строки <BR>

Тэг <BR> извещает браузер о разрыве строки. Наилучший пример использования данного тэга - форматированный адрес или любая другая последовательность строк, где браузер должен отображать их одну под другой. Например:

Алексей Ярцев <BR>

Дмитровское шоссе, <BR>

д.9Б, офис 326 <BR>

Дополнительный параметр позволяет расширить возможности тэга <BR>.

<BR CLEAR=left|right|all >

Данный параметр позволяет выполнить не просто перевод строки, а разместить следующую строку, начиная с чистой левой (left), правой (right) или обоих (all) границ окна браузера. Например, если рядом с текстом слева встречается рисунок, то можно использовать тэг <BR> для смещения текста ниже рисунка:

<p> Как вы можете видеть, данная схема демонстрирует связь<BR CLEAR=left>

<img src="http://www.softexpress.com/images/schema1.gif" align=baseline>

Мастер/Деталь </p>

Неразрывная строка <NOBR>

Если вы не хотите, чтобы браузер автоматически переносил строку, то вы можете обозначить ее тэгами <NOBR> и </NOBR>. В этом случае браузер не будет переносить строку даже если она выходит за нраницы экрана; вместо этого браузер позволит горизонтально прокручивать окно. Например:

<NOBR> Данная строка является самой длинной строкой документа, которая не допускает какого-либо разбиения где бы то ни было </NOBR>

Если же вы хотите все же позволить разбиение данной строки на две, но в строго запланированном месте, то вставьте тэг <WBR> в это место. Например:

<NOBR> Данная строка является самой длинной строкой документа,<WBR> которая не допускает какого-либо разбиения где бы то ни было </NOBR>

Данная строка является самой длинной строкой документа, которая не допускает какого-либо разбиения, где бы то ни было.

Список базовых тэгов HTML

Стартовый

Завершающий

Описание

<HTML>

</HTML>

Обозначение HTML-документа

<HEAD>

</HEAD>

Заголовочная часть документа

<TITLE>

</TITLE>

Заголовок документа

<BODY>

</BODY>

Тело документа

<H2>

</H2>

Заголовок абзаца первого уровня

<H3>

</H3>

Заголовок абзаца второго уровня

<H3>

</H3>

Заголовок абзаца третьего уровня

<H4>

</H4>

Заголовок абзаца четвертого уровня

<H5>

</H5>

Заголовок абзаца пятого уровня

<H6>

</H6>

Заголовок абзаца шестого уровня

<P>

</P>

Абзац

<PRE>

</PRE>

Форматированный текст

<BR>

Перевод строки без конца абзаца

<BLOCKQUOTE>

</BLOCKQUOTE>

Цитата

Описанные ранее тэги - это все, что необходимо вам для того, чтобы начать работать с HTML.

С использованием описанных тэгов вы можете создать простой HTML-документ. Однако, следующие разделы позволят вам существенно улучшить внешний вид ваших документов и опишут новые возможности HTML.

Тэги списков

Существует три основных вида списков в HTML-документе:

    пронуменрованный

    непронуменрованный

    список описаний

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

Пронумерованные списки

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

Пронумерованный список начинается стартовым тэгом <OL> и завершается тэгом </OL>. Каждый элемент списка начинается с тэга <LI>. Например:

<OL>

<LI> Программирование

<LI> Алгоритмизация

<LI> Проектирование

</OL>

    Программирование

    Алгоритмизация

    Проектирование

Тэг <OL> может иметь параметры:

<OL TYPE=A|a|I|i|1 START=n>

где:

TYPE

Вид счетчика:

      A - большие латинские буквы (A,B,C...)

      a - маленькие латинские буквы (a,b,c...)

      I - большие римские цифры (I,II,III...)

      i - маленькие римские цифры (i,ii,iii...)

      1 - обычные цифры (1,2,3...)

START=n

Число, с которого начинается отсчет

Например:

<OL TYPE=I START=15>

<LI> Программирование

<LI> Алгоритмизация

<LI> Проектирование

</OL>

    Программирование

    Алгоритмизация

    Проектирование

Непронумерованные списки

Для непронумерованных списков браузер обычно использует маркеры для пометки элемента списка. Вид маркера, как правило, настраивает пользователь браузера.

Пронумерованный список начинается стартовым тэгом <UL> и завершается тэгом </UL>. Каждый элемент списка начинается с тэга <LI>. Например:

<UL>

<LI> Программирование

<LI> Алгоритмизация

<LI> Проектирование

</UL>

    Программирование

    Алгоритмизация

    Проектирование

Тэг <UL> может иметь параметр:

<UL TYPE=disc|circle|square>

Тип тэга <UL> определяет внешний вид маркера как вид по умолчанию (disc), круглый (circle) или квадратный (square). Например:

<UL TYPE=square>

<LI> Программирование

<LI> Алгоритмизация

<LI> Проектирование

</UL>

    Программирование

    Алгоритмизация

    Проектирование

Вложенные списки. Дадим пример вложенных списков:

<HTML>

<HEAD>

<TITLE> Список сотрудников </TITLE>

</HEAD>

<BODY>

<H3> Список сотрудников нашей фирмы </H3>

<H3> Составлено: 30 июля 2004 года </H3>

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

<P>

<OL>

<LI> Дирекция

<UL>

<LI> Иванов И.И.

<LI> Петров К.В.

</UL>

<LI> Отдел маркетинга

<UL>

<LI> Борисов Е.Л.

<LI> Самсонов Д.М.

</UL>

</OL>

</BODY>

</HTML>

Вот, что вы увидите на экране браузера:

Список сотрудников нашей фирмы

Составлено: 30 июля 2004 года

Данный список содержит фамилии, имена и отчества всех сотрудников нашей компании.

Список может быть использован только в служебных целях.

    Дирекция

      Иванов И.И.

      Петров К.В.

    Отдел маркетинга

      Варшавская Е.Л.

      Самсонов Д.М.

Элемент списка <LI>

Тэг <LI> может иметь параметры:

<OL TYPE=disc|circle|squade> или <OL TYPE=A|a|I|i|1 VALUE=n>

в зависимости от того, в списке какого вида находится данный элемент.

TYPE

Вид маркера (см. <UL>) или счетчика (см.OL)

VALUE=n

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

Например:

<OL TYPE=I START=15>

<LI> Программирование

<LI TYPE=i VALUE=25> Алгоритмизация

<LI> Проектирование

</OL>

    Программирование

    Алгоритмизация

    Проектирование

Список определений

Список определений начинается с тэга <DL> и завершается тэгом </DL>. Данный список служит для создание списков типа "термин"-"описание". Каждый термин начинается тэгом <DT> , а описание - тэгом <DD>. Например:

<DL>

<DT> <B> Отдел маркетинга </B>

<DD> Данный отдел занимается продвижением продуктов и услуг

<DT> <B> Финансовый отдел </B>

<DD> Данный отдел занимается всеми финансовыми операциями

<DT> <B> Отдел кадров </B>

<DD> Данный отдел занимается учетом и набором новых сотрудников фирмы, распределением отпусков, отслеживанием больничных листов и т.д.

</DL>

Отдел маркетинга

Данный отдел занимается продвижением продуктов и услуг

Финансовый отдел

Данный отдел занимается всеми финансовыми операциями

Отдел кадров

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

Гипертекстовые ссылки

Гипертекстовые ссылки являются ключевым компонентом, делающим WEB привлекательным для пользователей. Добавляя гипертекстовые ссылки (далее - ссылки), вы делаете набор документов связанным и структурированным, что позволяет пользователю получать необходимую ему информацию максимально быстро и удобно.

Ссылки имеют стандартный формат, что позволяет браузеру интерпретировать их и выполнять необходимые функции (вызывать методы) в зависимости от типа ссылки. Ссылки могут указывать на другой документ, специальное место данного документа или выполнять другие функции, например запрашивать файл по FTP-протоколу для отображения его браузером. URL может указывать на специальное место по абсолютному пути доступа, или указывать на документ в текущем пути доступа, что часто используется при организации больших структурированных WEB-сайтов.

Внимание! Вы можете использовать ссылки как для перемещения по документу, так и для перемещения от одного документа к другому. Однако, HTML не поддерживает возврат на предыдущую ссылку, если перемещение происходило внутри документа. Если вы используете ссылки внутри документа, а затем нажимаете на клавишу Back, то вы не перейдете на предыдущую ссылку, а вернетесь на ту часть документа, которую вы просматривали до этого.

URL

HTML использует URL (Uniform Resource Locator) для представления гипертекстовых ссылок и ссылок на сетевые сервисы внутри HTML-документа. Первая часть URL (до двоеточия) описывает метод доступа или сетевой сервис. Другая часть URL (после двоеточия) интерпретируется в зависимости от метода доступа. Обычно, два прямых слэша после двоеточия обозначают имя машины:

method://machine-name/path/foo.php

Следующий пример представляет собой вызов HTML-документа index.php с сервера www.softexpress.com с использованием HTTP протокола:

http://www.softexpress.com/index.php

Uniform Resource Locator имеет следующий формат:

method://servername:port/pathname#anchor

Опишем каждый из компонентов URL:

METHOD

Имя операции, которая будет выполняться при интерпретации данного URL. Наиболее часто используемые методы:

file: чтение файла с локального диска. Имя файла интерпретируется для локальной машины пользователя. Данный метод используется для отображения какого-либо файла, находящегося на машине пользователя. Например:

file:/home/alex/index.php - отобажает файл index.php из каталога /home/alex на пользовательской машине

http: доступ к WEB-странице в сети с использованием HTTP-протокола. (Это наиболее часто используемый метод доступа к какому-либо HTML-документу в сети). Например:

http://www.softexpress.com/ - доступ к Home-странице компании SoftExpress

ftp: запрос файла с анонимного FTP-сервера. Например:

ftp://hostname/directory/filename

mailto: активизирует почтовую сессию с указанным пользователем и хостом. Например:

mailto:info@softexpress.com - активизирует сессию посылки сообщения пользователю info на машине softexpress.com, если браузер поддерживает запуск электронной почты. Заметьте, что метод mailto: не требует указание слэшей после двоеточия (как правило, после двоеточия сразу идет электронный адрес абонента)

telnet: обращение к службе telnet

news: вызов службы новостей, если браузер ее поддерживает. Например:

news:relcom.www.support

SERVERNAME

Необязательный параметр, описывающий полное сетевое имя машины. Например:

www.softexpress.com - полное сетевое имя сервера фирмы СофтСервис.

Если имя сервера не указано, то ссылка считается локальной, и полный путь, указанный далее в URL вычисляется на той машине, с которой взят HTML-документ, содержащий данную ссылку. Вместо символьного имени машины может быть использован IP-адрес, однако это не рекомендуется из-за возможного пересечения с фиксированными локальными адресами внутренней сети.

PORT

Номер порта TCP на котором функционирует WEB-сервер. Если порт не указан, то "по умолчанию" используется порт 80. Данный параметр (port) не используется в подавляющем большинстве URL.

PATHNAME

Частичный или полный путь к документу, который должен вызваться в результате интерпретации URL. Различные WEB-сервера сконфигурированы по разному для интерпретации пути доступа к документу. Например, при использовании CGI скриптов (исполняемых программ), они обычно собираются в одном или нескольких выделенных каталогах, путь к которым записан в специальных параметрах WEB-сервера. Для данных каталогов WEB-сервером выделяется специальный логический путь, который и используется в URL. Если WEB-сервер видит данный путь, то запрашиваемый файл интерпретируется как исполняемый модуль. В противном случае, запрашиваемый файл интерпретируется просто как файл данных, даже если он является исполняемым модулем. Например:

http://www.softexpress.com/cgi-win/handle.exe

В данном примере HTTP-сервер должен вызвать CGI-скрипт с именем handle.exe, который находится на машине с сетевым именем www.softexpress.com. Путь к данному скрипту - /cgi-win/ - в действительности является виртуальным путем (выделенным сервером для исполняемых модулей). Заметьте, что при описании пути используется UNIX-подобный синтаксис, где, в отличии от DOS и Windows используются прямые слэши вместо обратных. Если после сетевого имени машины сразу идет имя документа, то он должен находиться в корневом каталоге на удаленной машине или (что чаще) в каталоге, выделенном WEB-сервером в качестве корневого. Если же URL закагчивается сетевым именем машины, то в качестве документа запрашивается документ из корневого каталога удаленной машины с именем, установленным в настройках WEB-сервера (как правило, это index.php).

#ANCHOR

Данный элемент является ссылкой на строку (точку) внутри HTML-документа. Большинство браузеров, встречая после имени документа данный элемент, размещают документ на экране таким образом, что указанная строка документа помещается в верхнюю строку рабочего окна браузера. Точки, на которые ссылается #anchor, указываются в документе при помощи тэга NAME, как это будет описано далее.

7. Выбор структур Web – страниц

Структура ссылок в HTML-документе

Пока что мы рассмотрели только внешний вид URL. Для того, чтобы браузер отобразил ссылку на URL, необходимо отчетить URL специальными тэгами в HTML-документе. Синтаксис HTML, позволяющий жто сделать - следующий:

<A HREF="URL"> текст-который-будет-подсвечен-как-ссылка </A>

Тэг <A HREF="URL">открывает описание ссылки, а тэг </A> - закрывает его. Любой текст, находящийся между данными двумя тэгами подсвечивается специальным образом Web-браузером. Обычно этот текст отображается подчеркнутым и выделенным синим (или другим заданным пользователем) цветом. Текст, обозначающий URL, не отображается браузером, а используется только для выполнения предписанных им действий при активизации ссылки (обычно при щелчке мыши на подсвеченном или подчеркнутом тексте).

Ссылки на точки внутри документа

Вы можете делать ссылки на различные участки или разделы одного и того же документа, используя специальных скрытый маркер для этих разделов. Это позволяет быстро переходить от раздела к разделу внутри документа, не используя скроллирование экрана. Как только вы щелкнете на ссылке, браузер переместит вас на указанный раздел документа, а строка, в которой стоит маркер данного раздела (обычно, первая строка раздела или заголовок раздела) будет размещена на первой строке окна браузера (если данная строка не присутствует уже на экране браузера).

Для создания такой ссылки необходимо выполнить следующие шаги:

1. Создайте маркер раздела. Синтаксис данного маркера следующий:

<A NAME="named_anchor"> Текст-который-отобразится-в-первой-строке-браузера </A>

2. Создайте ссылку на данный маркер:

<A HREF="#named_anchor"> Текст </A>

Например:

<p><b>Список разделов</b></p>

<ul> <li><a href="#ex1">Раздел 1</a></li>

<li><a href="#ex2">Раздел 2</a></li> </ul>

<p><a name="ex1"></a>Раздел 1</p>

<ul> <p>Текст раздела 1</p> </ul>

<p><a name="ex2"></a>Раздел 2</p>

<ul> <p>Текст раздела 2 <br></p>

Список разделов

    Раздел 1

    Раздел 2

Раздел 1

Текст раздела 1

Раздел 2

Текст раздела 2

Символы "#ex1" сообщает вашему браузеру, что необходимо найти в данном HTML-документе маркер с именем "ex1".

Когда пользователь щелкнет мышью на строке "Раздел 1", браузер перейдет сразу к разделу 1. Внимание! Как ранее было показано в синтаксисе URL, маркер раздела может быть поставлен как в том же документе, который просматривается в текущий момент, так и в другом документе. Во втором случае браузер осуществит подгруздку другого документа и перейдет к указанному для него разделу.

Графика внутри HTML-документа

Одна из наиболее привлекательных черт Web - возможность включения ссылок на графические и иные типы данных в HTML-документ. Делается это при помощи тэга <img...ISMAP>. Использование данного тэга позволяет значительно улучшить внешний вид и функциональность документов.

Существует два способа использования графики в HTML-документах. Первый - это внедрение графических образов в документ, что позволяет пользователю видеть изображения непосредственно в контексте других элементов документа. Это наиболее используемая техника при проектировании документов, называемая иногда "inline image". Синтаксис тэга:

<img SRC="URL" ALT="text" HEIGHT=n1 WIDTH=n2 ALIGN=top|middle|bottom|texttop ISMAP>

Опишем элементы синтаксиса тэга:

URL

Обязательный параметр, имеющий такой же синтаксис, как и стандартный URL. Данный URL указывает браузеру где находится рисунок. Рисунок должен храниться в графическом формате, поддерживаемом браузером. На сегодняшний день форматы GIF и JPG поддерживаются большинством браузеров.

ALT="text"

Данный необязательный элемент задает текст, который будет отображен браузером, не поддерживающим отображение графики или с отключенной подкачкой изображений. Обычно, это короткое описание изображения, которое пользователь мог бы или сможет увидеть на экране. Если данный параметр отсутствует, то на месте рисунка большинство браузеров выводит пиктограмму (иконку), активизировав которую, пользователь может увидеть изображение. Тэг ALT рекомендуется, если ваши пользователи используют браузер, не поддерживающий графический режим, например Lynx.

HEIGTH=n1

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

WIDTH=n2

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

ALIGN

Данный параметр используется, чтобы сообщить браузеру, куда поместить следующий блок текста. Это позволяет более строго задать расположение элементов на экране. Если данный параметр не используется, то большинство браузеров располагает изображение в левой части экрана, а текст справа от него.

ISMAP

Этот параметр сообщает браузеру, что данное изображение позволяет пользователю выполнять какие-либо действия, щелкая мышью на определенном месте изображения. Данная возможность является расширением HTML и будет обсуждена нами позже.

Приведем пример использования данного тэга:

<img SRC="http://www.softexpress.com/images/nekton.jpg" ALT="СофтСервис лого">

С версии HTML 2.0 у тэга <img> появились дополнительные параметры:

<img SRC="URL" ALT="text" HEIGHT=n1 WIDTH=n2 ALIGN=top|middle|bottom|texttop| absmiddle|baseline|absbottom BORDER=n3 VSPACE=n4 HSPACE=n5 ISMAP>

Новые параметры:

BORDER

Данный параметр позволяет автору определить ширину рамки вокруг рисунка.

VSPACE

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

HSPACE

То же самое, что и VSPACE, но только по горизантали.

Фоновые рисунки

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

Описание фонового рисунка включается в тэг BODY и выглядит следующим образом:

<BODY BACKGROUND="picture.gif">

Задание стандартных цветов

Многие HTML-авторы любят использовать заранее предопределенные цвета фона документа, обычного текста и ссылок. Чтобы задать эти цвета, необходимо включить в тэг <BODY> дополнительные параметры:

<BODY BGCOLOR="#XXXXXX" TEXT="#XXXXXX" LINK="#XXXXXX">

где каждый из параметров определяет цвет того или иного элемента. Опишем эти параметры:

BGCOLOR

Цвет фона документа

TEXT

Цвет простого текста документа

LINK

Цвет ссылки

Цвет задается шестизначным числом в шестнадцатиричном формате по схеме RGB (Red, Green, Blue). Цвет #000000 соответствует черному, а цвет #FFFFFF - белому. Например:

<BODY BGCOLOR="#000000" TEXT="#FFFFFF" LINK="#9690CC">

Данная строка определяет белый цвет фона документа, черный текст и серебристые ссылки.

Горизонтальная линия

Используя тэг <HR> вы можете разделить текст горизонтальной чертой.

Формат тэга:

<HR SIZE=number WIDTH=number|percent ALIGN=left|right|center NOSHADE>

Параметры тэга:

SIZE

Толщина линии в пикселях.

WIDTH

Ширина линии в пикселях или процентах от ширина окна браузера.

ALIGN

Расположение на экране (слева | по центру | справа).

NOSHADE

По умолчанию линия представлена в 3D виде с тенью. NOSHADE позволяет представить линию просто однотонной темной полоской.

Добавление стилей в HTML документ

HTML позволяет использовать различные стили шрифтов для выделения текстовой информации в ваших документах. Вот короткий список стилей, поддерживаемых большинством браузеров:

    bold (жирный)

    italic (наклонный)

    mono spaced (type writer - с использованием фиксированных шрифтов)

Вы можете комбинировать различные виды стилей, например жирный и наклонный.

Стиль

Элемент или тэг

Результат

Bold

<B> Этот текст жирный </B>

Этот текст жирный

Italic

<I> Этот текст наклонный </I>

Этот текст наклонный

Mono spaced

<TT> Этот текст с непроп. шрифтом </TT>

Этот текст с непроп. шрифтом

Комбинирование стилей позволяет вам отображать в одной строке несколько элементов различными стилями, например:

<b>Жизнь</b> - <i>это <b>песня!</b></i>

Жизнь - это песня!

Внимание! Добавление большого количества стилей и их комбинаций приводит к затруднению чтения текста!

Дополнительные стили:

    big (юольшой)

    small (маленький)

    sub> (подстрочник)

    sup (надстрочник)

Стиль

Элемент или тэг

Результат

Big

Этот текст <BIG> большой </BIG>

Этот текст большой

Small

Этот текст <SMALL> маленький </SMALL>

Этот текст маленький

sub>

Этот текст <sub>> подстрочник </sub>>

Этот текст >подстрочник >

Sup

Этот текст <SUP> надстрочник </SUP>

Этот текст надстрочник

Размер шрифта <FONT SIZE>

Вы можете изменять размер шрифта при помощи тэга:

<FONT SIZE=+|- n>

Шрифт может иметь размер от 1 до 7. Вы можете прямо указать размер шрифта цифрой, или указать смещение относительно базового значения (по умолчанию - 3) в положительную или отрицательную сторону. Базовое значение можно изменить при помощи тэга:

<BASEFONT SIZE=n>

Например:

<p>и

<font SIZE=+1>з</font><font SIZE=+2>м</font>

<font SIZE=+3>е</font><font SIZE=+4>н</font>

<font SIZE=+3>е</font><font SIZE=+2>н</font>

<font SIZE=+1>и</font>

е</p>

изменение

Цвет шрифта <FONT SIZE>

Вы можете изменить цвет шрифта при помощи тэга:

<FONT COLOR="#xxxxxx>

Цвет указывается в RGB-формате (Red-Green-Blue) посредством указания размерности каждой компоненты цвета в шестнадцатиричном формате. Например, белый цвет обозначается "000000", черный - "FFFFFF", синий - "0000FF" и т.п.

<FONT COLOR="#FF0000">

Красный </FONT>

<FONT COLOR="#00FF00">

Зеленый </FONT>

<FONT COLOR="#0000FF">

Синий </FONT>

Красный Зеленый Синий

Специальные тэги HTML

Следующие тэги позволят вам сделать ваш HTML-документ более функциональным.

Тэг <ADDRESS> используется для выделения автора документа и его дреса (например, e-mail). Синтаксис:

<ADDRESS> Адрес-автора </ADDRESS>

Escape-последовательности

Некоторые символы являются управляющими символами в HTML и немогут напрямую использоваться в документе:

    левая угловая скобка "<"

    правая угловая скобка ">"

    амперсанд "&"

    двойные кавычки """

Чтобы использовать данные символы в документе, необходимо заменить их escape-последовательностями:

<

&lt;

>

&gt;

&

&amp;

"

&quot;

Существует большое количество escape-последовательностей для обозначения специальных символов, например "&copy;" для обозначения знака © и &reg; для значка ®, появившихся в HTML 2.0. Одной из особенностей является замена символов во 2-ой части символьной таблицы (после 127-ого символа) на escape-последовательности для передачи текстовых файлов с национальными языками по 7-битным каналам.

Внимание! Escape-последовательности чувствительны к регистру: НЕЛЬЗЯ использовать &LT; вместо &lt;.

HTML формы

Некоторые WWW browser позволяют пользователю, заполнив специальную форму, возвращающую полученное значение, выполнять некоторые действия на вашем WWW-сервере. Когда форма интерпретируется WEB-браузером, создается специальные экранные элементы GUI, такие, как поля ввода, checkboxes, radiobuttons, выпадающие меню, скроллируемые списки, кнопки и т.д. Когда пользователь заполняет форму и нажимает кнопку "Подтверждение" (sub>MIT - специальный тип кнопки, который задается при описании документа), информация, введенна пользователем в форму, посылается HTTP-серверу для обработки и передаче другим программам, работающим под сервером, в соответствии с CGI (Common Gateway Interface) интерфейсом.

Когда вы описываете форму, каждый элемент ввода данных имеет тэг <INPUT>. Когда пользователь помещает данные в элемент формы, инфоромация размещается в разделе VALUE данного элемента.

Синтаксис форм

Все формы начинаются тэгом <FORM> и завершаются тэгом </FORM>.

<FORM METHOD="get|post" ACTION="URL"> Элементы_формы_и_другие_элементы_HTML</FORM>

METHOD

Метод посылки сообщения с данными из формы. В зависимости от используемого метода вы можете посылать результаты ввода данных в форму двумя путями:

    GET: Информация из формы добавляется в конец URL, который был указан в описании заголовка формы. Ваша CGI-программа (CGI-скрипт) получает данные из формы в виде параметра переменной среды QUERY_STRING. Использование метода GET не рекомендуется.

    POST: Данный метод передает всю информацию о форме немедленно после обращения к указанному URL. Ваша CGI-программа получает данные из формы в стандартный поток ввода. Сервер не будет пересылать вам сообщение об окончании пересылки данных в стандартный поток ввода; вместо этого используется переменная среды CONTENT_LENGTH для определения, какое количество данных вам необходимо считать из стандартного потока ввода. Данный метод рекомендуется к использованию.

ACTION

ACTION описывает URL, который будет вызываться для обработки формы. Данный URL почти всегда указывает на CGI-программу, обрабатывающую данную форму.

Тэги формы

TEXTAREA

Тэг <TEXTAREA> используется для того, чтобы позволить пользователю вводить более одной строки информации (свободный текст). Вот пример использовани тэга <TEXTAREA>:

<TEXTAREA NAME="address" ROWS=10 COLS=50>

Москва,

Дмитровкое шоссе,

д.9Б, офис 448

</TEXTAREA>

Атрибуты, используемые внутри тэга <TEXTAREA> описывают внешний вид и имя вводимого значения. Тэг </TEXTAREA> необходим даже тогда, когда поле ввода изначально пустое. Описание атрибутов:

    NAME - имя поля ввода

    ROWS - высота поля ввода в символах

    COLS - ширина поля ввода в символах

Если вы хотите, чтобы в поле ввода по умолчанию выдавался какой-либо текст, то необходимо вставить его внутри тэгов <TEXTAREA> и </TEXTAREA>.

INPUT

Тэг <INPUT> используется для ввода одной строки текста или одного слова. Атрибуты тэга:

    CHECKED - означает, что CHECKBOX или RADIOBUTTON будет выбран.

    MAXLENGTH - определяет количество символов, которое пользователи могут ввести в поле ввода. При превышении количества допустимых символов браузер реагирует на попытку ввода нового символа звуковым сигналом и не дает его ввести. Не путать с атрибутом SIZE. Если MAXLENGTH больше чем SIZE, то в поле осуществляется скроллинг. По умолчанию значение MAXLENGTH равно бесконечности.

    NAME - имя поля ввода. Данное имя используется как уникальный идентификатор поля, по которому, впоследствии, вы сможете получить данные, помещенные пользователем в это поле.

    SIZE - определяет визуальный размер поля ввода на экране в символах.

    SRC – URL, указывающий на картинку (используется совместно с атрибутом IMAGE).

    TYPE - определяет тип поля ввода. По умолчанию это простое поле ввода для одной строки текста. Остальные типы должны быть явно указаны:

CHECKBOX

Используется для простых логических (BOOLEAN) значений. Значение, ассоциированное с именем данного поля, которое будет передаваться в вызываемую CGI-программу, может принимать значение ON или OFF.

HIDDEN

Поля данного типа не отображаются браузером и не дают пользователю изменять присвоенные данному полю по умолчанию значение. Это поле используетс для передачи в CGI-программу статической информации, как то ID прользователя, пароля или другой информации.

IMAGE

Данный тип поля ввода позволяет вам связывать графический рисунок с именем поля. При нажатии мышью на какую-либо часть рисунка будет немедленно вызвана ассоциированная форме CGI-программа. Значения, присвоенные переменной NAME будут выглядеть так - создается две новых переменных: первая имеет имя, обозначенное в поле NAME с добавлением .x в конце имени. В эту переменную будет помещена X-координата точки в пикселах ( считая началом координат левый верхний угол рисунка), на которую указывал курсор мыши в момент нажатия, а переменная с именем, содержащимся в NAME и добавленным .y, будет содержать Y-координату. Все значения атрибута VALUE игнорируются. Само описание картинки осуществляется через атрибут SRC и по синтаксису совпадает с тэгом <img>.

PASSWORD

То же самое, что и атрибут TEXT, но вводимое пользователем значение не отображается браузером на экране.

RADIO

Данный атрибут позволяет вводить одно значение из нескольких альтернатив. Для создания набора альтернатив вам необходимо создать несколько полей ввода с атрибутом TYPE="RADIO" с разными значениями атрибута VALUE, но с одинаковыми значениями атрибута NAME. В CGI-программу будет передано значение типа NAME=VALUE, причем VALUE примет значение атрибута VALUE того поля ввода, которое в данный момент будет выбрано (будет активным). При выборе одного из полей ввода типа RADIO все остальные поля данного типа с тем же именем (атрибут NAME) автоматически станут невыбранными на экране.

RESET

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

sub>MIT

Данный тип обозначает кнопку, при нажатии которой будет вызвана CGI-программа (или URL), описанная в заголовке формы. Атрибут VALUE может содержать строку, которая будет высвечена на кнопке.

TEXT

Данный тип поля ввода описывает однострочное поле ввода. Используйте атрибуты MAXLENGTH и SIZE для определения максимальной длинны вводимого значения в символах и размера отображаемого поля ввода на экране (по умолчанию принимается 20 символов).

    VALUE - присваивает полю значение по умолчанию или значение, которое будет выбрано при использовании типа RADIO (для типа RADIO данный атрибут обязателен)

Меню выбора в формах

Под меню выбора в формах понимают такой элемент интерфейса, как LISTBOX. Существует три типа тэгов меню выбора для форм:

    Select - пользователь выбирает одно значение из фиксированного списка значений, представленных тэгами OPTION. Даннй вид представляется как выпадающий LISTBOX.

    Select single - то же самое, что и Select, но на экране пользователь видит одновременно три элемента выбора. Если их больше, то предоставляется автоматический вертикальный скроллинг.

    Select multiple - позволяет выбрать несколько элементов из LISTBOX.

SELECT

Тэг SELECT позволяет пользователю выбрать значение из фиксированного списка значений. Обычно это представлено выпадающим меню.

Тэг SELECT имеет один или более параметр пежду стартовым тэгом <SELECT> и завершающим </SELECT>. По умолчанию, первый элемент отображается в строке выбора. Вот пример тэга <SELECT>:

<FORM>

<SELECT NAME=group>

<OPTION> AT 386

<OPTION> AT 486

<OPTION> AT 586

</SELECT>

</FORM>

SELECT SINGLE

Тэг SELECT SINGLE - это то же самое, что и Select, но на экране пользователь видит одновременно несколько элементов выбора (три по умолчанию). Если их больше, то предоставляется автоматический вертикальный скроллинг. Количество одновременно отображаемых элементов определяется атрибутом SIZE. Пример:

<FORM>

<SELECT SINGLE NAME=group SIZE=4>

<OPTION> AT 386

<OPTION> AT 486

<OPTION> AT 586

<OPTIONS> Pentium PRO

</SELECT>

</FORM>

SELECT MULTIPLE

Тэг SELECT MULTIPLE похож на тэг SELECT SINGLE, но пользователь может одновременно выбрать более чем один элемент списка. Атрибут SIZE определяет количество одновременно видимых на экране элементов, атрибут MULTIPLE - максимальное количество одновременно выбранных элементов. Пример:

<FORM>

<SELECT SINGLE NAME=group SIZE=4 MULTIPLE=2>

<OPTION> AT 386

<OPTION> AT 486

<OPTION> AT 586

<OPTIONS> Pentium PRO

</SELECT>

</FORM>

Если выбрано одновременно несколько значений, то серверу передаютс соответствующее выбранному количество параметров NAME=VALUE с одинаковыми значениями NAME, но разными VALUE.

Отправление файлов при помощи форм

Формы можно использовать для отправки не только небольших информационных сообщений ввиде параметров, а также и для отправки файлов.

Внимание! Поскольку данная возможность требует поддержки получения файлов WEB-сервером, то, соответственно, необходимо, чтобы сервер поддерживал получение файлов!

Например:

<FORM ENCTYPE="multipart/form-data" ACTION="url" METHOD=POST>

Отправить данный файл: <INPUT NAME="userfile" TYPE="file">

<P>

<INPUT TYPE="sub>mit" VALUE="Отправить файл">

</FORM>

Начало формы

HTML фреймы

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

    Каждый фрейм имеет свой URL, что позволяет загружать его независимо от других фреймов

    Каждый фрейм имеет собственное имя (параметр NAME), позволяющее переходить к нему из другого фрейма

    Размер фрейма может быть изменен пользователем прямо на экране при помощи мыши (если это не запрещено указанием специального параметра)

Данные свойства фреймов позволяют создавать продвинутые интерфейсные решения, такие как:

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

    Помещение в статическом фрейме оглавления всех или части WEB-документов, содержащихся на WEB-сервере, что позволяет пользователю быстро находить интересующую его информацию;

    Создавать окна результатов запросов, когда в одном фрейме находится собственно запрос, а в другом результаты запроса ;

    Создавать формы типа "мастер-деталь" для WEB-приложений, обслуживающих базы данных;

Синтаксис фреймов

Формат документа, использующего фреймы, внешне очень напоминает формат обычного документа, только вместо тэга BODY используется контейнер FRAMESET, содержащий описание внутренних HTML-документов, содержащий собственно информацию, размещаемую во фреймах.

<HTML>

<HEAD>...</HEAD>

<FRAMESET>...</FRAMESET>

</HTML>

Однако, фрейм-документ является специфичным видом HTML-документа, поскольку не содержит элемента BODY и какой-либо информационной нагрузки соответственно. Он описывает только фреймы, которые будут содержать информацию (кроме случая двойного документа, который мы рассмотрим позже).

Представим общий синтаксис фреймов:

<FRAMESET COLS="value" | ROWS="value">

<FRAME SRC="url1">

<FRAME ...>

</FRAMESET>

FRAMESET

<FRAMESET [COLS="value" | ROWS="value"]>

Тэг <FRAMESET> имеет завершающий тэг </FRAMESET>. Все, что может находиться между этими двумя тэгами, это тэг <FRAME>, вложенные тэги <FRAMESET> и </FRAMESET>, а также контейнер из тэгов <NOFRAME> и </NOFRAME>, который позволяет строить двойные документы для браузеров, поддерживающих фреймы и не поддерживающих фреймы.

Данный тэг имеет два взаимоисключающих параметра: ROWS и COLS.

ROWS="список-определений-горизонтальных-подокон"

Данный тэг содержит описания некоторого количества подокон, разделенные запятыми. Каждое описание представляет собой числовое значение размера подокна в пикселах, процентах от всего размера окна или связанное масштабное значение. Количество подокон определяется количеством значений в списке. Общая сумма высот подокон должна составлять высоту всего окна (в любых измеряемых величинах). Отсутствие атрибута ROWS определяет один фрейм, величиной во все окно браузера.

Синтаксис используемых видов описания величин подокон:

value

Простое числовое значение определяет фиксированную высоту подокна в пикселах. Это далеко не самый лучший способ описания высоты подокна, поскольку различные браузеры имеют различный размер рабочего поля, не говоря уже о различных экранных разрешениях у пользователя. Если вы, все же, используете данный способ описания размера, то настоятельно рекомендуется сочетать его с каким-либо другим, чтобы в результате вы точно получили 100%-ное заполнение окна браузера вашего пользователя.

value%

Значение величины подокна в процентах от 1 до 100. Если общая сумма процентов описываемых подокон превышает 100, то размеры всех фреймов пропорционально уменьшаются до суммы 100%. Если, соответственно, сумма меньше 100, то размеры пропорционально учеличиваются.

value*

Вообще говоря, значение value в данном описании является необязательным. Символ "*" указывает на то, что все оставшееся место будет принадлежать данному фрейму. Если указывается два или более фрейма с описанием "*" (например "*,*"), то оставшееся пространство делится поровну между этими фреймами. Если перед звездочкой стоит цифра, то она указывает пропорцию для данного фрейма (во сколько раз од будет больше аналогично описанного чистой звездочкой). Например, описание "3*,*,*", говорит, что будет создано три фрейма с размерами 3/5 свободного пространства для первого фрейма и по 1/5 для двух других.

COLS="список-определений-горизонтальных-подокон"

То же самое, что и ROWS, но делит окно по вертикали, а не по горизонтали.

Внимание! Совместное использование данных параметров может привести к непредствазуемым результатам. Например, строка: <FRAMESET ROWS="50%,50%" COLS "50%,50%"> может привести к ошибочной ситуации.

Примеры:

<FRAMESET COLS="50,*,50"> - описывает три фрейма, два по 50 точек справа и слева, и один внутри этих полосок.

<FRAMESET ROWS="20%,3*,*"> - описывает три фрейма, первый из которых занимает 20% площади сверху экрана, второй 3/4 оставшегося от первого фрейма места (т.е. 60% всей площади окна), а последний 1/4 (т.е. 20% всей площади окна.

<FRAMESET ROWS="*,60%,*"> - аналогично предыдущему примеру.

Тэги <FRAMESET> могут быть вложенными, т.е. например:

<FRAMESET ROWS="50%,50%">

<FRAMESET COLS="*,*"

</FRAMESET>

</FRAMESET>

Результат данного примера мы рассмотрим позже.

FRAME

<FRAME SRC="url" [NAME="frame_name"] [MARGINWIDTH="nw"] [MARGINHEIGHT="nh"] [SCROLLING=yes|no|auto] [NORESIZE]>

Данный тэг определяет фрейм внутри контейнера FRAMESET.

SRC="url"

Описывает URL документа, который будет отображен внутри ланного фрейма. Если он отсутствует, то будет отображен пустой фрейм.

NAME="frame_name"

Данный параметр описывает имя фрейма. Имя фрейма может быть использовано для определения действия с данным фреймом из другого HTML-документа или фрейма (как правило, из соседнего фрейма этого же документа). Имя обязательно должно начинаться с символа. Содержимое поименованных фреймов может быть задействовано из других документов при помощи специального атрибута TARGET, описываемого ниже.

MARGINWIDTH="value"

Это атрибут может быть использован, если автор документа хочет указать величину разделительных полос между фреймами сбоку. Значение value указывается в пикселах и не может быть меньше единицы. По умолчанию данное значение зависит от реализации поддержки фреймов используемым клиентом браузером.

MARGINHEIGHT="value"

То же самое, что и MARGINWIDTH, но для верхних и нижних величин разделительных полос.

SCROLLING="yes | no | auto"

Этот атрибут позволяет задавать наличие полос прокрутки у фрейма. Параметр yes указывает, что полосы прокрутки будут в любом случае присутствовать у фрейма, параметр no наоборот, что полос прокрутки не будет. Auto определяет наличие полос прокрутки только при их необходимости (значение по умолчанию).

NORESIZE

NOFRAMES

Данный тэг используется в случае, если вы создаете документ, который может просматриваться как браузерами, поддерживающими фреймы, так и браузерами, их не поддерживающими. Данный тэг помещяется внутри контейнера FRAMESET, а все, что находится внутри тэгов <NOFRAMES> и </NOFRAMES> игнорируется браузерами, поддерживающими фреймы.

Примеры

Рассмотрим реализацию фреймов для подобного разбиения окна:

<FRAMESET ROWS="*,*">

<NOFRAMES>

<H2>Ваша версия WEB-браузера не поддерживает фреймы!</H2>

</NOFRAMES>

<FRAMESET COLS="65%,35%">

<FRAME SRC="link1.php">

<FRAME SRC="link2.php">

</FRAMESET>

<FRAMESET COLS="*,40%,*">

<FRAME SRC="link3.php">

<FRAME SRC="link4.php">

<FRAME SRC="link5.php">

</FRAMESET>

</FRAMESET>

Планирование фреймов и взаимодействия между фреймами

С появлением фреймов сразу возникает вопрос: "А как сделать так, чтобы нажимая на ссылку в одном фрейме инициировать появление информации в другом?"

Ответом на данный вопрос является планирование взаимодействия фреймов (далее - планирование). Каждый фрейм может иметь собственное имя, определяемое параметром NAME при описании данного фрейма. Существует, также, специальный атрибут - TARGET, позволяющий определять, к какому фрейму относится та или иная операция. Формат данного атрибута следующий:

TARGET="windows_name"

Данный атрибут может встречаться внутри различных тэгов:

TARGET в тэге A

Это самое прямое использование TARGET. Обычно, при активизации пользователем ссылки соответствующий документ появляется в том же окне (или фрейме), что и исходный, в котором была ссылка. Добавление атрибута TARGET позволяет произвести вывод документа в другой фрейм. Например:

<A HREF="mydoc.php" TARGET="Frame1"> Переход в фрейм № 1 </A>

TARGET в тэге BASE

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

Документ № 1.

<FRAMESET ROWS="20,*">

<FRAME SRC="doc2.php" NAME="Frame1">

<FRAME SRC="doc3.php" NAME="Frame2">

</FRAMESET>

Документ № 2.

<HTML>

<HEAD>

<BASE TARGET="Frame2">

</HEAD>

<BODY>

<A HREF="url1"> Первая часть</A> |

<A HREF="url2"> Вторая часть</A>

</BODY>

</HTML>

TARGET в тэге AREA

Таже можно включать тэг TARGET в описание ссылки при создании карты изображения. Например:

<AREA SHAPE="circle" COORDS="100,100,50" HREF="http://www.softexpress.com" TARGET="Frame1">

TARGET в тэге FORM

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

<FORM ACTION="url" TARGET="window_name">

Внимание! Имя окна (фрейма) в параметре TARGET должно начинаться с латинской буквы или цифры. Также необходимо помнить, что существуют зарезервированные имена для разрешения специальных ситуаций.

Зарезервированные имена фреймов

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

TARGET="_blank"

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

TARGET="_self"

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

TARGET="_parent"

Данное значение определяет, что документ, полученный по ссылке будет отображаться в родительском окне, вне зависимости от параметров FRAMESET. Если родительского окна нет, то данное имя аналогично "_self".

TARGET="_top"

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

Создание карты изображений

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

Внимание! Если вы хотите использовать технологию картирования изображений, то вам необходимо использовать браузер, поддерживающий данную технологию!

Чтобы включить поддержку карты для изображения, необходимо ввести дополнительный параметр в тэг img:

<img SRC="url" USEMAP="url#map_name" >

Параметр USEMAP указывает, в каком месте находится карта описываемого изображения. Карта изображения определяет, какому участку изображения какой URL соответствует. Карта изображения может находиться в том же документе, что и изображение, или в другом документе. Помещение карты в другой документ позволяет собрать все карты изображений в одном документе (если у вас их несколько в различных документах), но добавляет еще одну итерацию в сети, когда за перыую итерацию выясняется местонахождение карты, а за вторую - выполнение действия, предписанного URL для данного участка изображения. Параметр map_name указывает имя карты для изображения, а предшествующий ему URL определяет местонахождение карты. Если данный URL отсутствует, то карта с указанным именем ищется в текущем документе.

Рассмотрим синтаксис определения карты изображения:

<MAP NAME="map_name">

<AREA [SHAPE=" shape "] COORDS="x,y,..." [HREF=" reference "] [NOHREF]>

</MAP>

Параметры:

<MAP NAME="map_name">

Данный тэг определяет начало описания карты с именем map_name.

<AREA...>

Описывает участок изображения и ставит ему в соответствие URL. Параметры:

SHAPE

Необязательный параметр, указывающий на форму определяемой области изображения. Может принимать значения:

        default - по умолчанию (обычно прямоугольник)

        rect - прямоугольник

        circle - круг

        poly - многоугольник произвольной формы

COORDS

Координаты в пикселах описываемой области. Для прямоугольника это четыре координаты левого верхнего и правого нижнего углов, для круга - три координаты (две - центр круга, третья - радиус). Для многоугольника это описание каждого угла в двух координатах - соответственно число координат равно удвоенному количеству углов.

Координаты считаются с нуля, поэтому для описания области 100 на 100 используется описание:

<AREA COORDS="0,0,99,99" ...>

HREF="url"

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

NOHREF

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

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

</MAP>

Данный тэг завершает описание карты изображения.

Применение:

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

Так же прменять данную технологию можно при создании простых ГИС-подобных систем с картографическими возможностями.

HTML таблицы

Таблицы в HTML организуются как набор столбцов и строк. Ячейки таблицы могут содержать любые HTML-элементы, такие, как заголовки, списки, абзацы, фигуры, графику, а также элементы форм.

Основные тэги таблицы

Таблица: <TABLE>...</TABLE>

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

Строка таблицы: <TR>...</TR>

Количество строк таблицы определяется количеством встречающихся пар тэгов <TR>..</TR>. Строки могут иметь атрибуты>

Ячейка таблицы: <TD>...</TD>

Описывает стандартную ячейку таблицы. Ячейка таблицы может быть описана только внутри строки таблицы. Каждая ячейка должна быть пронумерована номером колонки, для которой она описывается. Если в строке отстутствует одна или несколько ячеек для некоторых колонок, то браузер отображает пустую ячейку. Расположение данных в ячейке по умолчанию определяется атрибутами>

Заголовок таблицы: <TH>...</TH>

Ячейка заголовка таблицы имеет ширину всей таблицы; текст в данной ячейке имеет атрибут BOLD и>

Подпись: <CAPTION>...</CAPTION>

Данный тэг описывает название таблицы (подпись). Тэг <CAPTION> должен присутствовать внутри <TABLE>...</TABLE>, но снаружи описания какой-либо строки или ячейки. По умолчанию <CAPTION> имеет атрибут ALIGN=top, но может быть явно установлен в ALIGN=bottom.>

Основные атрибуты таблицы

BORDER

Данный атрибут используется в тэге TABLE. Если данный атрибут присутствует, граница таблицы прорисовывается для всех ячеек и для таблицы вцелом. BORDER может принимать числовое значение, определяющее ширину границы, например BORDER=3.

ALIGN

Если атрибут>

Если атрибут>

VALIGN

Данный атрибут встречается внутри тэгов <TR>, <TH> и <TD>. Он определяет вертикальное размещение данных в ячейках. Может принимать значения top (вверху), bottom (внизу), middle (по середине) и baseline (все ячейки строки прижаты кверху).

NOWRAP

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

COLSPAN

Указывает, какое количество ячеек будет объединено по горизонтали для указанной ячейки. По умолчании - 1.

ROWSPAN

Указывает, какое количество ячеек будет объединено по вертикали для указанной ячейки. По умолчании - 1.

COLSPEC

Данный параметр позволяет задавать фиксированную ширину колонок либо в символах, либо в процентах, например COLSPEC="20%".

На данный момент в Web используется два типа растровых файлов: в форматах JPEG и GIF.