65829

ПРИНЦИПЫ РАЗРАБОТКИ ОПЕРАЦИОННЫХ СИСТЕМ

Лабораторная работа

Информатика, кибернетика и программирование

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

Русский

2014-08-06

325.06 KB

0 чел.

Министерство образования и науки Российской Федерации

Санкт-Петербургский государственный политехнический университет

Факультет технической кибернетики

Кафедра «Информационная безопасность компьютерных систем»

ОТЧЕТ

по лабораторной работе №1

«ПРИНЦИПЫ РАЗРАБОТКИ ОПЕРАЦИОННЫХ СИСТЕМ»

по курсу «Операционные системы»

Выполнил

студент гр. 2088/4    А.А.Чернышев

                           <подпись>

Руководитель     А.С. Коноплев

                           <подпись>

Санкт-Петербург

2012

  1.  Формулировка задания

Цель работы — изучение основ разработки ОС, принципов низкоуровневого взаимодействия с аппаратным обеспечением, программирования системной функциональности и процесса загрузки

системы.

2. Использованные теоретические сведения

Материалы из методического пособия 01.pdf, а также многочисленные интернет-ресурсы.

3. Результаты работы

3.1. Выполнение индивидуального задания

Сложность выполнения индивидуального задания, помимо написания загрузчика ядра, заключалась еще и в создании загрузочной дискете. Необходимо было “склеить” два образа (загрузчик и ядро, каждый из них имеет размер 512 байт) так, чтобы загрузчик оказался в загрузочном секторе. Проблема была решена следующим образом:
1) Был создан файл zero.img размером 2880*512-2*512=1473536 байт.

2) Затем я склеил 3 образа в один командой copy /b boot.img+kernel.img+zero.img floppy.ima и получил образ дискеты с загрузчиком и ядром в “одном флаконе”.

1) Разработать загрузчик, позволяющий загружать две ОС: ОС Unix (Windows), и собственную ОС.

[ORG 0x7c00]

start: cli

mov ax, cs

mov ds, ax

mov ss, ax

mov bx, 0000h

mov es, ax

mov sp, 7c00h

mov bx, 7c00h

mov si, 7c00h

mov di, 600h

mov cx, 200h

rep movsb

jmp 0000h:0623h

retf

sti

pusha

mov si, strtmsg

msg1:

lodsb

test al, al

jz waiti

mov ah, 0eh

int 10h

jmp msg1

waiti: popa

boot_menu:

mov ah, 00h

int 16h

cmp al, "1"

je windows_load

cmp al, "2"

je my_os_load

jmp boot_menu

windows_load:

mov dl, 80h

mov dh, 01h

mov ch, 00h

mov cl, 01h

mov al, 01h

mov ah, 02h

int 13h

jmp 0000h:7c00h

retf

my_os_load:

mov dl, 00h

mov dh, 00h

mov ch, 00h

mov cl, 02h

mov al, 02h

mov ah, 02h

int 13h

jmp 0000h:7c00h

retf

strtmsg db '============================Welcome to My_Loader============================',0ah,0dh,'Windows XP -- press "1" ',0ah,0dh,'My OS -- press "2"',0ah,0dh,0

times 510-($-$$) db 0

db 0x55, 0xaa

2) Разработать ядро ОС. После загрузки на экране должен появиться курсор рисующий фигуру.

[ORG 0x7c00]

start: cli     ;инициализация

mov ax, cs

mov ds, ax

mov ss, ax

mov sp, start

sti

mov ax,0012h     ;видео-режим

int 10h

mov BH, 0          ;видео страница

mov DX, 239   ;координата Y

mov CX, 319   ;координата X

mov ah, 0Ch   ;рисование точки

mov al, 014h  ;цвет точки

int 10h

wait_input:          ;ждем стрелочки

mov ah, 00h

int 16h

cmp ah,48h

jz up

cmp ah,50h

jz down

cmp ah,4bh

jz left

cmp ah,4dh

jz right

jmp wait_input

up:

mov ah, 0Ch

mov al, 014h

cmp DX, 0  ;условие "невыхода" за верхний край

je wait_input

sub DX, 1

int 10h

jmp wait_input

down:

mov ah, 0Ch

mov al, 014h

cmp DX, 479   ;условие "невыхода" за нижний край

je wait_input

add DX, 1

int 10h

jmp wait_input

left:

mov ah, 0Ch

mov al, 014h

cmp CX, 0  ;условие "невыхода" за левый край

je wait_input

sub CX, 1

int 10h

jmp wait_input

right:

mov ah, 0Ch

mov al, 014h

cmp CX, 639  ;условие "невыхода" за правый край

je wait_input

add CX, 1

int 10h

jmp wait_input

TIMES 510 - ($-$$) db 0

db 0xAA, 0x55

3.2. Ответы на контрольные вопросы

Каким образом осуществляется защита кода в архитектуре IA-32? Оцените, насколько такие меры способны защитить код от повреждения злоумышленником.

