Автор работы: Пользователь скрыл имя, 21 Ноября 2013 в 17:10, контрольная работа
Время системы, прошедшее с 1 января 1970 г., по Всеобщему скоординированному времени (Universal Coordinated Time - UTC), известное также как эпоха (Epoch), возвращается системным вызовом gettimeofday. Большинство современных процессоров (включая процессоры PC) поддерживают регистр времени дня с батарейкой. Эти часы продолжают идти, даже когда процессор выключен. Когда система загружается, она использует регистр времени дня процессора для выяснения текущего времени. После этого время системы поддерживается прерываниями от часов. При каждом прерывании система увеличивает значение переменной глобального времени на величину, равную числу микросекунд в тике.
Реализация функций службы времени в ядре ОС……………………..…3
Анализ алгоритмов кэширования (сквозная запись, отложенная запись, запись по закрытию, централизованное управление)……………………5
Разработка и реализация алгоритмов защиты файлов от несанкционированного доступа……………………………………...……7
Разработка модели параллельных вычислений на основе сети Петри………………………………………………………………………..9
Макросредства. Макрокоманды управляющей программы……….…..14
Список литературы………………………………………………….…….. 15
Содержание
Список литературы…………………………………
Ядро предоставляет процессу несколько различных служб времени. Эти службы включают таймеры, работающие в реальном режиме, и таймеры, работающие лишь во время выполнения процесса.
Реальное время
Время системы, прошедшее с 1 января 1970 г., по Всеобщему скоординированному времени (Universal Coordinated Time - UTC), известное также как эпоха (Epoch), возвращается системным вызовом gettimeofday. Большинство современных процессоров (включая процессоры PC) поддерживают регистр времени дня с батарейкой. Эти часы продолжают идти, даже когда процессор выключен. Когда система загружается, она использует регистр времени дня процессора для выяснения текущего времени. После этого время системы поддерживается прерываниями от часов. При каждом прерывании система увеличивает значение переменной глобального времени на величину, равную числу микросекунд в тике. Для PC, работающего со 100 тиками в секунду, каждый тик представляет 10 000 микросекунд.
Внешнее представление
Время всегда экспортируется из системы
в виде микросекунд, а не тиков
часов, для обеспечения независимого
от разрешения формата. Внутренне ядро
может выбрать любую частоту
тиков, которая лучше всего
В процессе
работы содержимое кэш-памяти постоянно
обновляется, а значит, время от времени
данные из нее должны вытесняться. Вытеснение
означает либо простое объявление свободной
соответствующей области кэш-
Рассмотрим четыре алгоритма управления кэшированием:
1. Сквозная запись. Этот метод эффективен частично, так как уменьшает интенсивность только операций чтения, а интенсивность операций записи остается неизменной.
2. Отложенная запись. Производительность лучше, но результат чтения кэшированного файла не всегда однозначен.
3. "Запись-по-закрытию". Удовлетворяет сессионной семантике.
4. Централизованное управление. Ненадежен вследствие своей централизованной природы.
Подводя итоги обсуждения проблемы
кэширования, нужно отметить, что
кэширование на сервере несложно
реализуется и почти всегда дает
эффект, независимо от того, реализовано
кэширование у клиента или
нет. Кэширование на сервере не влияет
на семантику файловой системы, видимую
клиентом. Кэширование у клиента
напротив дает увеличение производительности,
но увеличивает и сложность
Безопасная информационная система — это система, которая, во-первых, защищает данные от несанкционированного доступа, во-вторых, всегда готова предоставить их своим пользователям, а в-третьих, надежно хранит информацию и гарантирует неизменность данных. Таким образом, безопасная система по определению обладает свойствами конфиденциальности, доступности и целостности.
Требования безопасности могут меняться в зависимости от назначения системы, характера используемых данных и типа возможных угроз. Трудно представить систему, для которой были бы не важны свойства целостности н доступности, но свойство конфиденциальности не всегда является обязательным. Например, если вы публикуете информацию в Интернете на Web-сервере и вашей целью является сделать ее доступной для самого широкого круга людей, то конфиденциальность в данном случае не требуется. Однако требования целостности и доступности остаются актуальными.
Действительно, если вы не предпримете специальных мер по обеспечению целостности данных, злоумышленник может изменить данные на вашем сервере и нанести этим ущерб вашему предприятию. Преступник может, например, внести такие изменения в помещенный на Web-сервере прайс-лист, которые снизят конкурентоспособность вашего предприятия, или испортить коды свободно распространяемого вашей фирмой программного продукта, что безусловно скажется на ее деловом имидже.
Не менее важным в данном примере является и обеспечение доступности данных. Затратив немалые средства на создание и поддержание сервера в Интернете, предприятие вправе рассчитывать на отдачу: увеличение числа клиентов, количества продаж и т. д. Однако существует вероятность того, что злоумышленник предпримет атаку, в результате которой помещенные на сервер данные, станут недоступными для тех, кому они предназначались. Примером таких злонамеренных действий может служить «бомбардировка» сервера IP- пакетами с неправильным обратным адресом, которые в соответствии с логикой работы этого протокола могут вызвать тайм-ауты, а в конечном счете сделать сервер недоступным для всех остальных запросов.
Теория сетей Петри широко применяется
для моделирования и анализа
поведения распределительных
Такие системы параллельной обработки информации, как многопроцессорные вычислительные машины, параллельные программы, моделирующие параллельные дискретные системы и их функционирование, мультипрограммные операционные системы, асинхронные электронные схемы и другие моделируются при помощи сетей Петри.
Помимо этого аппарат сетей
Петри обладает большой гибкостью,
позволяющей осуществлять моделирование
параллельных вычислений в различных
семантиках. В теории параллельных
вычислений наиболее употребительными
являются семантики чередования
и частичного порядка. В семантике
чередования параллельное вычисление
представляется последовательностью
действий, в которой параллельное
выполнение нескольких действий подменяется
недетерминированным выбором
В моделировании и исследовании
поведения сложной
Макросредства - инструменты (средства) модификации текста программы во время ее трансляции.
Макросредства предназначены
для облегчения написания программ
на языке Ассемблер и для
Основная идея. Повторяющийся фрагмент программы специальным образом описывается (макрос), именуется, а затем в нужных местах программы указывается ссылка на него. При создании объектного кода вместо ссылки подставляется сам фрагмент, т.е. происходит подстановка фрагмента вместо ссылки.
Транслятор ассемблера состоит из двух частей: макрогенератора и непосредственно транслятора. Транслятор при этом называют макроассеблером. Именно таким макроассемблером мы пользуемся в системе MASM (macroassembler language).
Обработка программы с использованием макросредств осуществляется транслятором в два этапа. На первом этапе работает макрогенератор, который производит замены для всех макросов, а на втором этапе уже преобразованный текст программы транслируется в объектный код.
Макроопределение - это описание макроса. Синтаксис макроопределения:
<имя макрокоманды> MACRO [формальные параметры]
тело макроопределения
ENDM
Директива MACRO - это заголовок макроопределения. В ней указывается имя и через запятую перечисляются формальные параметры, если необходимо.
Формальные параметры позволяют копировать макрос не в неизменном виде, а с изменениями. Те величины, которые необходимо будет изменить описываются формальными параметрами.
Завершает макроопределение директива ENDM. !!! Не надо повторять имя макроса.
Пример; настройка сегмента данных
initds macro
mov ax, @data
mov ds, ax
endm
Пример; вывод строки на экран
outstr macro str ; форм. параметр - имя строки
push ax
mov ah,09h
lea dx, str
int 21h
pop ax
endm
Размещаться макроопределения могут:
1. В любом месте программы
!!! Обязательно до первой ссылки на него.
2. В отдельном файле
Чтобы сделать
доступными макроопределения в
программе, необходимо в
Пример. Masm
model small
include Mymacro.inc
. . .
Можно универсальные макрокоманды записать в один файл, в так называемую макробиблиотеку. Подключать ее с помощью директивы include.
Чтобы в текст программы
не включать лишние макроопределения,
можно воспользоваться
PURGE <список через запятую имен макроопределений>
Директива указывает, какие макроопределения не должны включаться в текст программы.
Пример. . . .
include mymacro.inc
purge outstr, initds