Logo GenDocs.ru


Поиск по сайту:  


Ответы на экзаменационные вопросы по информатике - файл 1.doc


Ответы на экзаменационные вопросы по информатике
скачать (9383 kb.)

Доступные файлы (1):

1.doc9383kb.17.11.2011 12:25скачать

содержание

1.doc

  1   2   3   4   5   6   7   8   9   ...   52
Реклама MarketGid:
3. ОСНОВНЫЕ ПОНЯТИЯ И МЕТОДЫ

ТЕОРИИ ИНФОРМАЦИИ И КОДИРОВАНИЯ

 

Введение

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

 

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


3.1.1 Непозиционные системы счисления

3.1.2 Позиционные системы счисления

3.1.3 Двоичная система счисления

3.1.4 Другие системы счисления, используемые в компьютерных технологиях


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

Смотреть ролик "Системы счисления" (Для просмотра ролика необходима программа Microsoft Office PowerPoint)

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

 

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

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

Все системы счисления можно разделить на позиционные и непозиционные.
^

3.1.1 Непозиционные системы счисления


Вверх


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

В римских числах цифры записываются слева направо в порядке убывания. В таком случае их значения складываются, например VI = 5+1 = 6. Если же слева записана меньшая цифра, а справа - большая, то их значения вычитаются, например IV = 5-1 = 4. В римской системе счисления используются латинские буквы: {I-1, V-5, X-10, L-50, C-100, D-500, M-1000}. I - в записи чисел есть всегда единица и для девяти IX и для двенадцати - XII. В непозиционных системах счисления не представлены дробные и отрицательные числа.

Непозиционные системы счисления возникли намного раньше позиционных. Основной недостаток непозиционных систем – большое число разных знаков и сложность выполнения арифметических операций.
^

3.1.2 Позиционные системы счисления


Вверх


Если значение цифры или символа зависит от позиции в ряду цифр или символов изображающих число, то такая система счисления называется позиционной. Примером позиционной системы счисления является используемая нами десятичная система счисления. В ней любое число записывается с помощью десяти цифр: {0,1,2,3,4,5,6,7,8,9}. Например, в записи 777 цифра 7 встречается три раза, но в каждой позиции она имеет разный смысл: крайняя левая цифра 7 означает сотни, следующая - десятки, и следующая цифра 7 - единицы. Позиционные системы счисления более удобны для вычислительных операций, поэтому они получили наибольшее распространение.

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

Например, 1999 - является 4-разрядным числом. Разряды нумеруются справа налево, и каждому разряду соответствует степень основания: 13929190 . Тогда, число 1999 представляется в системе с десятичным основанием, как

1999=1*103+9*102+9*101+9*100 .

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

Любое число в позиционной системе счисления со степенными весами разрядов можно представить в виде ряда:



(3.1)


где, А q - запись числа в системе счисления с основанием q; ai - целое положительное число, меньше q; n – число разрядов в целой части числа; m – число разрядов в дробной части числа.

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



(3.2)


Так как за основание можно принять любое целое число, возможно множество позиционных систем, например, двоичная, восьмеричная, десятеричная, шестнадцатеричная. При этом в двоичной системе алфавит состоит из двух цифр: 0 и 1; в десятеричной – из десяти цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; в шестнадцатеричной – из цифр 0…9 и символов А, B, C, D, E, F для обозначения цифр 10, 11, 12, 13, 14, 15 соответственно.

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

В большинстве случаев в ЭВМ используют двоичные или двоично-кодированные системы счисления. Широкое распространение этих систем обусловлено тем, что элементы ЭВМ способны находиться лишь в одном из двух устойчивых состояний. Задача различения сигналов сводится в этом случае к задаче обнаружения (есть импульс или его нет). Если одно из таких устойчивых состояний принято за 0, а другое – за 1, то достаточно просто изображаются разряды двоичного числа.

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

3.1.3 Двоичная система счисления


Вверх

В компьютерах для записи чисел используется двоичная система счисления. В этой системе для представления любого числа используются два символа — цифры 0 и 1. Основание системы счисления

Произвольное число с помощью формулы (3.1) можно представить в виде разложения по степеням двойки:



(3.3)


Таким образом, все числа в двоичной системе счисления составляются из цифр 0 или 1. Например, x = (110011,1101)2. Двоичное представление числа требует примерно в 3,3 раза большего числа разрядов, чем его десятичное представление. Тем не менее, применение двоичной системы счисления создает большие удобства для работы ЭВМ, так как для представления в машине разряда двоичного числа может быть использован любой запоминающий элемент, имеющий два устойчивых состояния.

Арифметические действия над одноразрядными двоичными числами выполняются по следующим правилам:










(3.4)


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

Допустим, число A из системы счисления с основанием q требуется перевести в систему счисления с основанием 2.

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

Пример. Число 2610 перевести в двоичную систему счисления.

Перевод выполним по следующей схеме:




в результате 2610 = 110102.


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


Пример: Число 110110012 перевести в десятичную систему счисления.

Представим исходное число в виде:



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

Перевод осуществляется по следующему правилу:

  • исходное число умножаем на новое основание 2;

  • полученная при этом целая часть произведения является первой искомой цифрой;

  • дробную часть снова умножаем на основание 2 т.д.

Результат формируется путем последовательной записи целых частей произведения, начиная с первого (Дополнительно).

Пример. Перевести число 0,187510 в двоичную систему



Здесь вертикальная черта отделяет целые части чисел от дробных частей. Результат: 0,187510 = 0,00112 .

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

Пример. Перевести десятичное число 105,1875 в двоичную систему счисления.

Результат: .
^

3.1.4 Другие системы счисления, используемые в компьютерных технологиях


Вверх


Восьмеричная система счисления. Числа, записанные в системе с основанием 8, называются восьмеричными. Основание системы счисления - q = 8. Изображение чисел производится восьмью цифрами: {0, 1, 2, 3, 4, 5, 6, 7}. Восьмеричная система счисления используется в ЭВМ для кодирования команд в целях сокращения записи.

^ Шестнадцатеричная система счисления. Основание системы счисления - q = 16. В шестнадцатеричной системе счисления алфавит включает в себя 16 символов (цифры и буквы): { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F}. Широко применяется для написания кодов операций констант и других специальных слов, не требующих перевода в десятичную систему счисления. В таблице 3.1 приведен алфавит для четырех систем счисления.