Защита кода в архитектуре IA-32 производится на уровне ядра при помощи механизма уровней привилегий (колец) — четыре уровня безопасности, считая с нуля(наиболее высокого уровня). Соответственно код с более высокого уровня имеет доступ ко всем более низким, но не наоборот. Механизмы переключения привилегий и системных вызовов обеспечивают возможные переходы по данным уровням. С точки зрения безопасности, данные меры являются довольно стойкими и  обеспечивают хорошую защиту.

Каким образом осуществляется взаимодействие ОС с дисковыми накопителями в процессе загрузки?

Взаимодействие ОС с дисковыми накопителями в процессе загрузки  - в первом секторе диска обычно располагается загрузчик ОС, которому передается управление в процессе загрузки системы; он же и производит необходимые действия для загрузки ОС.

Какие схожие процедуры выполняются в процессе загрузки ОС Linux и Windows?

Схожие процедуры в ходе загрузки Windows и Linux:

  1.  определение оборудования при помощи BIOS
  2.  управление передачи ядру со всеми данными об аппаратном обеспечении
  3.  использование страничной адресации

Какова роль BIOS в функционировании ОС?

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

Какова последовательность действий при возникновении прерывания? Чем она отличается от процедуры обработки исключений?

При возникновении прерываний  последовательность действий такова:

  1.  получение номера прерывания;
  2.  получение информации о нем из таблицы прерываний;
  3.  переход на функцию-обработчик прерывания.

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

4. Выводы

В данной работе были исследованы основные особенности работы операционных систем. Также были проанализированы процессы загрузки ОС и принципы построения функциональных ядер ОС.


 

А также другие работы, которые могут Вас заинтересовать

10991. Numerical Integration 156.5 KB
  2. Numerical Integration 2.1. Introduction Numerical integration which is also called quadrature has a history extending back to the invention of calculus and before. The fact that integrals of elementary functions could not in general be computed analytically while derivatives could be served to give the field a certain panache and to set it a cut above the arithmetic drudgery of numerical analysis during the whole of the 18th and 19th centuries. With the invention of automa...
10992. Extended Formulas (Closed) 145 KB
  Extended Formulas Closed If we use equation 2.5 N 1 times to do the integration in the intervals x1; x2; x2; x3; xN 1; xN and then add the results we obtain an extendedr or compositer formula for the integral from x1 to xN. Extended trapezoidal rule: In this method the area under the curve is approximated by sums of trapezoids areas under the curve see Fig. 2.3.. Figure 2.3. Extended trapezoidal rule. Trapezoid formul...
10993. Solution of Linear Algebraic Equations 132.5 KB
  Lesson 6 3. Solution of Linear Algebraic Equations 3.1. Introduction A set of linear algebraic equations looks like this: 3.1 Here the n unknowns xj j = 1 2 n are related by m equations. The coefficients aij with i = 1 2 m and j = 1 2 n are known numbers as are the righthand side quantities bi i = 1 2 m. If n = m then there are as many equations as unknowns and there is a good chance of solving for a unique solution...
10994. Проблема истины. Аргументы агностицизма 69 KB
  Проблема истины Способно ли человеческое познание в том числе и научное приводить к истине Автоматически ответить на этот вопрос положительно философия не может поскольку за тысячелетия ее существования было сформулировано немало аргументов выражавших на сей счет ...
10995. Культура и цивилизация, содержание и закономерности развития культуры 127.5 KB
  Культура и цивилизация Понятиями культура и цивилизация обозначены чрезвычайно важные точки роста на нескончаемой нити человеческого познания. Феномены культуры и цивилизации стремительно преображают окружающую среду оцениваются как факторы творческого жизнеустр
10996. Глобальные проблемы современности, Стимулы и потенциалы общественного развития 56 KB
  Глобальные проблемы современности. Современная глобальная ситуация. Политические экологические демографические экономические проблемы. Стимулы и потенциалы общественного развития. Глобальные проблемы современности являются самой актуальной тем
10997. Философия и мировоззрение. Типы мировоззрений 28 KB
  Философия и мировоззрение. Мировоззрение это сложное синтетическое интегральное образование общественного и индивидуального сознания. В нем присутствуют различные компоненты: знания убеждения верования настроения стремления ценности нормы идеалы и т.д. Мирово
10998. Основные особенности философского типа мышления 91.5 KB
  Основные особенности философского типа мышления: КОНЦЕПТУАЛЬНАЯ ОБОСНОВАННОСТЬ то есть последовательное проведение в решении мировоззренческих вопросов исходных однажды выбранных принципов их нельзя менять по ходу дела. В эти принципы конечно могут вноситься уточ...
10999. Функции философии 36 KB
  Функции философии Философия Пифагор автор слова фило любовь софи мудрость. С точки зрения Аристотеля мудрость означает знание общего в различных вещах знание первопричин действительности всеобщих свойств всеобщих законов всеобщих форм и структур действите