
- •А. Аппаратное обеспечение компьютеров
- •1. Раздел "Основы теории компьютеров"
- •2. Минимизация булевых функций с помощью диаграмм Вейча.
- •3. Определение и применение базиса при построении произвольных функций алгебры-логики.
- •4. Сложение и вычитание чисел с фиксированной запятой.
- •5. Умножение чисел с плавающей запятой.
- •6. Форматы команд.
- •7. Схема выполнения машинной двухадресной команды типа "Регистр-память" на однопроцессорном компьютере.
- •8. Схема выполнения машинной двухадресной команды типа "Регистр-регистр" на однопроцессорном компьютере.
- •2. Раздел "Архитектура вычислительных систем"
- •1. Архитектура кэш-памяти. Ассоциативное распределение информации в кэш-памяти.
- •2. Архитектура кэш-памяти. Прямое распределение (отображение) информации в кэш-памяти.
- •3. Архитектура векторного блока супер-ЭВМ CYBER-205. Особенности её конвейеров, обеспечивающие механизм "зацепления команд".
- •4. Векторные процессоры: структура аппаратных средств.
- •5. Пять основных архитектур высокопроизводительных ВС, их краткая характеристика, примеры.
- •6. SMP архитектура. Достоинства и недостатки. Область применения, примеры ВС на SMP.
- •7. MPP архитектура. История развития. Основные принципы. Концепция, архитектура и характеристики суперкомпьютера Intel Paragon.
- •8. Кластерная архитектура. Проблема масштабируемости. Примеры.
- •10. Понятие конвейера. "Жадная" стратегия. Понятие MAL в теории конвейера.
- •3. Раздел "Схемотехника ЭВМ"
- •1. Этапы проектирования комбинационных схем на примере дешифратора на 4 выхода: определение, таблица истинности, функция, логическая схема. Увеличение разрядности до 16-ти выходов.
- •2. Этапы проектирования комбинационных схем на примере мультиплексора 4-1: определение, таблица истинности, функция, логическая схема. Увеличение разрядности до 16-1.
- •3. Этапы проектирования комбинационных схем на примере схем сравнения двухразрядных слов: определение, таблица истинности, функция, логическая схема. Схема сравнения четырёхразрядных слов на элементах "Исключающее ИЛИ".
- •6. Синтез многовыходных комбинационных схем. Этапы проектирования в базисе И-НЕ.
- •7. Триггерные схемы: определение, классификация, условные графические обозначения, динамические параметры. Обобщённая структура двухступенчатого триггера, диаграмма его работы, условное графическое обозначение, динамические параметры.
- •8. Синтез двухступенчатого триггера по заданной таблице внешних переходов: таблица истинности, минимизация, схема. Построить временную диаграмму для двух переключений триггера, определить максимальные задержки переключений.
- •9. Счётчики: определение, модуль счётчика, динамические параметры. Примеры суммирующего, вычитающего и реверсивного счётчиков: схемы, временные диаграммы.
- •10. Счётчики: определение, модуль счётчика. Организация цепей переноса: схемы, динамические параметры. (CP)
- •11. Синтез синхронных счётчиков с заданным модулем на заданном типе триггера (DV, JK).
- •Б. Программное обеспечение компьютеров
- •4. Раздел "Алгоритмы и структура данных"
- •1. Понятие логических структур данных. Отображение структуры данных в памяти вектором и списком. Типы списков. Определение, основные операции; особенности их реализации.
- •2. Стек и очередь: определение, основные операции. Особенности выполнений операций при реализации стека и очереди вектором.
- •3. Стек и очередь: определение, основные операции. Особенности выполнения операций при реализации стека и очереди списком.
- •4. Просматриваемая динамическая таблица-вектор: определение, основные операции, особенности их реализации.
- •5. Просматриваемая динамическая таблица-список: определение, основные операции, особенности их реализации.
- •6. Упорядоченная таблица-вектор: определение, основные операции, особенности их реализации.
- •7. Таблица произвольного доступа: определение, основные операции, отображение в памяти. Функция рандомизации, её назначение.
- •9. Перемешанная таблица, использующая перемешивание сложением: определение, основные операции, особенности их реализации.
- •10. Перемешанная таблица, использующая перемешивание сцеплением: определение, основные операции, особенности их реализации.
- •5. Раздел "Базы данных"
- •1. Системы с базами данных. Понятие системы управления базами данных СУБД. Функции СУБД.
- •2. Понятие независимости от данных. Трёхуровневая архитектура ANSI-SPARC. Сравнительная характеристика уровней.
- •3. Модель данных. Назначение моделей данных. Компоненты моделей данных. Классификация моделей данных.
- •5. База данных реляционного типа. Основные понятия и структура реляционной модели. Реляционные языки. Основные правила целостности реляционной модели.
- •6. Реляционная алгебра. Основные операции реляционной алгебры.
- •7. Язык SQL. Операторы определения и манипулирования данными. Выборка данных из таблиц.
- •8. Модель данных "сущность-связь". Основные концепции и способы их представления на диаграммах. Современные методологии построения моделей "сущность-связь".
- •9. Нормализация отношений. Цель нормализации. Приведение к нормальным формам.
- •10. Жизненный цикл приложения баз данных. Основные фазы проектирования базы данных.
- •6. Раздел "Операционные системы"
- •1. Файловые системы современных операционных систем. Интерфейс пользователя для работы с файловой системой.
- •2. Принцип защиты данных в операционных системах. Управление правами доступа к файлам.
- •3. Способы группирования команд в операционных системах. Командные файлы. Программные каналы, конвейеры команд.
- •4. Обзор возможностей командных процессоров (оболочек) операционных систем.
- •5. Принципы организации многозадачного режима в операционных системах.
- •6. Коммуникационные средства многопользовательских операционных систем.
- •7. Генерация, конфигурирование, настройка операционной системы на потребности конкретного пользователя.
- •8. Средства и способы обеспечения многопользовательского режима в операционных системах.
- •9. Понятие процесса. Управление процессами в операционной системе UNIX.
- •10. Понятие программного канала. Средства управления программными каналами.