Таблица 3.1 - Алфавит систем счисления.

Основание

Название

Алфавит

2

двоичная

0 1

8

восьмеричная

0 1 2 3 4 5 6 7

10

десятичная

0 1 2 3 4 5 6 7 8 9

16

шестнадцатеричная

0 1 2 3 4 5 6 7 8 9 A B C D E F


Любое число по специальным правилам можно перевести из одной системы счисления в другую. Рассмотрим эти правила.

Допустим, число Х из системы счисления с основанием q требуется перевести в систему счисления с основанием p. Числа, имеющие целую и дробные части, переводятся в два этапа: вначале целая часть числа, а затем дробная.

^ Перевод целых чисел из одной системы счисления в другую осуществляется по следующему правилу:

  • целую часть числа делим на новое основание p;

  • полученный от деления первый остаток является младшей цифрой целой части числа с основанием р;

  • деление будем производить до тех пор, пока не получим частное меньше делителя;

  • последнее частное дает старшую цифру числа с основанием р (Дополнительно).

  •  

Пример. Число 19110 перевести в восьмеричную систему счисления.

 

Перевод осуществим методом последовательного деления десятичного числа 191 на 8. Остатки от деления образуют восьмеричное число:



15 Программирование на Visual Basic

 

^ 15.1 Алфавит языка

В Visual Basic (Дополнительно) используется следующий алфавит:


1.                  Буквы русского и латинского алфавитов

2.                  Цифры арабские

3.                  Знаки арифметических действий   + - * / \ ^

4.                  Знаки сравнения  =     >     <     <=     >=       <>

5.                  Специальные знаки  ( ) . , : ; ! @ # % $ & ? _ ~

 

^ 15.2 Типы переменных и констант

15.2.1 Имена переменных

15.2.2 Типы переменных

15.2.3 Объявление переменной

15.2.4 Область действия переменных

15.2.5 Константы

15.2.6  Встроенные константы Visual Basic

15.2.7 Объявление констант


^

15.2.1 Имена переменных


Вверх

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

   имя переменной может содержать не более 255 символов;

   имя переменной может содержать любые буквы и цифры;

   первый символ в имени переменной должен быть буквой;

   в имени переменной должны отсутствовать пробелы;

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

(Дополнительно)

Например, допустимы следующие имена переменных:

CurrentNum, Total, Date_of_birth

Следующие имена недопустимы:

1Time, $Total, Date of birth
^

15.2.2 Типы переменных


Вверх


В Visual Basic вы можете применять следующие типы данных:

   числовой (Integer, Long, Single, Double, Currency);

   строковый (String);

   типа дата (Date);

   байтовый (Byte);

   логический (Boolean);

   произвольный (Variant);

   объектный (Object).

Для хранения чисел в Visual Basic используется пять разных типов данных. Для хранения целочисленных данных предназначены типы Integer и Long. Первый из них служит для хранения целых чисел в диапазоне от —32768 до 32767 и занимает в оперативной памяти два байта. Для хранения больших целочисленных значений в диапазоне от —2 147483648 до 2 147483648 следует выбрать тип данных Long. В этом случае для хранения переменной выделяется 4 байта. Аналогично, для хранения десятичных чисел с плавающей точкой предназначены типы данных Single и Double. Переменная с типом данных Single занимает 4 байта и может принимать значения в диапазоне -3,4^38 ... -1,4^-45 для отрицательных чисел и 1,4^-45 ... 3,4^38 для положительных чисел. Если этого диапазона вам недостаточно, используйте десятичные числа с плавающей точкой двойной точности, определяя для них тип данных Double. В этом случае переменной выделяется 8 байтов, которых достаточно для хранения чисел в диапазоне -1,7^-308 ... -4,9^-324 для отрицательных чисел и 4,9^-324 ... l,7^+308 для положительных чисел. Для хранения чисел с фиксированной точкой служит тип Currency. Переменная данного типа занимает в оперативной памяти 8 байт. Целая часть числа может содержать до 15 цифр, а дробная — до 4.

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

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

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

Тип данных Date используется для хранения даты и времени. Переменная этого типа требует 8 байт в оперативной памяти.

Тип данных Variant является универсальным. Переменная этого типа может хранить любой из выше описанных типов данных. Все необходимые преобразования выполняются при присвоении переменной значения.

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

Для хранения ссылок на объекты используется тип данных Object. Каждая переменная данного типа требует 4 байта.

При разработке программ в среде Visual Basic в зависимости от типа данных переменных рекомендуется использовать префиксы.

Префиксы, используемые в наименованиях'переменных

   Тип данных    Префикс    Пример

   Boolean       bln    blnSuccess

      Byte         byt    bytImage

   Currency     cur       curPrice

      Date         dtm    dtmFinish

   Double        dbl     dblMax

   Integer         int    intQuantity

      Long        lng       lngTotal

      Single      sng    sngLength

      String       str    strLastname

   Variant       vnt    vntValue

Большинство строк, с которыми приходится работать в Visual Basic, являются строками переменной длины, то есть они могут иметь длину до 2 Гбайт. Длина такой строки изменяется при присвоении ей нового значения. Но в Visual Basic существуют и строки с фиксированной длиной. Их длина остается неизменной независимо от присвоенного ей значения. Если такой переменной присваивается значение, меньшее объявленной для нее длины, то оставшаяся часть переменной заполняется пробелами. При присвоении значения, превышающего длину строки, она усекается до размера переменной.

Для объявления строки с фиксированной длиной используется следующий синтаксис:  Dim имяПеременной As String * длинаПеременной

Параметр длинаПеременной указывает максимальное количество символов, отводимое переменной. Символ звездочки (*) указывает на то, что переменная имеет фиксированную длину.

Предпочтительнее использовать явное объявление переменных, поэтому рекомендуется установить такой режим трансляции программы, при котором допускается только явное объявление переменных. Для этого необходимо в начало модуля вставить оператор Option Explicit (Явное объявление). Для автоматического добавления во все модули данного оператора в окне программы Visual Basic выполните команду Options (Параметры) меню Tools (Сервис). Откроется диалоговое окно Options, на вкладке Editor которого установите флажок Require Variable Declaration.

