- •Вопрос 1. Появление и развитие информатики
- •Вопрос 2. Документалистика, как источник информатики.
- •Вопрос 3. Кибернетика, как основа информатики.
- •Вопрос 4. Структура информатики
- •Вопрос 5. Место информатики в ряду других фундаментальных наук
- •Вопрос 6. Роль и значение так называемых информационных революций
- •Вопрос 7. История становления вычислительной техники
- •Вопрос 8. Смена поколений эвм
- •Вопрос 9. Понятие информационной технологии
- •Вопрос 10. Научные представления об информационном обществе
- •Вопрос 11. Процесс информатизации общества
- •Вопрос 12. Информационная культура – термин и содержание
- •Вопрос 13. Системы счисления. Виды систем счисления. Методы перевода чисел.
- •Вопрос 19. Экономические аспекты информационных технологий
- •Вопрос 14. Форматы представления чисел с фиксированной запятой.
- •Вопрос 15. Форматы представления чисел с плавающей запятой.
- •Вопрос 16. Двоичная арифметика.
- •Вопрос 17. Прямой, обратный, дополнительны код.
- •Вопрос 18. Выполнение арифметических операций с числами с плавающей и фиксированной запятой.
- •Вопрос 20. Правовые аспекты информационных технологий
- •Вопрос 21. Виды компьютерных преступлений.
- •Вопрос 22. Вредные последствия компьютерных преступлений.
- •Вопрос 23. Понятие алгоритма, исполнителя алгоритма, своства алгоритма.
- •Вопрос 24. Формы записи алгоритмов. Словесная форма записи алгоритмов.
- •Вопрос 25. Формы записи алгоритмов. Графический способ записи алгоритмов.
- •Вопрос 26. Формы записи алгоритмов. Понятие псевдокодов.
- •Вопрос 27. Базовые алгоритмические структуры.
- •Вопрос 28. Вложенные циклы.
- •Вопрос 29. Процессор. Эволюция.
- •Вопрос 30. Материнская плата. Основные характеристики. Интегрированные решения.
- •Вопрос 31. Основные шинные интерфейся материнских плат.
- •Вопрос 32. Внешняя память. Оперативная память.
- •Вопрос 33. Внешняя память. Постоянная память rom cmos.
- •Вопрос 34. Видео и аудио палата. Основные характеристики.
- •Вопрос 35. Сетевая карта. Модем. Классификация модемов.
- •Вопрос 36. Принтеры. Классификация принтеров.
- •Вопрос 37. Сканеры. Разновидность сканеров.
- •Вопрос 38. Мониторы. Мониторы на элт и жк- мониторы.
- •Вопрос 39. Логическая структура жесткого диска.
- •Вопрос 40. Контроллеры дисков. Современные типы контроллеров hdd.
- •Вопрос 41. Файлы с точки зрения пользователя.
- •Вопрос 42. Имена файлов. Структура файлов.
- •Вопрос 43. Типы и атрибуты файлов.
- •Вопрос 44. Способы доступа к файлу.
- •Вопрос 45. Операции над файлом.
- •Вопрос 46. Директории. Логическая структура файлового архива.
- •Вопрос 47. Операции над директориями.
- •Вопрос 48. Защита файлов.
Вопрос 44. Способы доступа к файлу.
Для использования информации, хранимой в файлах, она должна быть считана в память компьютера. Есть несколько способов доступа к файлам.
Ранние ОС давали только один способ доступа – последовательный (модель ленты). Записи считывались в порядке поступления. Текущая позиция считывания могла быть возвращена к началу файла (rewind). Вместе с магнитными барабанами и дисками появились файлы с прямым (random) доступом. Для специфицирования места, с которого надо начинать чтение используются два способа: с начала, или с текущей позиции, которую дает операция seek.
Последовательный доступ базируется на модели ленты и работает как на устройствах последовательного доступа, так и прямого. Это наиболее общая модель. Организация прямого доступа существенна для многих приложений, например, для систем управления базами данных.
Не все системы поддерживают оба (последовательный и прямой) метода доступа. Последовательный доступ легко эмулировать при помощи прямого, однако реализация прямого доступа через последовательный была бы очень неэффективной.
Помимо прямого и последовательного существуют и другие методы доступа. Обычно они включают конструирование индекса файла и базируются на прямом методе доступа. Для поиска записи вначале происходит обращение к индексу, где находится указатель на нужную запись.
Предположим, что имеется большой файл, содержащий разнообразные сведения о студентах, состоящих из записей с несколькими полями, и возникает задача организации быстрого поиска по одному из полей, например по фамилии студента.
Рис. 2 Пример организации индекса для последовательного файла
Р исунок иллюстрирует решение данной проблемы – организацию индексно-последовательного метода доступа к фалу.
Способ выделения дискового пространства при помощи индексных узлов, применяемый в ряде ОС (Unix и ряде других, см. следующую главу) может служить другим примером организации индекса.
В этом случае ОС использует древовидную организацию блоков, при которой блоки, составляющие файл, являются листьями дерева, а каждый внутренний узел содержит указатели на множество блоков файла. Для больших файлов индекс может быть слишком большим. В этом случае создают индекс для индексного файла (блоки промежуточного уровня или блоки косвенной адресации).
Вопрос 45. Операции над файлом.
Операционная система должна предоставить в распоряжение пользователя набор операций для работы с файлами, реализованных через системные вызовы. Чаще всего при работе с файлом пользователь выполняет не одну, а несколько операций. Во-первых, нужно найти данные файла и его атрибуты по его символьному имени, во-вторых, считать необходимые атрибуты файла в отведенную область оперативной памяти и проанализировать права пользователя на выполнение требуемой операции. Затем выполнить операцию, после чего освободить занимаемую данными файла область памяти. Рассмотрим в качестве примера основные файловые операции ОС Unix:
Create. Создание файла, не содержащего данных. Смысл данного вызова - объявить, что файл существует и присвоить ему ряд атрибутов.
Delete. Удаление файла и освобождение занятого им дискового пространства.
Open. Перед использованием файла процесс должен его открыть. Цель данного системного вызова разрешить системе проанализировать атрибуты файла и проверить права доступа к файлу, а также считать в оперативную память список адресов блоков файла для быстрого доступа к его данным.
Close. Если работа с файлом завершена, его атрибуты и адреса блоков на диске больше не нужны. В этом случае файл нужно закрыть, чтобы освободить место во внутренних таблицах файловой системы.
Seek. Дает возможность специфицировать место внутри файла, откуда будет производиться считывание (или запись) данных, то есть задать текущую позицию.
Read. Чтение данных из файла. Обычно это происходит с текущей позиции. Пользователь должен задать объем считываемых данных и предоставить буфер для них.
Write. Запись данных в файл с текущей позиции. Если текущая позиция находится в конце файла, его размер увеличивается, в противном случае запись осуществляется на место имеющихся данных, которые, таким образом, теряются.
Get attributes. Предоставляет процессам нужные им сведения об атрибутах файла. В качестве примера можно привести, утилиту make, которая использует информацию о времени последней модификации файлов.
Set attributes. Дает возможность пользователю установить некоторые атрибуты. Наиболее очевидный пример - установка режима доступа к файлу.
Rename. Возможность переименования файла создает дополнительные удобства для пользователя. Данная операция может быть смоделирована копированием данного файла в файл с новым именем и последующим его удалением.
Существует два способа выполнить последовательность действий над файлами:
В первом случае для каждой операции выполняются как универсальные, так и уникальные действия (схема stateless). Например, последовательность операций может быть такой: open, read1, close, … open, read2, close, … open, read3, close.
Альтернативный способ, это когда универсальные действия выполняются в начале и в конце последовательности операций, а для каждой промежуточной операции выполняются только уникальные действия. В этом случае последовательность вышеприведенных операций будет выглядеть так: open, read1, … read2, … read3, close.
Большинство ОС использует второй способ, как более экономичный и быстрый. Первый способ более устойчив к сбоям, поскольку результаты каждой операции становятся независимыми от результатов предыдущей операции, поэтому он иногда применяется в распределенных системах (например, Sun NFS).