Достоинства и недостатки структур.



 

Линейная и табличная структура.

- Достоинства: Легко пользоваться, т.к. адрес каждого элемента задается числом/несколькими числами легко упорядочиваются

 

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

 

Иерархическая структура.

 

-  Достоинства: Не создают проблем с обновлением данных.

 

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

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

 

Файл – это именованная последовательность байтов, хранящихся во внешней памяти; информационный объект (например, отдельный документ, отдельная программа), хранящийся во внешней памяти и имеющий название.

Информация о файлах и каталогах (их название, размер, время создания, место размещения во внешней памяти) хранится в каталогах.

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

Каждый каталог имеет название, состоящее из двух частей, разделенных точкой:

 левая часть - имя, правая – расширение. 

В названии нельзя использовать специальные знаки (\ : , и т.п.).

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

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

Таким образом формируется иерархическая (древовидная) файловая структура данных на диске.

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

Маршрут (путь) – это список названий каталогов по мере их вложенности (от внешнего к внутреннему), разделенных знаком обратный слеш (\). Например с:\windows\regedit.exe означает, что файл regedit . exe находится в каталоге windows , который находится в корневом каталоге диска с. ( полная спецификацией файла) Название файла без маршрута называется краткой спецификацией.

Корневой каталог занимает определенное место фиксированного размера на диске.

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

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

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

§ на основе таблицы размещения файлов – FAT (File Allocation Table)

§ на основе главной таблицы файлов – MFT (Master File Table)

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

       FAT формируется автоматически при форматировании диска. Клетки этой таблицы пронумерованы   начиная с нуля и соответствуют частям памяти диска размером в один кластер. Номер первого кластера записан в каталоге в качестве одного из атрибутов этого файла. В каждой клетке FAT может содержаться 0 (значит, соответствующий кластер свободен для записи), номер следующего кластера либо специальный        числовой (максимальное число, которое может быть представлено в клетке), означающий окончание        цепочки кластеров для данного файла. В современных системах обычно используется 32-разрядный FAT, в    котором числа представлены в виде четырехбайтового целого без знака. Информация, находящаяся в FAT вместе и информацией, находящейся в каталоге, и используется для поиска и считывания файла. Программы, которые обеспечивают просмотр и корректировку FAT показывают код End Of File.

 

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

Делятся на:

§ локальные

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

§ глобальные

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

§ интрасети

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

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

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

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

Пользовательские компьютеры могут работать в двух режимах:

- режим терминала

можно лишь послать запрос и получить результат его выполнения.

- режим рабочей станции

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

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

 

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

 Основные виды логической архитектуры сети:

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

§ сетевая

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

§ клиент-сервер

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

- программы-серверы (обеспечивают работу серверов)

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

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

 

· В локальных сетях обычно используется одноранговая архитектура или архитектура на основе файлового сервера.

· В глобальных сетях используется архитектура клиент-сервера.

 

Топология сети – это логическая схема соединения компьютеров (узлов сети) каналами связи.

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

Чаще всего в локальных сетях используются следующие топологии:

§ многоканальная

§ кольцевая

§ звездообразная

§ полносвязную

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

§ древовидную

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

Интернет – это не одна сеть, а сообщество сетей разнообразной природы, которые принадлежат различным собственникам, добровольно объединившимся на основе стандартов (протоколов) передачи информации. 

Основные протоколы:

§ TCP (протокол передачи информации), определяет управление передачей информации в сети

§ IP (протокол адресации) - правила адресации передаваемых сообщений.

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

 

Каждый сервер или ПК в сети имеет адреса трех уровней:

· MAC -адрес (локальный адрес) – это адрес сетевого адаптера, который представляет собой шестибайтовую последовательность. Первые три байта – идентификатор производителя оборудования, следующие – номер сетевого адаптера. Эти адреса назначаются производителями оборудования и являются уникальными, т.к. управление их назначением централизовано. Такой адрес используется только в пределах локальной сети.

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