Если вы не разместили в модуле оператор Option Explicit, можете использовать неявное объявление переменной. В этом случае тип переменной определяется при первом операторе присвоения, и в этот же момент переменной будет выделена память. Если вы не используете специальные концевые символы, определяющие тип переменной, ей будет присвоен тип variant.

^

15.2.3 Объявление переменной


Вверх


Поскольку Visual Basic может сам определить тип переменной по ее значению (см. Variant), то тип переменной можно не объявлять (не указывать). Однако объявление переменных является правилом хорошего тона программирования, а также позволяет избежать некоторых ошибок в программе, таких как неодинаковое написание имени переменной в разных местах программы, несоблюдения типов данных в вычислениях.
Переменную объявляют в начале окна кода или в начале процедуры с помощью оператора Dim такой записью:

Dim Имя_переменной As Тип_переменной

В качестве типа переменной указываются слова Byte, Long, String и другие типы (см. выше).

Например: Dim a As Byte

Объявлена переменная а типа Byte. В такую переменную можно поместить число от 0 до 255. При попытке присвоения переменной большего числа возникнет ошибка, а число, имеющее дробную часть, будет округлено. Например, Dim b As String

Объявлена переменная b типа String. Эта переменная будет содержать текст (хотя текст может состоять и из цифр, но 2 плюс 3 будет 23).
При объявлении нескольких переменных можно перечислять их через запятую: Dim a As Byte, b As String

После строки объявления можно присваивать значение переменной.Например:  Dim a As Byte

          a = 5
^

15.2.4 Область действия переменных


Вверх


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

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

   Область действия переменной                 Префикс                      Пример

Глобальная                                                     g                              gdtmFinish

Локальная внутри модуля                            m                            msngLength

Локальная внутри процедуры             нет префикса                 strLastname

Для создания переменной, которую вы хотите определить в качестве глобальной, в раздел General Declarations главного модуля приложения поместите оператор Public. Например: Public gdtmFinish As Date

Для объявления переменной, локальной внутри модуля или формы, используйте оператор Private или Dim в разделе General Declarations модуля или формы. В этом случае объявленная переменная будет доступна для всех входящих в форму или модуль процедур, но в то же время недоступной в процедурах других модулей и форм.

Переменные, локальные на уровне процедуры, создаются операторами Dim или Static внутри процедуры. Например:

Sub CalcTotal

Dim bSuccess As Boolean

. . .

End Sub

15.2.5 Константы


Вверх


Константой называют элемент выражения, значение которого не изменяется в процессе выполнения программ. Приведем несколько примеров:    75.07 - числовая константа;      2.7Е+6 - числовая константа (равна 2 700 000):    "Ошибка доступа к базе данных" - символьная константа;    #8/12/1999# - константа типа дата ;    False - логическая константа.

Существуют константы встроенные и пользовательские. Встроенные константы предлагаются самой системой. Пользовательские константы объявляются.
^

5.2.6 Встроенные константы Visual Basic


Вверх


Visual Basic содержит огромное количество встроенных констант практически для всех возможных случаев: цвета, клавиши, сообщения и т. п. Встроенные константы имеют префикс vb. Для поиска констант определенной категории можно воспользоваться браузером объектов, который открывается при нажатии кнопки Object Browser на стандартной панели инструментов. Например, vbwhite - белый и т.п.
^

5.2.7 Объявление констант


Вверх


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

Const имяКонстанты [As типДанных] = выражение

Например,

Const strDBErrorMessage As String = "Ошибка доступа к базе данных"

При объявлении константы на уровне модуля можно дополнительно указать область ее действия. В этом случае оператор Const имеет следующий синтаксис (квадратные скобки – знак необязательности).

[Public | Private] Const имяКонстанты [As типДанных] = выражение

В приведенном ниже примере константа strDBErrorMessage объявлена глобальной:

Public Const strDBErrorMessage As String = "Ошибка доступа к базе данных".


 

17.1 Основные сведения о компьютерных сетях. Локальные и глобальные сети ЭВМ.


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

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

      сети передачи данных, включающей в себя каналы передачи данных и средства коммутации;

      компьютеров, связанных сетью передачи данных;

      сетевого программного обеспечения.

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

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

Абоненты сети – объекты, генерирующие или потребляющие информацию в сети. Абонентами сети могут быть отдельные компьютеры, компьютерные комплексы, промышленные роботы, станки с числовым программным управлением и т. д. Станция – аппаратура, которая выполняет функции передачи и приема информации.

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

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

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

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

Приемник – устройство, принимающее данные. Приемником могут быть компьютер, терминал или какое-либо цифровое устройство.

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

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

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

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

Преимущества соединения компьютеров в сеть

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

1. Компьютерная сеть позволяет совместно использовать периферийные устройства, включая:

          принтеры;

          плоттеры;

          дисковые накопители;

          приводы CD-ROM и DVD-ROM;

          дисководы;

          стримеры;

          сканеры;

          факс-модемы и др.

2. Компьютерная сеть позволяет совместно использовать информационные ресурсы:

          папки;

          файлы;

          прикладные программы;

          игры;

          базы данных;

          текстовые процессоры и т. д.

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

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

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

Скорость передачи данных  в сети определяется количеством информации, проходящей через линию связи за единицу времени. Для ее измерения в технике введена специальная величина – бит в секунду, но поскольку эта величина очень мала, то обычно используются величины Мбит/сек (мегабит в секунду) или Гб/сек. Скорость передачи данных зависит от типа и качества канала связи, типа используемого оборудования и др. На практике максимальное быстродействие сети никогда не достигается. Фактически сеть не может работать быстрее, чем самая медленная ее компонента.

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

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

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

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

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

Существует три режима передачи данных  в сети

1.      Симплексный – передача данных только в одном направлении.

2.      Дуплексный – одновременная передача и прием сообщений.

3.      Полудуплексный – попеременная передача информации, когда источник и приемник последовательно меняются местами.

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

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

^ Способы коммутации данных.

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

 

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

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

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

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

^ Применение компьютерных сетей обеспечивает:

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

2. Разделение данных. Возможность доступа и управления базами данных непосредственно с рабочих станций.

3. Разделение программных средств. Возможность одновременного использования установленных сетевых программных средств. (Офисные программы, бухгалтерские, САПРы и т.д.). Реализация многопользовательского режима.

