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);

}

 

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


 

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

15854. Титаник. Спецэффекты в фильме 627.5 KB
  Титаник. Спецэффекты в фильме Автор: Дмитрий Мороз Титаник корабльлегенда изза своего катастрофического крушения навеки оставшийся в памяти простых смертных. Титаник фильм снятый за умопомрачительные 200 млн. долларов и ставший в итоге самой кассовой картин...
15855. ПАВЕЛ ПЕЧЕНКИН: ВРЕМЯ В ДОКУМЕНТАЛЬНОМ КИНО 57.5 KB
  ПАВЕЛ ПЕЧЕНКИН: ВРЕМЯ В ДОКУМЕНТАЛЬНОМ КИНО Интересно поговорить на тему которая объявлена немного провокационно в названии нашего фестиваля новое документальное кино. Мы должны всетаки решить есть оно или нет. Поэтому у меня в программе был заявлен доклад Акс
15856. Капитализация локальных ресурсов регионов России – ключевая стратегия модернизации их экономик 212 KB
  Капитализация локальных ресурсов регионов России ключевая стратегия модернизации их экономик К постановке проблемы Проблема капитализации территорий как систематической деятельности по превращению всех без исключения ее ресурсов фондов и активов в работ
15857. МОДЕРНИЗАЦИЯ КАК ОСОБЫЙ ИНСТРУМЕНТ ЭКОНОМИЧЕСКОГО СКАЧКА 115.76 KB
  3 МОДЕРНИЗАЦИЯ КАК ОСОБЫЙ ИНСТРУМЕНТ ЭКОНОМИЧЕСКОГО СКАЧКА Необходимость модернизации экономики политики и идеологии современного российского общества ОЧЕВИДНА И очевидна настолько что в стране практически нет ни одного политика или ученого который ...
15858. Свет и тени концепций долгосрочного социально-экономического развития России 1.61 MB
  Свет и тени концепций долгосрочного социальноэкономического развития России Финансовый кризис отчасти продлил наметившиеся до кризиса тенденции отчасти усилил их. В ходе современного финансового кризиса произошло резкое изменение глобальной структуры промышлен
15859. ПОЛИТИЧЕСКОЕ ОСМЫСЛЕНИЕ ИСТОРИЧЕСКОГО В РАБОТАХ Х. АРЕНДТ «VITA ACTIVA, ИЛИ О ДЕЯТЕЛЬНОЙ ЖИЗНИ», Ю. ХАБЕРМАСА «ТЕОРИЯ И ПРАКТИКА» 84 KB
  ПОЛИТИЧЕСКОЕ ОСМЫСЛЕНИЕ ИСТОРИЧЕСКОГО В РАБОТАХ Х. АРЕНДТ VITA ACTIVA ИЛИ О ДЕЯТЕЛЬНОЙ ЖИЗНИ Ю. ХАБЕРМАСА ТЕОРИЯ И ПРАКТИКА В процессе истории изменяется представление о пространстве политического. Для каждой эпохи характерно определенное видение политического. В
15860. Проблема смысла жизни как фактор духовного образования личности 63.5 KB
  Духовность на магистрали развития человека (общества, группы, индивида) обладает исторически высшим содержанием и способно к неограниченному развитию. Побочные (тупиковые) линии развития выражают неполную, ограниченную, неточную духовность или даже бездуховность, тогда как ошибочные, ложные типы мировоззрения связаны с духовными заблуждениями
15861. ПРЕДМЕТНЫЙ МИР В СИСТЕМЕ КАТЕГОРИЙ ФИЛОСОФИИ 59 KB
  ПРЕДМЕТНЫЙ МИР В СИСТЕМЕ КАТЕГОРИЙ ФИЛОСОФИИ Проблема системы категорий практически исчезла из тематики российской философии с темных девяностых. Развал великой сверхдержавы превращение России в сырьевой придаток развитых стран Запада и Востока 85 вывоза из
15862. СОВРЕМЕННЫЙ МИР И ФИЛОСОФИЯ 136.5 KB
  СОВРЕМЕННЫЙ МИР И ФИЛОСОФИЯ Мировоззрение это субъективный образ объективного бытия человека в объективном мире в т.ч. обществе как совокупном существовании людей живых человеческих индивидов; это объективная реальность в ее идеальной форме. Как таковое оно вто...