· DNS (доменный адрес, доменное имя). Пользователю неудобно использовать IP-адреса в текущей работе, поэтому в интернет применяется так называемая доменная система имен (DNS). В этой системе всем компьютерам сети (сетевым соединениям) даются удобные для пользователя текстовые имена (идентификаторы), называемые доменными, за которыми скрываются соответствующие IP-адреса. DNS -адреса регистрируются в информационном центре сети интернет NIC. Пользователь работает с доменными именами, а соответствующее программное обеспечение и технические устройства преобразовывают их в адреса и наоборот. Для этой цели в интернете существует служба DNS. Полное доменное имя (DNS-адрес) представляет собой последовательность имен, разделенных точкой. Первое – имя конкретного компьютера, затем – доменное имя организации, региона и т.д. Последнее (справа) – имя так называемого коревого домена, которое указывает на государство (например, ru – Россия) или принадлежность организации определенного типа (например, com – коммерческая, net – сетевая, edu – образовательная). Имена компьютеров, имеющих доступ в интернет через сервер локальной сети, провайдера и т.п., отделяются от последней части в полном доменном имени знаком @ (эт).

 

Алгоритм – это конечная последовательность правил (шагов, этапов), позволяющая решать любую задачу из класса однотипных при условии, что исходные данные для решения могут изменяться в заданных пределах. Алгоритм – основа создания и использования программных средств, это форма представления процедурных знаний, т.е. знаний, представленных в виде последовательности процедур, действий, операция и т.п. Во множестве алгоритмов могут быть такие, которые используются как часть других алгоритмов. В связи с этим каждый алгоритм снабжается именем. Это позволяет в одних алгоритмах указывать ссылки на другие алгоритмы. Алгоритм состоит из шагов. Каждый шаг – это именованное описание последовательности действий (операций). Имя шага состоит из имени алгоритма и порядкового номера этого шага. Например, если имя алгоритма А, то имена его шагов А1, А2 и т.д. При описании действий используются специальные знаки, например «=», «←» (замещение), «» (взаимный обмен). Знак равенства используется для записи логических выражений, знак «←» означает очень важную операцию замещения, которая представляет собой обобщение двух операций: присваивание и подстановка. Конкретная реализация этой операции зависит от выбранного программного средства. «m←n» означает, что значение переменной n должно быть замещено текущим значением m. «переменная←формула» означает, что в соответствии с данной формулой должны быть произведены вычисления при текущих значениях входящих в нее переменных, после чего значение переменной, указанной слева от знака замещения надо заместить полученным значением. Например, n←n+1 означает увеличение значения n на единицу. Если несколько переменных надо заместить одним и тем же значением можно использовать сокращенную запись. Например, если переменные m и n надо заместить значением переменной r, то можно записать «m←n←r». Следует иметь в виду, что между знаками равенства и замещения есть существенные различия: «=» означает сравнении и используется в условиях, которые необходимо проверить, а «←» означает действие, которое следует произвести.

Основные способы описания алгоритмов:

§ словесно-формульный (пошаговый)

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

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

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

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

Рассмотрим пример алгоритма нахождения наибольшего общего делителя двух целых положительных чисел Эвклида. Алгоритм Е [алгоритм Эвклида]:

Даны два целых положительных числа m и n , требуется найти их наибольший общий делитель, т.е. наибольшее целое число, которое нацело делит как m , так и n .

Е1 [нахождение остатка] r ← остаток от  ( r ≥0, r < n )

Е2 [это нуль?] если r <0, алгоритм заканчивается в n -искомое число

Е3 [замещение] m ← n , n ← r , возвратиться к шагу E 1

§ структурный (в виде блок-схемы)

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

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

- Дуги (линиями со стрелками) = соединяют вершины, показывая последовательность выполнения шагов.

Блок-схема:

- краткая (в вершинах указывают наименования и основная суть шагов)

- подробная (в вершинах указывается полное описание шагов)

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

 

Е3 [замещение]
Е2 [это нуль?]
Е1 [нахождение остатка]

 

 


                                                                                                                      да

 

 


начало
                                                                                         нет                                                          

окончание в n-искомое число

 

 


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

 

Любой алгоритм представляет собой комбинацию трех элементарных алгоритмических структур :

§ линейная

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

§ ветвящаяся

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

§ циклическая - описывает процесс, содержащий цикл. Цикл – это многократно повторяющаяся последовательность операций.

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

В зависимости от его расположения различают:

- цикл с нижним окончанием или с постусловием (условие проверяется после тела цикла)

тело цикла обязательно выполняется по крайней мере один раз

- цикл с верхним окончанием или с предусловием (условие проверяется перед телом цикла). тело цикла может не выполниться ни разу


Дата добавления: 2019-02-22; просмотров: 497; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!