4. Разделение ресурсов процессора. Использование вычислительных мощностей сервера для обработки данных другими системами.

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

 
^

17.1.2 Классификация компьютерных сетей


Все многообразие компьютерных сетей можно классифицировать по группе признаков:

  1. Территориальной распространенности.

  2. Ведомственной принадлежности.

  3. Скорости передачи информации.

  4. Типу среды передачи.

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

  1. Локальные Вычислительные Сети (ЛВС)LAN (Local-Area Network). Объединяют компьютеры, расположенные в ограниченном пространстве (обычно в пределах двух километров). Для них необходима прокладка специализированной кабельной системы (рисунок 17.1).  Положение возможных точек подключения абонентов ограничено этой кабельной системой.

 

  1. Глобальные Вычислительные Сети (ГВС)GAN (Global-Area Network). Объединяют компьютеры, расположенные на большом удалении друг от друга, в том числе расположенные в разных странах и на разных континентах при помощи специального коммутационного оборудования (рисунок 17.2).

Примером глобальной сети может быть сеть Internet, для работы которой широко применяется спутниковая связь (рисунок 17.3).


  1. Между ЛВС и ГВС находятся следующие категории сетей:

    • Кампусная сетьCAN (Campus-Area Network). Объединяет ЛВС в близко расположенных зданиях.

o        Сеть городского масштабаMAN (Metropolitan-Area Network). Объединение расширенных локальных сетей предприятий между собой в пределах района города.

o        Широкомасштабная сетьWAN (Wide-Area Network) Объединение сетей в пределах крупного мегаполиса.

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

Интранет (Intranet) – обозначает внутреннюю сеть организаций. Для нее важны два момента:  1) изоляция (или защита) внутренней сети от внешней; 2) обеспечение выхода во внешнюю сеть.

Интернет (Internet) – это собственное имя ГВС, объединяющее множество сетей с технологией Интернет.

По ведомственной принадлежности различают ведомственные и государственные сети.

^ Ведомственные сети принадлежат одной организации и располагаются на ее территории. Это может быть локальная сеть предприятия.

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

^ Государственные сети – сети, используемые в государственных структурах.

По скорости передачи информации компьютерные сети делятся на: низкоскоростные, среднескоростные, высокоскоростные.

По типу среды передачи разделяются на сети

  • коаксиальные,

  • на витой паре,

  • оптоволоконные,

  • с передачей информации по радиоканалам,

  • в инфракрасном диапазоне и т.д.

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

Помимо рассмотренных признаков компьютерные сети могут классифицироваться по типу, топологии, сетевой архитектуре и т.п..

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

  1. Одноранговые сети;

  2. Сети на основе сервер;.

  3. Комбинированные сети.

Рассмотрим их подробнее.

Одноранговые сети.

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

      все компьютеры равноправны, иерархия отсутствует;

      каждый компьютер выступает и как клиент и как сервер;

      каждый пользователь решает какие ресурсы своего ПК отдать в общее пользование.

Одноранговые  сети целесообразность применять в следующих условиях:

      если количество компьютеров, объединенных в сеть, не превышает десяти; 

      если компьютеры расположены компактно;

      если вопросы защиты данных не принципиальны; 

      если в дальнейшем не потребуется расширения сети.

Многие популярные операционные системы, такие как Windows 98, Windows 2000, Windows XP имеют встроенную поддержку одноранговых сетей.

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

      Отсутствие администрирования.

      Отсутствие защиты сети, поскольку все ресурсы общие.

      Для корректной работы в сети требуется высокий уровень квалификации пользователей.

^ Сети на основе сервера

С увеличением количества пользователей производительность одноранговой сети быстро падает и обостряется вопросы администрирования сети. В данной ситуации используют сети с выделенным сервером (рисунок 17.4).

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

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

С увеличением количества клиентов и сетевого трафика количество серверов целесообразно увеличивать.


Учитывая многообразие задач решаемых сервером, в больших сетях применяют специализированные серверы.

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

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

Ø      Серверы приложений обеспечивает выполнение прикладных частей клиент-серверных приложений.

Ø      Факс-сервер, почтовый сервер, коммуникационный сервер.

На серверах устанавливаются специальные сетевые операционные системы например:

  • Windows NT Server;

  • Windows 2000 Server;

  • Netware of Novell;

  • Unix, Linux.

Преимущества применения сетей на основе сервера

1. Администрирование и управление доступом к данным осуществляется централизованно. Один администратор формирует политику безопасности и применяет её в отношении каждого пользователя (защита данных).

2. Резервное копирование данных. Так как важная информация расположена централизованно на одном или нескольких серверах, достаточно просто организовать ее резервное копирование.

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

4. Сети на основном сервере способны поддерживать тысячи пользователей.

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

Естественно, что для серверов требуется специализированное программное обеспечение, обладающее следующими возможностями:

·        Возможность симметричной многопроцессорной обработки (распределение задач по имеющимся процессорам).

·        Поддержка различных типов компьютеров (Intel, AMD).

·        Поддержка длинных имён файлов и неограниченного объёма файлов.

^ Комбинированные сети

Очень часто применяются комбинированные сети, совмещающие качества как одноранговых сетей так и сетей на основном сервере. Принцип работы такой сети следующий: на сервер ставят серверную операционную систему (например, NT Server или Netware), а компьютеры – клиенты сети предоставляют свои ресурсы по мере необходимости, как в одноранговой.  Серверы отвечают за совместное использование основных приложений и данных. Клиенты, так же могут предоставлять в общее пользование свои жесткие диски и разрешать доступ к своим данным.

 
^

17.1.3 Топология компьютерных сетей

Вверх


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

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

Топология как математическое понятие: Топология (от греч. topos – место и ... логия), раздел математики, изучающий топологические свойства фигур, т. е. свойства, не изменяющиеся при любых деформациях, производимых без разрывов и склеиваний. Примерами топологических свойств фигур являются размерность, число кривых , ограничивающих данную область и т. д. Так, окружность, эллипс, контур квадрата имеют одни и те же топологические свойства, т. к. эти линии могут быть деформированы одна в другую описанным выше образом; в то же время кольцо и круг обладают различными топологическими свойствами: круг ограничен одним контуром, а кольцо – двумя.  (Советский энциклопедический словарь, 1979).
^

