Базовая система ввода-вывода (BIOS)
Место BIOS в архитектуре компьютера, аппаратно-зависимые драйверы, обеспечивающие выполнение функций по поддержке работы компьютера. Работа с каталогами иерархической файловой системы. Процесс загрузки DOS, инициализация и конфигурирование системы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 28.02.2013 |
Размер файла | 133,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Поле атрибутов содержит признаки, характеризующие файл. Распределение разрядов байта атрибутов следующее:
0 a d l s h r, где
AL |
- номер логического диска; |
|
CX=0xFFFF |
- признак того, что работа производится с логическим диском, объем которого больше 32 Мбайт; |
|
DS:BX |
- адрес блока параметров в оперативной памяти, ко- торый может быть описан следующей структурой: |
|
r |
- 1 в этом бите означает, что файл только для чтения; |
|
h |
- скрытый файл; |
|
s |
- системный файл; |
|
l |
- метка тома (может быть только в Корневом Каталоге); |
|
d |
- подкаталог; |
|
a |
- 1 в этом бите означает, что копия файла утилитой BACKUP не создавалась. |
Поля time и date содержат время и дату последней модификации файла. Формат времени: ЧЧЧЧЧММММММССССС (Часы, Минуты, Секунды); формат даты: ГГГГГГГММММДДДДД (Год, Месяц, День).
Поле cl - номер первого кластера, распределенного файлу, то есть, начало той цепочки, которая продолжается в FAT.
Поле size - размер файла в байтах. В DOS не предусмотрены какие-либо специальные признаки конца файлов. Применяемый в некоторых случаях символ ^Z (код 26) интерпретируется как признак конца конкретными программами, но не DOS. DOS же определяет конец файла по его размеру, получаемому из этого поля Элемента Каталога. Для подкаталога это поле содержит 0.
Программа примера 10.5 считывает и выводит на печать содержимое Корневого Каталога. Как и в предыдущих примерах, программа вынуждена сначала прочитать Boot-сектор. Из Boot-сектора программа узнает:
· количество элементов в каталоге - поле RootSize;
· размер каталога в секторах - RootSize/16 (в один сектор помещаются 16 Элементов Каталога);
· номер сектора, с которого начинается Корневой Каталог - ResSect+FatSize*FatCnt (следом за двумя копиями FAT).
/*== ПРИМЕР 10.5 ==*/
/*============= Чтение корневого оглавления ==============*/
#include <alloc.h>
#include <dos.h>
#define byte unsigned char
#define word unsigned int
#define dword unsigned long
/* Структура, описывающая элемент оглавления */
struct Dir_Item {
char fname[11]; /* имя файла */
byte attr; /* атрибут */
byte reserved[10];
word time; /* время */
word date; /* дата */
word cl; /* номер 1-го кластера */
dword size; /* размер файла */
} *dir;
/* Структура корневой записи */
struct RootRec {
byte jmp[3], ident[8]; word SectSize; byte ClustSize;
word ResSect; byte FatCnt;
word RootSize, TotSecs; byte Media;
word FatSize, TrkSecs, HeadCnt, HidnSecL, HidnSecH;
dword LongTotSecs; byte Drive;
byte reserved1; byte DOS4_flag;
dword VolNum; char VolLabel[11], FatForm[8];
} *rt;
/* Структура параметров для INT 25 */
struct{
dword first_sect;
word count; byte *ptr;
} parm;
union REGS rr;
struct SREGS sr;
char *attrs[]={"ТОЛЬКО_ЧТЕНИЕ","СКРЫТЫЙ_ФАЙЛ",
"СИСТЕМНЫЙ_ФАЙЛ","МЕТКА_ТОМА","ПОДКАТАЛОГ"};
main()
{
byte *buff; /* адрес буфера в ОП */
byte sys, /* признак диска > 32 Мбайт */
drive; /* идентификатор диска */
int i, j, k, m;
byte ms; /* маска атрибутов */
word RootSect, /* номер сектора */
RootCnt, /* число элементов */
RootSects; /* число секторов */
ASK1: printf("\nУкажите идентификатор диска (A,B...) >");
drive=getche();
if (drive>'b') {
ASK2:printf("\nОбьем лог. диска больше 32 Мбайт? (y/n) >");
switch(sys=getche()) {
case 'y' : sys=1; break;
case 'n' : sys=0; break;
default: goto ASK2;
}
}
else sys=0;
buff=(byte *)malloc(512);
/* Чтение boot-сектора */
rr.h.al=drive-'a'; /* Диск */
if (!sys) { rr.x.cx=1; rr.x.dx=0;
sr.ds=FP_SEG(buff); rr.x.bx=FP_OFF(buff); }
else { parm.first_sect=0; parm.count=1; parm.ptr=buff;
sr.ds=FP_SEG(&parm); rr.x.bx=FP_OFF(&parm);
rr.x.cx=0xffff; }
int86x(0x25,&rr,&rr,&sr); readerror();
rt=(struct RootRec *)buff;
/* Параметры корневого каталога */
RootCnt=rt->RootSize;
RootSect=rt->ResSect+rt->FatSize*rt->FatCnt;
RootSects=rt->RootSize/16;
/* Выделение памяти под корневой каталог */
buff=(byte *)realloc(buff,RootSects*512);
if (buff==NULL) { printf("Нехватка памяти\n"); exit(); }
dir=(struct Dir_Item *)buff;
clrscr();
/* Чтение каталога */
rr.h.al=drive-'a';
if (!sys) { /* маленький диск */
rr.x.cx=RootSects; rr.x.dx=RootSect;
sr.ds=FP_SEG(buff); rr.x.bx=FP_OFF(buff);
}
else { /* большой диск */
parm.first_sect=RootSect; parm.count=RootSects;
parm.ptr=buff;
sr.ds=FP_SEG(&parm); rr.x.bx=FP_OFF(&parm);
rr.x.cx=0xffff;
}
int86x(0x25,&rr,&rr,&sr);
readerror();
/* Распечатка оглавления */
for (j=0, k=0; j<RootCnt; j++) {
printf("#%3d ",j);
if (dir[j].fname[0]!=0) {
/* Если элемент оглавления непустой */
for (i=0; i<11; i++) {
if (i==8) printf(".");
if ((i==0)&&(dir[j].fname[i]==0xe5)) printf("?");
else printf("%c",dir[j].fname[i]);
}
if (dir[j].fname[0]==0xE5)
printf(" ******УДАЛЕН****** ");
printf(" атрибут=%02x (",dir[j].attr);
if (!(dir[j].attr&0x01f)) printf("ЧТЕНИЕ/ЗАПИСЬ");
else for(ms=1, m=0; m<5; m++,ms<<=1)
if (dir[j].attr&ms) printf("%s ",attrs[m]);
printf(")\n ");
printf(" время=%02d/%02d/%02d",
(dir[j].time>>11)&0x001f,(dir[j].time>>5)&0x003f,
(dir[j].time&0x001f)*2);
printf(" дата=%02d/%02d/%04d",
((dir[j].date>>9)&0x007f)+1980,
(dir[j].date>>5)&0x000f,
dir[j].date&0x001f);
printf(" нач.кластер=%03x",dir[j].cl);
printf(" размер=%lu\n",dir[j].size);
}
else printf(" свободен\n");
if (++k>7) { k=0; if (getch()==27) goto EOJ; }
}
EOJ:free(buff);
}
/* Проверка ошибок чтения */
readerror() {
if (rr.x.cflag) {
printf("\nОшибка чтения: %x. ",rr.h.ah);
printf("Нажмите любую клавишу...\n\7"); getch();
exit();
}
3.2 Файл конфигурации CONFIG.SYS
Удобная рабочая обстановка для пользователя ПЭВМ может быть создана в результате продуманного конфигурирования и начальной настройки системы. DOS дает возможность при запуске машины автоматически задавать определенные начальные условия, которые влияют на дальнейшую работу пользователя. Осуществляется это с помощью содержимого двух особых файлов: CONFIG.SYS и AUTOEXEC.BAT. Указанные файлы, если они имеются в корневом каталоге системного диска, обрабатываются при любом включении или перезапуске машины.
С помощью файла конфигурации CONFIG.SYS можно расширять операционную систему и изменять некоторые параметры, влияющие на работу внешних устройств. Одно из важнейших свойств DOS состоит в возможности добавления новых внешних устройств и подключения специальных программ, обеспечивающих управление их работой.
Эти программы, называемые драйверами внешних устройств, можно включить в систему, перечислив их в файле CONFIG.SYS. Помимо этого в файле конфигурации можно указать, сколько файлов в системе может быть открыто одновременно, задать количество буферов для обменов с внешними накопителями и некоторые другие параметры.
Пример. Рассмотрим типичный вид файла CONFIG.SYS:
break=on
flles=30
device=C:\sys\rk.com
device=C:\sys\vdisk.sys 20 device=C:\sys\ansi.sys device=C:\sys\mouse.sys
В первой строке с помощью выражения BREAK=ON устанавливается режим, при котором пользователь будет иметь возможность прервать любую работающую программу при определенных условиях. Для этого дается команда прерывания, вызываемая одновременным нажатием управляющих клавиш Ctrl и Break. Работающая программа будет прервана, если эти клавиши оказываются нажатыми в момент выполнения операций ввода/вывода (включая печать на принтере, обмен с дисками и др.).
Во второй строке командой FILES=30 устанавливается, что количество одновременно открытых файлов может достигать 30.
Четыре следующие строки имеют одинаковый вид и содержат команды подключения к DOS дополнительных внешних устройств. В правой части каждого выражения, после знака равенства, задается имя файла, являющегося драйвером нового устройства:
RK.COM - драйвер, обеспечивающий прием с клавиатуры и выдачу на дисплей букв русского алфавита;
VDISK.SYS - драйвер виртуального диска, создаваемого в оперативной памяти;
ANSI.SYS - драйвер расширенного управления клавиатурой и дисплеем; MOUSE.SYS - драйвер манипулятора "мышь".
Кроме указанных в примере команд, в файле конфигурирования можно установить нестандартное количество буферов для обмена информацией с дисковыми накопителями. Задание числа буферов делается с помощью выражения вида;
BUFFERS= (количество_буферов)
Еще одна возможность позволяет указывать имя файла, который будет играть роль нестандартного командного процессора (вместо стандартного файла COMMAND, СОМ). Такое указание осуществляется с помощью выражения вида:
SНЕLL=(имя_файла_с_новым_командным_процессором)
Таким образом, с помощью файла конфигурирования CONFIG.SYS пользователь может задать собственные, нестандартные возможности, которые действуют в течение текущего сеанса работы.
Заключение
Практически все современные системы уже не пользуются BIOS, а используют собственные драйверы для работы с дисками. Но следует понимать, что прежде, чем система сможет использовать собственный драйвер, она должна его загрузить.
Поэтому на этапе начальной загрузки любая система вынуждена пользоваться BIOS. Это и вызывает ограничения на размещение многих систем за пределами 8 ГБ, они не могут оттуда загружаться, но могут читать и писать информацию (например, DOS, который работает с диском через BIOS).
Список использованной литературы
1. Википедия, www.google.kz, BIOS. Оптимизация и разгон компьютера А. Карпов.
Размещено на Allbest.ru
...Подобные документы
Система BIOS как базовая система ввода и вывода и важнейший компонент персонального компьютера. Программное обеспечение, используемое в BIOS материнских плат. Основные функции BIOS, порядок загрузки системы. Проверка стабильности работы компьютера.
доклад [94,9 K], добавлен 15.09.2013Программные модули основной BIOS (базовой системы ввода-вывода). Программа тестирования при включении питания компьютера. Реализация системы BIOS в виде одной микросхемы, установленной на материнской плате компьютера. Типы, версии и функции системы BIOS.
реферат [190,6 K], добавлен 19.08.2010Базовая система ввода-вывода информации. Базовые функции интерфейса и настройки оборудования. Основные понятия и функционирование BIOS. Сведения о системной BIOS компьютера. Затенение ROM-памяти. Самотестирование процессора, модулей оперативной памяти.
реферат [21,7 K], добавлен 12.12.2011BIOS (базовая система ввода-вывода) - реализованная в виде микропрограмм, часть системного программного обеспечения. Загрузка с помощью BIOS. Программа инициализации. Виды и назначение звуковых сигналов при возникновении сбоя при загрузке компьютера.
реферат [514,1 K], добавлен 12.04.2012Основные понятия и функционирование BIOS. Затенение ROM-памяти. Работа системной BIOS при включении компьютера. Программа CMOS Setup Utility настройки BIOS. Содержание основных разделов программы BIOS Setup. Настройка параметров компьютера.
реферат [47,5 K], добавлен 29.11.2006Основные составляющие системного блока. Назначение материнской платы. Базовая система ввода-вывода – Bios. Понятие периферийного устройства. Запоминающие устройства и их виды. Открытая архитектура в устройстве ПК. Устройства для ввода и вывода данных.
реферат [478,5 K], добавлен 18.12.2009Использование двоичной системы представления данных и принцип хранимой программы Неймана. Периферийные устройства: клавиатура, мышь, накопитель, принтеры и протеры. Базовая система ввода-вывода BIOS и операционная система DOS. Внешняя и внутренняя память.
шпаргалка [35,2 K], добавлен 01.02.2009Основные сведения о системной BIOS компьютера, представляющей собой микросхему постоянной памяти ПЗУ, или ROM, расположенную на материнской плате. Основные разделы программы установки Phoenix-Award BIOS CMOS Setup Utility. Настройка работы процессора.
реферат [34,3 K], добавлен 23.05.2015Анализ причин неисправностей основных узлов компьютера, описание методов его ремонта и диагностики. Процесс начальной загрузки, тестирование основных компонентов компьютера. Перепрошивка BIOS, неисправность HDD, ремонт флоппи-дисковода и CD-ROM.
курсовая работа [54,3 K], добавлен 02.01.2010Базовые разделы BIOS и основные доступные возможности для его настройки: Standard CMOS Features, Advan-ced BIOS Features, Chipset features setup и Integrated Peripherals. Настройки, определяющие быстродействие компьютера, режимы работы его компонентов.
статья [17,4 K], добавлен 03.04.2010BIOS как базовая система ввода-вывода, его внутренняя структура и основные элементы, модуль расширения и его задачи. Базовый модуль DOS. Функции командного процессора. Утилиты: понятие и содержание, особенности функционирования, главные цели и задачи.
презентация [219,7 K], добавлен 13.08.2013Изучение программы базовой системы ввода-вывода (BIOS) и её настроек. Разработка компьютерной обучающей программы-тренажера "Настройка BIOS" в объектно-ориентированной среде Delphi. Тестирование данного программного продукта и экономические затраты.
дипломная работа [54,5 K], добавлен 09.10.2013Назначение BIOS, определение хода запуска, первоначальное тестирование и первичная загрузка интерфейсов компьютера. Опции и базовые установки BIOS Setup, редактирование опций разделов Primary Master, Primary Slave, Secondary Master и Secondary Slave.
статья [29,1 K], добавлен 03.04.2010Операционные системы, среды и оболочки. Компоненты персонального компьютера: центральный процессор, память, устройства ввода-вывода, контроллер видеопамяти. Управление диском, способы установки драйверов. Алгоритм начальной загрузки операционной системы.
презентация [113,9 K], добавлен 24.07.2013BIOS, который поддерживает технологию Plug-and-Play. Главное назначение наращиваемого программно-аппаратного интерфейса. Отличия в процессе загрузки BIOS и UEFI. Характеристика основных преимуществ UEFI BIOS. Платформы, использующие EFI, инструментарий.
контрольная работа [1,6 M], добавлен 29.01.2012Изучение подсистемы ввода-вывода и файловой системы ОС семейства Windows NT. Анализ особенностей работы приложения TotalCommander и его взаимодействия с файловой системой и подсистемой ввода-вывода. Взаимодействие TotalCommander с сетевыми адаптерами.
лабораторная работа [1,1 M], добавлен 12.06.2012Поиск и устранение неисправностей в аппаратных частях компьютерных систем. Сборка системного блока и подключение периферийных устройств. Конфигурирование и настройка Bios. Подготовка жесткого диска к работе. Установка операционной системы Windows 98.
отчет по практике [448,2 K], добавлен 21.02.2010Общая информация о компьютере. BIOS. Материнская плата. Операционная система. Логические и физические накопители. Арифметический и мультимедийный тест процессора, тест пропускной способности компьютера и кэш-памяти с помощью программы SiSoftware Sandra.
контрольная работа [3,0 M], добавлен 21.02.2009Распространенные проблемы и необходимость перепрошивки. Перепрошивка под Windows и под DOS. Применение программы-прошивальщика и бинарного файла с микрокодом. Обновление BIOS из BIOS через встроенное меню FlashRom, запуск процесса обновления firmware.
статья [15,1 K], добавлен 03.04.2010Исследование типовой структуры шины персонального компьютера. Подсистема ввода-вывода в ядре операционной системы. Преобразование запросов на ввод-вывод в аппаратные операции. Блочные, символьные и сетевые устройства. Процесс чтения из дискового файла.
презентация [1,8 M], добавлен 24.01.2014