6. Раздел "Операционные системы"
Литература:
1.Забродин Л.Д. UNIX. Введение в командный интерфейс. М.: Диалог-МИФИ, 1994
2.Дунаев С. UNIX SYSTEM V: Общее руководство. М.: Диалог-МИФИ, 1995
3.Армстронг Д. Секреты UNIX. М.: Диалектика, 2000
4.Баурн С. Введение в операционную систему UNIX. М: Мир, 1987
5.Джейсон П. Операционная система UNIX: Настольный справочник. М.: ЛОРИ, 1997
1. Файловые системы современных операционных систем. Интерфейс пользователя для работы с файловой системой.
(ОС, Лекция 28.09.2003)
Система управления файлами:
Выделяют 2 уровня организации файлов.
•логическая;
•физическая.
Под файлом понимают совокупность элементов информации (группированных для хранения и использования в вычислительной системе).
Логическая организация файлов:
Под логической организацией файлов понимают совокупность структуры данных и методы доступа к ним.
Различают следующие структуры данных:
1.последовательную;
2.индексированную;
3.прямую;
4.библиотечную.
Для этих структур данных могут использоваться2 вида методов доступа:
1.Базисные методы. Базисные методы обеспечивают наиболее быстрый доступ к данным и используются для обмена большими порциями информации между внешними устройствами и оперативной памятью.
2.Методы доступа с очередями. Методы доступа с очередями обеспечивают работу с данными на уровне отдельных логических записей и используются в тех случаях, когда есть необходимость обмениваться разнотипными данными, а скорость обмена не имеет решающего значения.
Физическая реализация файловой системы:
Физически файл состоит из отдельных записей. Записи бывают трёх типов:
1.фиксированной длины;
2.переменной длины;
3.записи неопределённой длины. Записи делятся на:
•блокированные
•не блокированные.
Блокированная запись состоит из нескольких простых записей. Блокирование и разблокирование осуществляется либо средствами ОС (методы доступа с очередями), либо возлагаются на пользователя (базовые методы доступа).
Структура файловой системы может быть:
1.линейной структурой (файлы располагаются строго последовательно);
2.библиотечной структурой (последовательно в разделах);
3.древовидной структурой (эта структура в настоящее время получила наибольшее распространение).
Файловая система ОС UNIX:
Наиболее полный контроль за параллельной работой многих пользователей в системе обеспечивает иерархическая древовидная структура файловой системы. Файловая система UNIX представляет собой единое дерево с корнем "/".
Всё дерево файлов разделяется на отдельные поддеревья и каждому пользователю предоставляется возможность создавать собственное поддерево файлов.
Файл: в UNIX все файлы рассматриваются как последовательность байт информации трёх типов:
1.Обычные (текстовые и двоичные). В текстовом файле в каждом байте могут храниться только символы ASCII-таблицы, а в двоичном - любой код.
2.Каталоги (d). Файлы, в которых содержатся списки других файлов в фиксированном формате. Все каталоги за исключением корневого содержат в себе:
"." - псевдоним текущего каталога и ".." - псевдоним родительского каталога. При создании нового файла система автоматически заносит информацию о нём в соответствующий каталог. При уничтожении файла информация о нём удаляется из соответствующего каталога.
3.Специальные файлы.
3.1.Каждый из них содержит описание и программу работы периферийных устройств. Специализированные файлы могут быть следующих типов:
3.1.1.с - байт-ориентированные - описывают внешние устройства, которые обмениваются информацией с оперативной памятью побайтно.
3.1.2.b - блок-ориентированные - описывают внешние устройства, которые обмениваются информацией с оперативной памятью блоками по 512 байт.
3.2.p - программный канал.
Все файлы организованы в единое дерево, в корне которого находится корневой каталог:
/
Вводится понятие текущего и начального каталога. Начальный (домашний) каталог становится текущим для данного пользователя сразу после входа пользователя в систему. Начальный каталог каждому пользователю назначается администратором. С целью защиты и сохранения целостности файловой системы пользователю разрешается непосредственно считывать информацию из каталога, но запрещается записывать в него; разрешается только удалять и добавлять записи в каталог с помощью специальных команд ОС.
Имена файлов. В качестве имени файла используют последовательность символов (обычно не более 14-ти). Полное имя файла - это путь от корневого каталога к данному
файлу. По умолчанию путь отсчитывается от текущего каталога (в этом случае имя называется относительным).
В качестве символов имени могут использоваться любые символы ASCII, за исключением нескольких, имеющих специальный смысл. Точка является равноправным символом, за исключением её начального положения. Если имя начинается с точки, оно
обозначает скрытый файл:
.profile
Ссылки. Количество ссылок на файл указывает на возможность обращения к данному файлу из различных каталогов общего дерева. Минимальное количество ссылок для простого файла 1; для каталога - 2. При удалении файла счётчик ссылок уменьшается на 1, и как только он станет =0, файл становится недоступным.
Права доступа. Все пользователи в системе по отношению к любому файлу делятся на 3 категории:
1.владелец (владелец файла специальными командами может изменить права доступа к своему файлу для всех трёх категорий пользователей);
2.группа пользователей (как правило, с расширенными правами доступа к файлу), владелец файла специальной командой может изменить имя группы, ассоциированной с данным файлом;
3.все остальные пользователи.
Включение пользователя в группу осуществляется администратором и не может быть изменено простым пользователем. Информация хранится в файлах:
/etc/passwd
/etc/group
Команды пользовательского интерфейса (диалоговый режим UNIX) при работе с файлами:
pwd - полное маршрутное имя текущего каталога;
ls -al - для чтения информации о файлах и каталогах (а - для скрытых); cat - вывод на экран содержимого файловили слияние файлов;
more - постраничный вывод на экран содержимого файла; tail - вывод нескольких последних строк файла; chmod - изменение прав доступа к файлу/каталогу;
umask - изменение прав доступа для вновь создаваемых файлов; chgrp - изменение группы, ассоциированной с данным файлом;
Интерфейсом пользователя при работе с файловой системой является командная строка. Операции над файлами - создать, просмотреть, удалить и т.п. Примеры:
#mkdir имя каталога (создание каталога)
#cd перейти в другой каталог
#ls список файлов тек. директории
#rm file1 (Удалить file1)
# mv |
file1 |
file2 (Переименовать file1 в file2) |
|
# |
cp |
file1 |
dir1 (Скопировать файл 1 в директорию 1) |
# |
rmdir (Удаление пустой директории) |
Cat (утилита конкатенации, слияния файлов)
#cat [ключи] [имя файла1 имя файла2….] аргументы могут отсутствовать. В этом случае программа считывает текст из стандартного файла ввода.
#cat > file1 (создание файла)
ввод текста
<Ctrl+D> (выход и сохранение)
# cat file1 (вывести содержимое file1 на экран)