Наиболее распространенные виды топологий сетей:


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


 

 Подобная топология получила название «общая шина» (англ. Bus).  Линейная шина – самая простая топология. При использовании общей шины все устройства подключаются к одному кабелю, на концах которого расположены терминаторы. Терминатор – как заглушка на конце сети, устанавливается для предотвращения отражения сигнала в конце шины. Данные передаются в виде электрических импульсов всем компьютерам сети, а принимает только тот, чей адрес закоди­рован в передаче. Шина – широковещательный способ (данные передаются всем компьютерам). Производительность сети зависит от количества компьютеров. Шинапассивная топология (компьютеры только слушают сигналы, но не регенерируют их). Таким образом, производительность принятия на конце сети будет ниже. Неработоспособность компьютера в такой топологии не влияет на работоспособность сети

 Звездообразная сеть или «звезда» (Star). Сеть, в которой имеется только один промежуточный узел.

 

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

 

Кольцевая сеть или «кольцо» (Ring).  Сеть, в которой к каждому узлу присоединены две и только две ветви.


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

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

1) Звезда  –  шина (Star – bus).2)                 Звезда – кольцо (Star – Ring).

 

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

Наиболее распространённые архитектуры:

·              Ethernet (англ. ether – эфир) – широковещательная сеть. Это значит, что все станции сети могут принимать все сообщения. Топология – линейная или звездообразная. Скорость передачи данных 10 или 100 Мбит/сек.

·              Arcnet (Attached Resource Computer Network – компьютерная сеть соединённых ресурсов) – широковещательная сеть. Физическая топология – дерево. Скорость передачи данных 2,5 Мбит/сек.

·              Token Ring (эстафетная кольцевая сеть, сеть с передачей маркера) – кольцевая сеть, в которой принцип передачи данных основан на том, что каждый узел кольца ожидает прибытия некоторой короткой уникальной последовательности битов – маркера – из смежного предыдущего узла. ·              FDDI (Fiber Distributed Data Interface) – сетевая архитектура высокоскоростной передачи данных по оптоволоконным линиям.

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


Windows NT - OC нового поколения !
На данный момент мировая компьютерная индустрия развивается очень стремительно.
Производительность систем возрастает, а следовательно возрастают возможности
обработки больших объёмов данных.
Операционные системы класса MS-DOSа уже не справляются с таким потоком данных и
не могут целиком использовать ресурсы современных компьютеров. Поэтому в
последнее время происходит переход на более мощные и наиболее совершенные
операционные системы класса UNIX, примером которых и является Windows NT,
выпущенная корпорацией Microsoft.
Прежде чем начать говорить о Windows NT я хотел бы предложить статью из
еженедельника ComputerWeek Moscow от 1-7 февраля 1996, которая выражает мнение
производителей компьютерных систем по вопросу о перспективности Windows NT : “
Производители компьютеров возлагают большие надежды на NT.
Производители готовы обрушить на рынок лавину рабочих станций и серверов с
предварительно установленными Windows NT и Gibraltar, новым серверным ПО для
Internet. Microsoft не публикует данные об инсталлированной базе NT, однако
утверждает, что более 40 компаний собираются использовать NT Workstation в
качестве ОС более чем на 10. 000 ПК. К тому же, по данным нескольких
консалтинговых фирм, в месяц продаётся более 30. 000 копий ОС NT Server. Эти
цифры заставляют задуматься о том, как бы не опоздать.
“Спору нет, NT - это удача Microsoft “, - считает Мариса Хейнс, начальник отдела
маркетинга продуктов MIPS - NT компании NEC Technologies.
Вот почему Compaq, Dell, Gateway 2000, NEC, NetFrame и другие производители
компьютеров представляют новые NT - системы.
11 декабря NEC перешла в наступление одновременно на рынке серверов и настольных
компьютеров, выпустив RISC server 2250 и RISC station 2250. Стоимость систем -
от 5500 до 23500 US$, их конфигурация может включать в себя два микропроцессора
Mips R4400 с тактовой частотой 250 Мгц. RISC station компании NEC имеет
встроенные средства обработки трёхмерных графических приложений, написанных на
OpenGL, и предназначаются для применения в области САПР и мультимедиа -
приложений. RISC server, определяемый как коммуникационный сервер общего
назначения, поддерживают пакет Microsoft BackOffice.
В промышленных кругах говорят, что NEC готовит ещё ряд серверов с установленным
ПО Gibraltar, которые она собирается выпустить на рынок в начале этого года.
”Скоро мы подробнее узнаем об этих планах “, - уверена Хейнс.
Компания NetFrame последовала примеру NEC и забросила NetWare.
Она только что приступила к выпуску Cluster Server 8500 - четырёхканального
многопроцессорного сервера с высокой отказоустойчивостью. Его минимальная цена -
31900 US$.
“Ходит много разговоров об отказоустойчивых NT - серверах, но сегодня только мы
поставляем такие системы “, - заявил Кевин Кин, начальник отдела маркетинга
продукции компании NetFrame.
По крайней мере один реселлер NetFrame - корпорация Lantec - с энтузиазмом
ожидает новые серверы. ” У нас много контрактов на NT, - говорит Джерри Бил,
ведущий инженер сервисной службы Lantec, - NetFrame поможет нам частично
удовлетворить эти заказы “.
Тем временем Compaq, Dell и Getway готовят NT - серверы на базе микропроцессоров
Pentium Pro компании Intel. Ожидается, что NT станет ведущей ОС для Pentium Pro,
поскольку Windows 95 содержит 16- ти разрядный код и работает на Pentium Pro не
так быстро, как полностью 32-ух разрядная NT. В 1996 году объём продаж NT будет
нарастать, скорее всего, как снежный ком. “ Далее я постараюсь наиболее кратко
рассказать о внутреннем устройстве Windows NT и о взаимодействие её внутренних
модулей.
Когда пользователь впервые видит операционную систему Microsoft Windows NT, ему
в глаза бросается отчётливое внешнее сходство с полюбившимся интерфейсом системы
Windows 3. x. Однако это видимое сходство является лишь незначительной частью
Windows NT.
Windows NT является 32-ух разрядной операционной системой с приоритетной
многозадачностью. В качестве фундаментальных компонентов в состав операционной
системы входят средства обеспечения безопасности и развитый сетевой сервис.
Windows NT также обеспечивает совместимость со многими другими операционными и
файловыми системами, а также с сетями.
Windows NT способна функционировать как на компьютерах, оснащенных CISC -
процессорами со сложной системой команд ( complex instruction set computing ),
так и на компьютерах с RISC - процессорами, имеющими сокращённый набор
инструкций ( reduced instruction set computing ). Операционная система Windows
NT также поддерживает высокопроизводительные системы с мультипроцессорной
конфигурацией.
Знакомым в Windows NT является только внешний облик. За графическим
пользовательским интерфейсом скрываются мощные возможности. Приводя обзорные
сведения по составляющим Windows NT компонентам я постараюсь более детально
рассмотреть некоторые из них.
Задачи, поставленные при создании Windows NT Система Windows NT не является
дальнейшим развитием ранее существовавших продуктов. Её архитектура создавалась
с нуля с учётом предъявляемых к современной операционной системе требований.
Особенности новой системы, разработанной на основе этих требований, перечислены
ниже.
Стремясь обеспечить совместимость (compatible) новой операционной сис темы,
разработчики Windows NT сохранили привычный интерфеис Windows и реализовали
поддержку существующих файловых систем (таких, как FAT ) и различных приложений
(написанных для MS - Dos, OS/2 1. x, Windows 3. x и POSIX ). Разработчики также
включили в состав Windows NT средства работы с различными сетевыми средствами.
Достигнута переносимость (portability) системы, которая может теперь работать
как на CISC, так и на RISC - процессорах. К CISC относятся Intel совместимые
процессоры 80386 и выше ;RISC представлены системами с процессорами MIPS R4000,
Digital Alpha AXP и Pentium серии P54 и выше.
Масштабируемость (scalability) означает, что Windows NT не привязана к
однопроцессорной архитектуре компьютеров, а способна полностью использовать
возможности, предоставляемые симметричными мультипроцессорными системами. В
настоящее время Windows NT может функционировать на компьютерах с числом
процессоров от 1 до 32. Кроме того, в случае усложнения стоящих перед
пользователями задач и расширения предъявляемых к компьютерной среде требований,
Windows NT позволяет легко добавлять более мощные и производительные серверы и
рабочии станции к корпоративной сети. Дополнительные преимущества даёт
использование единой среды разработки и для серверов, и для рабочих станций.
Windows NT имеет однородную систему безопасности (security), удовлетворяющую
спецификациям правительства США и соответствующую стандарту безопастности В2. В
корпоративной среде критическим приложениям обеспечивается полностью
изолированное окружение.
Распределённая обработка ( distributed processing ) означает, что Windows NT
имеет встроенные в систему сетевые возможности. Windows NT также позволяет
обеспечить связь с различными типами хост - компьютеров благодаря поддержке
разнообразных транспортных протоколов и использованию средств “клиент-сервер”
высокого уровня, включая именованные каналы, вызовы удалённых процедур (RPC -
remote procedure call ) и Windows - сокеты.
Надёжность и отказоустойчивость (reliability and robustness) обеспечивают
архитектурными особенностями, которые защищают прикладные программы от
повреждения друг другом и операционной системой. Windows NT использует
отказоустойчивую структурированную обработку особых ситуаций на всех
архитектурных уровнях, которая включает восстанавливаемую файловую систему NTFS
и обеспечивает защиту с помощью встроенной системы безопасности и
усовершенствованных методов управления памятью.
Возможности локализации ( allocation) представляют средства для работы во многих
странах мира на национальных языках, что достигается применением стандартаISO
Unicod ( разработан международной организацией по стандартизации ).
Благодаря модульному построению системы обеспечивается расширяемость
(insibility) Windows NT, что, как будет показано в следующем разде- ле,
позволяет гибко осуществлять добавление новых модулей на различные уровни
операционной системы.
Архитектурные модули Windiws NT Как показано на следующем рисунке, Windows NT
представляет из семодульную (более совершенную, чем монолитная )операционную
систему, которая состоит из отдельных взаимосвязанных относительно простых
модулей.
Основными модулями Windows NT являются (перечислены в порядке следования от
нижнего уровня архитектуры к верхнему ) : уровень аппаратных абстракций HAL
(Hardware Abstraction Layer ), ядро (Kernel ), исполняющая система (Executive),
защищенные подсистемы (protected subsystems) и подсистемы среды (environment
subsystems ).
Модульная структура Windows NT

