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. Выводы

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


 

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

73331. Повторення складу чисел 5 і 6. Складання рівностей за малюнками. Обчислення значень виразів, що містять додавання, за допомогою предметних малюнків 279.77 KB
  Мета: повторити всі варіанти складу чисел 5 і 6; вправляти у складанні прикладів за малюнками, у розпізнаванні геометричних фігур; вдосконалювати обчислювальні навички; розвивати мислення, навички каліграфічного письма; виховувати старанність.
73333. Створення нумерованих та маркованих списків. Настроювання параметрів сторінок. Створення колонтитулів 860.57 KB
  Мета уроку: сформувати поняття: нумерований і маркований списки; колонтитули; розглянути: способи створення нумерованих маркованих та багаторівневих списків; особливості настроювання параметрів сторінок; формувати вміння: створювати нумеровані й марковані списки; створювати колонтитули; застосовувати набуті знання на практиці; розвивати: творчі здібності; критичне та аналітичне мислення; навчити: застосовувати вміння створювати списки при оформленні тексту; настроювати параметри сторінки. Очікувані...
73335. Мова як особлива система знаків, її місце серед інших знакових систем. Проблеми взаємодії мови і культури, мови і соціуму. Роль мови у формуванні й самовираженні особистості 102.11 KB
  Мова як особлива система знаків її місце серед інших знакових систем. Що не річка то мова знад СлавутиДніпра: українська чудова як сопілкова гра Д. Мова це сукупність усіх слів усіх граматичних форм усіх особливостей вимови всіх людей За Г. Мова це історія і сучасність це кожна людина і народ це інструмент який допомагає людині в її практичній щоденній діяльності тобто виступає знаряддям спілкування і водночас це й засіб проникнення в глибини історичної памяті народу це збереження духовних надбань нації для...
73336. Подільність електричного заряду. Будова атома. Електрон 80.42 KB
  Мета: пояснити явище електризації сформувати в учнів поняття подільності електричного заряду його дискретності охарактеризувати електрон як носія елементарного електричного заряду; познайомити їх із планетарною моделлю атома за Резерфордом; сформувати поняття іона як структурного елемента речовини; ознайомити з будовою та принципом роботи електроскопа та електрометра; розвивати уяву та логічне мислення; виховувати вміння налаштовувати себе на успіх. Основні поняття: електричний заряд атом протон нейтрон електрон іон ізотоп закон...
73337. Графічні зображення в текстових документах: автофігура, графічний об’єкт, діаграма, WordArt 1.01 MB
  Графічні зображення в текстових документах. Мета уроку: сформувати поняття: діаграма; розглянути: типи графічних зображень; особливості роботи з графічними обєктами; формувати вміння: використовувати інструменти для роботи з рисунками; використовувати набуті знання на практиці; розвивати: креативність; критичне мислення; навчити: вставляти зображення у документ; виховувати: інформаційноосвічену особистість;. Базові поняття й терміни: автофігура графічний обєкт діаграма Wordrt художня рамка формат...
73338. Українська мова в контексті української культури. Українська мова в «діалозі культур». Українська мова у світі. Українська діаспора 76.77 KB
  Поглибити знання про роль української мови як однієї з основних національно-культурних цінностей українського народу, подати відомості про українську діаспору, навчити виявляти особливості української мови на фоні інших у міжкультурній комунікації; розвивати пам’ять, збагачувати й удосконалювати мовлення учнів, формувати вміння вільно виражати свої думки
73339. Елементи розвитку музики: повтор, контраст 345.98 KB
  Однак напевне для всіх вас одним із найулюбленіших видів мистецтва є мультики І корисно Пригадайте музичні мультики які в першому та другому класах допомагали вивчити мелодії пісень. Продовження розучування пісні Мультики Тепер ми можемо співати з нот Також можна дивитися на ноти і слідкувати за мелодичною лінією як ми робили завжди. Тоді пригадайте мелодичну лінію пісні Мультики і заспівайте її зі словами усіх куплетів. Пісня Мультики Сл.