2. Принцип защиты данных в операционных системах. Управление правами доступа к файлам.
Общие меры безопасности:
•ограничение круга пользователей, знающих пароль;
•формирование групп пользователей с различными правами доступа;
•установка квот на использование дискового пространства и количество
процессов, создаваемых каждым пользователем.
Многопользовательский режим разделения ресурсов ЭВМ требует механизма защиты файлов от несанкционированных обращений к ним для чтения, записи и выполнения. Права процессов пользователей при доступе к файлу кодируются в атрибутах защиты файла. Атрибуты сопровождают каждый файл, хранятся в описателях файлов, на которые в каталоге имеются ссылки, и доступны для анализа и измен ения посредством специальных команд ОС UNIX. Атрибуты защиты файла определяют права доступа трем видам процессов:
•процессам пользователя-владельца файла (user);
•процессам группы владельца файла (group);
•процессам остальных пользователей (other), не попавших ни в одну из двух
предыдущих категорий.
Код атрибутов прав доступа пользователей трех перечисленных категорий для каждого файла отображается в полном листинге каталога символьным кодом в виде комбинации следующих символов:
Категории доступа к файлам: r-чтение, w-запись, x-выполнение.
•Чтение - для файла и каталогов допускает просмотр
•Запись - содержимое файла и каталога может быть изменено, непосредственно записи в каталог пользователю производить не разрешается, такая запись может быть осуществлена только средствами ОС.
•Выполнение - простой файл, его содержимое может быть исполнено как программа. Каталог может стать текущим рабочим каталогом
Всеми перечисленными правами доступа обладает владелец файла в момент его создания. Для изменения прав доступа существует специальная команда - Chmod, которая позволяет установить права для владельца, группы и остальных пользователей
Пример:
Chmod 000 serafim.
chmod u=x, g+wx, o-twx: f1
Владелец файла может кроме установки прав доступа к нему передать статус владельца
другому пользователю.
Chown <имя владельца> <имя файла> Chgroup – смена группы
В операционной системе существует возможность маскировать права доступа umask - она ограничивает возможность установления новых прав доступа к любому вновь созданному файлу umask g=r не позволяет установить права доступа выше чем на чтение (для группы). Существует возможность установить права для всех типов пользователей
a={u,g,o}.
Chmod 000 <файл> отменяет все права доступа.
Файл – это хранилище данных или канал связи с устройством, который храниться на устройстве массовой памяти (диск) и имеет имя.
Система UNIX обеспечивает тройственную структуру доступа к файлу. Для этого все пользователи делятся на 3 категории, которые называются: 1) user владелец; 2) group группа; 3) other остальные.
Каждый файл имеет своего владельца. Владелец обладает полным контролем над правами доступа к файлу. Он может разрешать или запрещать доступ другим пользователям к своему файлу. Только владелец файла решает, какая группа пользователей будет иметь доступ к его файлу. Владелец может принять решение передать свои права по управлению доступом другому пользователю. В этом случае первоначальный владелец теряет полный контроль над правами доступа к данному файлу.
Для каждого файла или каталога возможны 3 типа доступа: 1) чтение (read); 2) запись
(write); 3)выполнение (execute).
Смысл доступа зависит от того происходит обращение к простому файлу или каталогу. Read для файлов означает, что можно прочитать содержимое файла или каталога. Write – содержимое файла или каталога может быть изменено.
Execute – данный файл может исполняться как программа, а каталог может стать текущим рабочим каталогом.
Для запуска файла как программы необходимо, чтобы права доступа к этому файлу допускали чтение и выполнение одновременно. Для изменения прав доступа к файлу используется команда:
chmod [права владельца] [права группы] [права остальных польз.] имя файла Применяется две формы записи прав доступа– символьная и цифровая.
Символьная заключается в употреблении ключевой буквы u, g, o и знака (+ добавить, - удалить, = установить право доступа).
Цифровая использует 8-ную форму представления прав (read=4, write=2, execute=1). Для отмены прав доступа выполняется команда – chmod 000 имя файла
В системе UNIX существует возможность маскировать права доступа. Для этого используется команда:
umask [режим доступа]
Эта команда обычно применяется для защиты файлов, созданных пользователем в течении одного сеанса работы с системой. Она позволяет изменить назначаемые по умолчанию права доступа для вновь создаваемого файла. Установленная маска действует до выхода пользователя из системы. Обычно по умолчанию новый файл создается с правами доступа rwrw- rw-, а каталог rwx rwx rwx.
Для смены владельца используется команда: chown [владелец] имя файла
При выполнении этой команды права владения файлом передаются другому пользователю. После изменения владельца файла только новый владелец или суперпользователь может изменить очередного владельца или права доступа к файлу.
Для смены пользователя служит команда: su [имя пользователя]
Использование данной команды дает возможность пользователю начать сеанс работы с системой в качестве нового пользователя и гарантирует доступ ко всем файлам, владельцем которых является новый пользователь. В целях безопасности при выполнении команды su требуется ввод пароля. Без аргументов su переводит данного пользователя в режим суперпользователя при указании соответствующего пароля. Суперпользователь имеет имя root. Для того, чтобы вернуться к прежней идентификации пользователя нельзя использовать команду su. Для этого необходимо ввести командуexit. Команда newgrp позволяет изменить идентификатор группы для пользователя. То, на какие группы можно менять идентификатор группы, определяет администратор системы. Чтобы узнать, на какие группы разрешено менять идентификатор группы данного пользователя, необходимо прочитать файл /etc/group.