Краткое описание модульной структуры Windows NT представлено далее. Дальнейший
материал посвящён детальному рассмотрению каждого из компонентов Windows NT,
начиная с уровня аппаратных абстракций HAL, который располагается между
аппаратными средствами компьютера и остальной частью операционной системы.
Уровень аппаратных абстракций виртуализирует аппаратные интерфейсы, обеспечивая
тем самым независимость остальной части операционной системы от конкретных
аппаратных особенностей. Подобный подход позволяет обеспечить легкую
переносимость Windows NT с одной аппаратной платформы на другую.
Ядро является основой модульного строения системы и координирует выполнение
большинства базовых операций Windows NT. Этот компонент специальным образом
оптимизирован по занимаемому объёму и эффективности функционирования. Ядро
отвечает за планирование выполнения потоков, синхронизацию работы нескольких
процессоров, обработку аппаратных прерываний и исключительных ситуаций.
Исполняющая система включает в свой состав набор программных конструкций
привилегированного режима ( kernel - mode ), представляющих базовый сервис
операционной системы подсистемам среды. Исполняющая система состоит из
нескольких компонентов ; каждая из них предназначена для поддержки определённого
системного сервиса. Так, один из компонентов - монитор безопасности (Security
Reference Monitor) - функционирует совместно с защищёнными подсистемами и
обеспечивает реализацию модели безопасности системы.
Подсистемы среды представляют собой защищённые серверы пользовательского режима
(user-mode), которые обеспечивают выполнение и поддержку приложений,
разработанных для различного операционного окружения (различных операционных
систем ). Примером подсистем среды могут служить подсистемы Win32 и OS/2.
Уровень аппаратных абстракций Уровень аппаратных абстракций ( HAL ) представляет
собой создаваемый производителями аппаратных средств слой программного
обеспечения, который скрывает (или абстрагирует ), особенности и различия
аппаратуры от верхних уровней операционной системы. Таким образом, благодаря
обеспечиваемому HALом фильтру, различные аппаратные средства выглядят аналогично
с точки зрения операционной системы ; снимается необходимость специальной
поднастройки операционной системы под используемое оборудование.
При создании уровня аппаратных абстракций ставилась задача подготовки процедур,
которые позволяли бы единственному драйверу конкретного устройства поддерживать
функционирование этого устройства для всех платформ. HAL ориентирован на большое
число разновидностей аппаратных платформ с однопроцессорной архитектурой ; таким
образом для каждого из аппаратных вариантов не требуется отдельной версии
операционной системы.
Процедуры HAL называются как средствами операционной системы (включая ядро), так
и драйверами устройств. При работе с драйверами устройств уровень аппаратных
абстракций обеспечивает поддержку различных технологий ввода - вывода (вместо
традиционной ориентации на одну аппаратную реализацию или требующей значительных
затрат адаптации под каждую новую аппаратную платформу ).
Уровень аппаратных абстракций позволяет также “скрывать” от остальных уровней
операционной системы особенности аппаратной реализации симметричных
мультипроцессорных систем.
Ядро Ядро (Kernel) является “сердцем ” Windows NT и работает в тесном контакте с
уровнем аппаратных абстракций. Этот модуль, в первую очередь, занимается
планированием действий компьютерного процессора. В случае если компьютер
содержит несколько процессоров, ядро синхронизирует их работу с целью достижения
максимальной производительности системы.
Ядро осуществляет диспетчеризацию нитей управления (threads, иногда называются
подзадачами, ответвлениями или потоками ), которые являются основными объектами
в планируемой системе. Нити управления определяются в контексте процесса
;процесс включает адресное пространство, набор доступных процессу объектов и
совокупность выполняемых в контексте процесса нитей управления. Объектами
являются управляемые операционной системой ресурсы.
Ядро производит диспетчеризацию нитей управления таким образом, чтобы
максимально загрузить процессоры системы и обеспечить первоочередную обработку
нитей с более высоким приоритетом. ( Всего существует 32 значения приоритета,
которые сгруппированы в два класса приоритетов : real-time и variable ).
Подобный подход позволяет достичь максимальной эффективности операционной
системы.
Под компоненты исполняющей системы, такие как диспетчер ввода вывода и диспетчер
процессов, используют ядро для синхронизации действий. Они также взаимодействуют
с ядром для более высоких уровней абстракции, называемых объектами ядра
;некоторые из этих объектов экспортируются внутри пользовательских вызовов
интерфейса прикладных программ (API).
Ядро управляет двумя типами объектов.
Объекты диспетчеризации (dispatcher objects) характеризуются сигнальным
состоянием ( signaled или nonsignaled ) и управляют диспетчеризацией и
синхронизацией системных операций. Эти объекты включают события, мутанты,
мутэксы, семафоры, нити управления и таймеры ( events, mutants, mutexes,
semaphores, threads, timers ).
Управляющие объекты ( control objects ) используются для операций управления
ядра, но не воздействуют на диспетчеризацию или синхронизацию.
Управляющие объекты включают в себя асинхронные вызовы процедур, прерывания,
уведомления и состояния источника питания, процессы и профили (asynhcronous
procedure calls, interupts, power notifies, power statuses, processes,
profiles).
Исполняющая система Windows NT Исполняющая система ( Executive ), в состав
которой входит ядро и уровень аппаратных абстракций HAL, обеспечивает общий
сервис системы, который могут использовать все подсистемы среды. Каждая группа
сервиса находится под управлением одной из отдельных составляющих исполняющей
системы : диспетчера объектов (Object Manager) диспетчера виртуальной памяти
(Virtual Memory Manager); диспетчера процессов (Process Manager) средства вызова
локальных процедур (Local Procedure Call Facility); диспетчера ввода - вывода
(E/O Maneger); мониторы безопасности (Security Reference Monitor).
Монитор безопасности совместно с процессором входа в сиситему ( Logon ) и
защищёнными подсистемами реализует модель безопасности Windows NT.
Верхний уровень исполняющей системы называется системным сервисом (System
Services ). Показанный на следующем рисунке системный сервис представляет собой
интерфейс между подсистемами среды пользовательского режима и привилегированным
режимом.

