20948

Запис і читання інформації диска с зміною чергуванням секторів

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

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

h Номер форматируемой дорожки define TRK 20 Код размера сектора 1024 байт define SEC_SIZE 2 таблица параметров дискеты typedef struct _DPT_ { unsigned char srt_hut; unsigned char dma_hlt; unsigned char motor_w; unsigned char sec_size; unsigned char eot; unsigned char gap_rw; unsigned char dtl; unsigned char gap_f; unsigned char fill_char; unsigned char hst; unsigned char mot_start; } DPT; union REGS inregs outregs; char _far diskbuf[1024]; void mainvoid; void mainvoid { struct diskinfo_t di; unsigned status; unsigned char...

Украинкский

2013-08-01

51.33 KB

6 чел.

Міністерство освіти, науки, молоді та спорту України

Національний технічний Університет “ХПІ”

“ХАРКІВСКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ”

Кафедра “ Обчислювальна техніка та програмування ”

Лабораторна робота №3

по курсу “Захист інформації у комп’ютерних системах та мережах”

 

                                                                                                Виконав:

                                                                                                      ст. гр КІТ 39

 Родін С.І

                                                                                                 Перевірив:

Межерицький С.Г

Харків 2012

“Запис і читання інформації диска с зміною чергуванням секторів”

за курсом “Захист інформації у комп’ютерних системах та мережах”

Ціль роботи : придбання навичок роботи з нестандартними можливостями дисків на низькому рівні. Використання зміни чергування секторів на гнучкому диску.

Постановка задачі: необхідно розробити і налагодити програму що дозволяє виконати форматування інженерних секторів дискети зі зміненим чергуванням секторів, запис, читання і перевірку якості виконання мітки з цими секторами.

Індивідуальні завдання

Програма форматування доріжки дискети з нестандартним чергуванням секторів і запис інформації в заданий сектор, виконана на низькому рівні.

 Порядок проходження секторів

 

1,9,4,3,6,7,2,8

Номер доріжки

Сторона

Довжна сектора

81\43

1

1024

Номер сектора в який виконується запис СЕКТ

СЕКТ = 1

#include <stdio.h>

#include <conio.h>

#include <dos.h>

#include <stdlib.h>

#include <bios.h>

#include "sysp.h"

// Номер форматируемой дорожки

#define TRK 20

// Код размера сектора - 1024 байт

#define SEC_SIZE 2

/* таблица параметров дискеты */

typedef struct _DPT_ {

unsigned char srt_hut;

unsigned char dma_hlt;

unsigned char motor_w;

unsigned char sec_size;

unsigned char eot;

unsigned char gap_rw;

unsigned char dtl;

unsigned char gap_f;

unsigned char fill_char;

unsigned char hst;

unsigned char mot_start;

} DPT;

union REGS inregs, outregs;

char _far diskbuf[1024];

void main(void);

void main(void) {

struct diskinfo_t di;

unsigned status;

unsigned char old_sec_size, old_fill_char, old_eot;

int i, j;

DPT _far *dpt_ptr;

printf("\nПрограмма уничтожит содержимое"

"\n20-й дорожки диска А:."

"\nЖелаете продолжить? (Y,N)\n");

// Ожидаем ответ оператора и анализируем его

i = getch();

if((i != 'y') && (i != 'Y')) exit(-1);

// Получаем адрес таблицы параметров дискеты

dpt_ptr = get_dpt();

// Сохраняем старые значения из таблицы параметров

old_sec_size = dpt_ptr->sec_size;

old_fill_char = dpt_ptr->fill_char;

old_eot = dpt_ptr->eot;

// Устанавливаем в таблице параметров дискеты

// код размера сектора, символ заполнения при

// форматировании, количество секторов на дорожке

dpt_ptr->sec_size = SEC_SIZE;

dpt_ptr->fill_char = 0xf6;

dpt_ptr->eot = 15;

// Устанавливаем тип диска

inregs.h.ah = 0x17;

inregs.h.al = 3;

inregs.h.dl = 0;

int86(0x13, &inregs, &outregs);

// Устанавливаем среду для форматирования

inregs.h.ah = 0x18;

inregs.h.ch = TRK;

inregs.h.cl = dpt_ptr->eot;

inregs.h.dl = 0;

int86(0x13, &inregs, &outregs);

// Подготавливаем параметры для функции форматирования

di.drive = 0;

di.head = 0;

di.track = TRK;

di.sector = 1;

di.nsectors = 15;

di.buffer = diskbuf;

// Подготавливаем буфер формата для 15-ти секторов

// Используем обратный порядок расположения секторов

// на дорожке

for(i=0, j=15; j>0; i += 4, j--) {

diskbuf[i] = TRK;

diskbuf[i+1] = 0;

diskbuf[i+2] = j;

diskbuf[i+3] = SEC_SIZE;

}

// Вызываем функцию форматирования дорожки

status = _bios_disk(_DISK_FORMAT, &di) >> 8;

printf("\nФорматирование завершилось с кодом: %d",status);

// Восстанавливаем старые значения в

// таблице параметров дискеты

dpt_ptr->sec_size = old_sec_size;

dpt_ptr->fill_char = old_fill_char;

dpt_ptr->eot = old_eot;

exit(0);

}

 

Висновки: придбав навички роботи з нестандартними можливостями дисків на низькому рівні. Використав зміни чергування секторів на гнучкому диску.


 

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

26885. V-я и VI 1-я пары черепно-мозговых нервов. Общая характеристика, ветвление 2.98 KB
  Двенадцать пар черепномозговых нервов принято делить на 3 чувствительных I пара обонятельный U пара зрительный и VIII пара преддверноулитковый 5 двигательных III пара глазодвигательный IV пара блоковый VI пара отводящий XI пара добавочный и XII пара подъязычный и 4 смешанных V пара тройничный VII пара лицевой IX пара языкоглоточный и X пара блуждающий; в состав последних входят чувствительные двигательные и вегетативные волокна. 5 пара тройничный нервn.
26886. Общие закономерности строения вегетативной нервной системы 2.13 KB
  В симпатической нервной системе преганглионарные нейроны находятся в промежуточном боковом роге спинного мозга от верхнегрудного до среднепоясничного отдела Т1ТЗ. Преганглионарные парасимпатические нейроны залегают в стволе мозга и крестцовом отделе спинного мозга. Постганглионарные нейроны находятся в вертебральных и превертебральных ганглиях в симпатической системе а в парасимпатической они расположены в непосредственной близости от стенки органа который они иннервируют.
26887. Симпатическая часть вегетативной нервной системы. Солнечное сплетение 4.18 KB
  Симпатическая нервная система делится на центральную расположенную в спинном мозге и периферическую включающую многочисленные соединённые друг с другом нервные ветви и узлы. По своему ходу симпатические волокна отделяются от двигательных соматических и далее в виде белых соединительных ветвей вступают в узлы пограничного симпатического ствола. В состав солнечного сплетения входят правый и левый чревные узлы непарный верхний брыжеечный узел большой и малый внутренностные нервы и многие другие которые отходят от узлов в разные стороны...
26888. Парасимпатическая часть вегетативной нервной системы 4.21 KB
  Преганглионарные волокна отходят от центров в составе черепномозговых или спинномозговых нервов. От центров расположенных в среднем мозге преганглионарные волокна доходят до ресничного узла а от него идут постганглионарные волокна к глазу где разветвляются в сфинкторе зрачка и ресничной мышце.Слезоотделительныйпреганглиолярные волокна доходят до клинонёбного ганглия постганглиолярные волокна достигают слёзных желёз желёз неба и носовой полости; 2.Краниальныйоральный слюноотделительный – преганглиолярные волокна доходят до...
26889. Блуждающий нерв 4.81 KB
  Направляясь латерально и вниз он покидает череп через переднюю часть яремного отверстия вместе с языкоглоточным и добавочным нервами располагаясь между ними. В области яремного отверстия блуждающий нерв утолщается за счёт верхнего узла лат. ganglion superius а немного ниже через 1015 см имеется ещё один узел несколько больших размеров лат. Спускаясь ниже блуждающий нерв в области шеи ложится на переднюю заднюю поверхность внутренней яремной вены лат.
26891. Защитные и вспомогательные образования глаза 1.53 KB
  Защитные и вспомогательные образования глаза К защитным и вспомогательным приспособлениям глаза относятся орбита глазной жир мышцы глаза веки ресницы конъюнктива слезный аппарат. Орбита является костным остовом глаза и защищает глазное яблоко от механических воздействий. Из коньюнктивального мешка слеза оттекает по носослезному каналу который начинается от слезного мешка во внутреннем углу глаза а заканчивается отверстием на слизистой оболочке носовой полости у входа.
26892. Оболочки и светопреломляющие среды глазного яблока 3.11 KB
  Наружная оболочка глазного яблока соединительнотканного происхождения и делится на две части склеру и роговицу. Склераsclera или белочная оболочка толстая прочная непрозрачная расположена в заднем отделе глазного яблока. Средняя сосудистая оболочка в которой в большом количестве разветвляются сосуды также делится на заднюю собственно сосудистуюchorioidea и переднюю части. В собственной сосудистой оболочке находится отражательная оболочкаtapetum.
26893. Наружное и среднее ухо 5.47 KB
  Наружное ухоauris externa состоит из ушной раковины двигательного аппарата ушной раковины и наружного слухового прохода. Основой складки служит эластический хрящ ушной раковины. Часть раковины выступающей над поверхностью тела называется ладьейscapha а проксимальная её часть скрытая под кожным покровомоснованием ушной раковины завитковая частьconcha auriculae s. Наружная поверхность раковины образует спинку раковиныdorsum auriculae а внутренняя поверхность –ладьевидную ямкуfossa scaphoidea.