Диспетчер кэша Архитектура ввода - вывода содержит единственный диспетчер кэша
(Cache Manager), который осуществляет кэширование для всей системы ввода -
вывода. Кэширование (Caching) - метод, используемый файловой системой для
увеличенияэффективности. Вместо непосредственной записи и считывания с диска,
часто используемые файлы временно сохраняются в кэш - памяти ;таким образом,
работа с этими файлами выполняется в памяти. Операции с данными, находящимися в
памяти, производятся значительно быстрее операций с данными на диске.
Диспетчер кэша использует модель отображения файла, которая интегрированна с
диспетчером виртуальной памяти Windows NT. Диспетчер кэша обеспечивает службу
кэширования для всех файловых систем и сетевых компонентов, функционирующих под
управлением диспетчера ввода - вывода. В зависимости от объёма доступной
оперативной памяти диспетчер кэша может динамически увеличивать или уменьшать
размер кэша. Когда процесс открывает файл, который уже находился в кэше,
диспетчер кэша просто копирует данные из кэша в виртуальное адресное
пространство.
Диспетчер кэша поддерживает службы типа ленивой записи ( lazy write) и ленивой
фиксации (lazy commit), которые могут значительно увеличить эффективность
файловой системы. В процессе ленивой записи изменения регистрируются в кэше
файловой структуры, обеспечивающем более быстрый доступ. Позднее, когда загрузка
центрального процессора снижена, диспетчер кэша заносит изменения на диск.
Ленивая фиксация подобна ленивой записи. Вместо немедленной маркировки
транзакции как успешно завершившейся, переданная информация кэшируется и позднее
в фоновом режиме записывается в журнал файловой системы.
Драйверы файловой системы В архитектуре ввода - вывода Windows NT управление
драйверами файловой системы осуществляет диспетчер ввода - вывода. Windows NT
допускает использование множества файловых систем, включая существующие файловые
системы типа FAT. Для обеспечения совместимости снизу вверх с операционными
системами MS-Dos, Windows 3. x и OS/2, Windows NT поддерживает файловые системы
FAT и HPFS. Кроме того, Windows NT также поддерживает NTFS - новую файловую
систему, разработанную специально для использования с Windows NT. NTFS
обеспечивает множество возможностей, включая средства восстановления файловой
системы, поддержку Unicode, длинных имён файлов и поддержку для POSIX.
Архитектура ввода - вывода Windows NT не только поддерживает традиционные
файловые системы, но и обеспечивает функционирование сетевого редактора и
сервера в качестве драйверов файловой системы. С точки зрения диспетчера ввода -
вывода, нет никакой разницы между работой с файлом, сохранённым на удалённом
компьютере сети, и работой с файлом на локальном жёстком диске. Редиректоры и
серверы могут быть загружены и выгружены динамически, так же как и любые другие
драйверы ;на одном компьютере может одновременно находиться большое число
редиректоров и серверов.
Сетевые драйверы Следующим типом драйверов, присутствующих в качестве компонента
в архитектуре ввода - вывода, являются сетевые драйверы. Windows NT включает
интегрированные возможности работы с сетями и поддержку для распределённых
приложений. Как показано на следующем рисунке работа с се -9тями обеспечивается
рядом сетевых драйверов.
Редиректоры и серверы функционируют как драйверы файловой системы и выполняются
на уровне интерфейса поставщика или ниже, где находятся NetBIOS и Windows -
сокет.
Драйверы транспортного протокола общаются с редиректорами и серверами через
уровень, называемый интерфейсом транспортного драйвера (TDI - Transport Driver
Interface). Windows NT включает следующие транспортные средства : Протокол
управления передачей / межсетевой протокол TCP/IP, который обеспечивает
возможность работы с широким диапазоном существующих сетей.
NBF, потомок расширенного интерфейса пользователя NetBIOS (NetBEUI ), который
обеспечивает совместимость с существующими локальными вы- числительными сетями
на базе LAN Manager, LAN Server и MS-Net.
Управление передачей данных (DLC - Data Link Control), которое обеспечи-вает
интерфейс для доступа к мэйнфрэймам и подключённым к сети прин-терам.
NWLink, реализация IPX/SPX, обеспечивающаясвязь с Nowell NetWare.
В нижней части сетевой архитектуры находится драйвер платы сетевого адаптера.
Windows NT в настоящее время поддерживает драйверы устройств, выполненные в
соответствии со спецификацией NDIS (Network Device Inerface Specification )
версии 3. 0. NDIS предоставляет гибкую среду обмена данными между транспортными
протоколами и сетевыми адаптерами. NDIS 3. 0 позволяет отдельному компьютеру
иметь несколько установленных в нём плат сетевого адаптера. В свою очередь,
каждая плата сетевого адаптера может поддерживать несколько транспортных
протоколов для доступа к различным типам сетевых станций.
Модель безопасности Windows NT Модель безопасности Windows NT представлена
монитором безопасности (Security Reference Monitor), а также двумя другими
компонентами : процессором входа в систему (Logon Process) и безопасными
защищёнными подсистемами.
В многозадачной операционной системе, каковой является Windows NT приложения
совместно используют ряд ресурсов системы, включая память компьютера, устройства
ввода - вывода, файлы и процессор(ы) системы. Windows NT включает набор
компонентов безопасности, которые гарантируют, что приложения не смогут
обратиться к этим ресурсам без соответствующего разрешения.
Монитор безопасности отвечает за проведение в жизнь политики проверки
правильности доступа и контроля, определённой локальной подсистемой
безопасности. Монитор безопасности обеспечивает услуги по подтверждению доступа
к объектам, проверке привилегий пользователя и генерации сообщений как для
привилегированного режима, так и для режима пользователя. Монитор безопасности,
подобно другим частям операционной системы, выполняется в привилегированном
режиме.
Процесс входа в систему в Windows NT предусматривает обязательный вход в систему
безопасности для идентификации пользователя. Каждый пользователь должен иметь
бюджет и должен использовать пароль для обращения к этому бюджету.
Прежде чем пользователь сможет обратиться к любому ресурсу компьютера с Windows
NT, он должен войти в систему через процесс входа в систему для того, чтобы
подсистема безопасности могла распознать имя пользователя и пароль. Только после
успешного установления подлинности монитор безопасности выполняет процедуру
проверки правильности доступа для определения права пользователя на обращение к
этому объекту.
Защищённость ресурсов - одна из особенностей, предоставляемая моделью
безопасности. Задачи не могут обращаться к чужим ресурсам (типа памяти) иначе,
чем через применение специальных механизмов совместного использования.
Windows NT также предоставляет средства контроля, которые позволяют
администратору фиксировать действия пользователей.
Итоги Подводя итоги всему вышеописанному хочу сказать, что это только маленькая
часть всех возможностей, которые заложены в Windows NT. Хочу кратко перечислить
достоинства Windows NT : Это современная ОС, отвечающая требованиям современной
аппаратуры ! Это прекрасно совместимая с другими ОС ! Это многозадачная
(мультизадачная) ОС ! Это хорошо защищённая ОС ! И это удобная и надёжная ОС !

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

 

 

^ 12.1 Понятие алгоритма

 

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

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

Слово "алгоритм" появилось в IX веке и произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса Ал-Хорезми (Alhorithmi). В своей книге "Об индийском счете" он изложил правила записи натуральных чисел с помощью арабских цифр и правила выполнения четырех арифметических действий над многозначными числами.

В настоящее время понятие алгоритма является одним из фундаментальных понятий науки информатики (Перейти к теме 1.1).

Алгоритм – точное предписание, состоящее из последовательности действий для некоторого исполнителя, ведущих к  решению задачи за конечное число шагов.

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

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

Исполнителя характеризуют: среда, элементарные действия, система команд, отказы.

Среда (или обстановка) — это "место обитания" исполнителя.

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

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

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

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

Основным исполнителем несложных алгоритмов является человек. При решении сложных задач в роли исполнителя часто выступает ЭВМ.

Пример 12.1.1. Для исполнителя Робота из школьного учебника среда – это бесконечное клеточное поле. Стены и закрашенные клетки тоже часть среды. А их расположение и положение самого Робота задают конкретное состояние среды.

Команда Робота "вверх" может быть выполнена, если выше Робота нет стены. Ее результат — смещение Робота на одну клетку вверх.

 


  1   2   3   4   5   6   7   8   9   ...   52

Реклама:





Скачать файл (9383 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru