MS-DOS операциялық жүйесінің негізгі модульдері тақырыбында дәріс

  1. Dos модулінің процедуралары мен функциялар.   Exec – процедурасы   Procedure Exec (Path, CmdLine:String);   Берілген командалық жолдан өлшемдерімен берілген бағдарламаны орындайды.   Path – бағдарламамен файлдың толық аты;   CmdLine – командалық жол;       Авариялық жағдай туындағанда қателердің мынандай кодтары белгіленеді:   2 – файл табылмады;   8 – қажетті жад жоқ;   10 – құрал – жабдықта қате;   11 – форматта қате.   FindFirst процедурасы   Procedure FindFirst (Path::string;Attr:Word; ...
Раздел Информатика
Класс -
Тип Конспекты
Автор
Дата
Формат doc
Изображения Нет
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

ДӘРІС №7

Тақырыбы: MS-DOS операциялық жүйесінің негізгі модульдері.

1. Dos модулінің процедуралары мен функциялар.

Exec - процедурасы

Procedure Exec (Path, CmdLine:String);

Берілген командалық жолдан өлшемдерімен берілген бағдарламаны орындайды.

Path - бағдарламамен файлдың толық аты;

CmdLine - командалық жол;

Авариялық жағдай туындағанда қателердің мынандай кодтары белгіленеді:

2 - файл табылмады;

8 - қажетті жад жоқ;

10 - құрал - жабдықта қате;

11 - форматта қате.

FindFirst процедурасы

Procedure FindFirst (Path::string;Attr:Word; var S: SearchRec);

Берілген немесе ағымдағы файлда берілген атрибуттарымен және файлдың толық атауы маскасымен сәйкес келетін бірінші файлды іздейді.

Path - жол (қажет болғанда) мен файл атауына тән белгілерді қосқанда (мысалы, PAS - кеңейтілген файлмен, PAS, ағмдағыnкаталогте орналасқан) файл толық атауының маскасы.

Attr - файлдар атрибуттары;

S - процедура табылған файлдың өлшемдерін жазатын SearchRes ауыспалы типі.


Авариялық жағдай туындағанда келесі қателер коды белгіленеді:

3 - берілген каталог жоқ;

18 - файлдар жоқ

FindNext процедурасы

Procedure FindNext(varS: SearchRec);

FindFirst-ке соңғы ашылымда берілген қанағаттанарлық шартпен келесі каталог файлын табады.

S - процедура табылған өлшемдерін жазатын SearchRec ауыспалы типі.

Авариалдық жағдайлар туғанда 18 код-файл жоқ леген белгі белгіленеді.

FSplit процедурасы

Procedure FSplit(Path:PathStr;var Dir:DirStr;var Name:NameStr;varExt:ExtStr);

Файлдың толық атауын 3 бөлікке - файлдың жолы, аты және кеңеюі.

Path - файлдың толық атын құрайтын PathStr типі өлшемі;

Dir - процедурамен жолы жазылатын DirStr-тің ауыспалы типі;

Name - процедурамен файл аты жазылатын NameStr ауыспалы типі;

Ext - процедурамен файлдың кеңеюі жазылатын ExtStr ауыспалы типі.

GetCBreak процедурасы

Procedure GetCBreak(var Break:Boolean);

Ctrl+Break комбинациясымен жұмыстың белгіленген әдісін тексереді.

Break - процедура жұмысының нәтижесі жазылатын ауыспалы. Егер False нәтижеге тең болса, Ctrl+Break комбинациясын тексеру консоль, принтер немесе байланыс құрылымына кіру шығу операторларына ғана жүргізіледі.

DiskFree функциясы

Function DiscFree(Drive:Word):Loginti

Берілген тасымалдаушыда еркін байттардың санын қайтару.

Driver - мән қабылдайтын құрылымның шартты номері:

0 - ағымдағы дискавод;

1 - А құрылымы;

2 - В құрылымы;

DiskSize функциясы

Function DiskSize(Drive:Word):Logint;

Орындалатын санау процесінен шығу көбін қайтарады. Кіші байт нәтижесі процеспен орындалатын кодты құрайды. Үлкен байт тең болады:

0 - қалыпты аяқталу;

1 - процесс Ctrl+C көмегімен үзіледі;

2 - процесс қатеден үзіледі;

3 - үзіліс Кеер процедурасымен шақырылады.

DosVersion функциясы

Function DosVersion:Word;

MC DOS версиясы номерін қайтарады (версия номері - кіші байтте, модификация номері - үлкен байтте).

EvnCount функциясы

Function EvnCount:Integer;

MS DOS oртасы жол санын қайтарады.

EvnStr функциясы

Function EvnStr(Index:Integer):String;

Операциялық жүйе ортасының көрсетілген жолын қайтарады.

Index - жол номері;

Егер Index бірліктен кіші немесе EvnCount-тан үлкен болса, EvnStr функциясы бос жолды қайтарады.

FExpand функциясы

Function FExpand(Path:PathStr):PfthStr;

Файл атын жолда оған қоса отырып, толғанша кеңейтеді.

Path - файлдың бастапқы аты.

FSearch функциясы

Function FSearch(Path:PathStr;DirList:String):PathStr;

Каталог тізімінде файл іздейді (егер файл табылса, оған жеткізетін жолды қосып, файл аты нәтижесі болады, егер файл табылмаса, бос жол болады).

Path - типті ізделінді файл аты.

DirList - файлы бар каталогтар тізімі жекелеген жолдар нүкте үтірмен бір-бірінен бөлінеді.

GetEvn функциясы

Function GetEvn(EvnVar:String):String;

MS DOS көрсетілген ауыспалы ортаның мәнін қайтарады.

EvnVar-ауыспалы ортаның аты.

Егер MS DOS ауыспалы ортасы анықталмаса, GetEvn бос жолды қайтарады.


2. WinDos модулінің процедуралары мен функциялары.

СreatDir процедурасы.

Procedure GreatDir (Dir:Pchar);

Dir көрсеткішімен жолда берілген ерекшелігімен (жолымен және атауымен) каталог құрылады.

Dir - құрылатын каталогтың ерекшелігі (аты мен жолы) жазылған жолға сілтеме.

Авариялық жағдай туындағанда (дұрыс емес ерекшеліктер, ондай каталог қазір бар, түпкі каталогта ондай атпен файл бар, түпкі каталогта орын жоқ, т.б.) қате коды ауыспалы DosError-ға көшіріледі.

FindFirst процедурасы.

Procedure FindFirst (Path :Pchar;Attr:Word;Var S:TsearchRes);

Берілген немесе ағымдағы каталогте берілген атрибуттармен және файл атындағы маскамен сәйкес бірінші файл ізделеді.

Path - файлдың толық атының ерекшелікті бөліктері мен жолын (қажет болғанда) қосатын файл атауындағы маска (мысалы, Pas-ағындағы каталогта орналасқан Pas кеңейтілуімен файлдар);

Attr - файлдар атрибуты.

S - процедура табылған файлдың өлшемдерін жазатын TsearchRes ауыспалы түрі.


Авариялық жағдай туындағанда қателердің келесі кодтары белгіленеді:

1 - Жіберілген каталог жоқ.

18 - файлдар жоқ.

FindNext процедурасы.

Procedure FindNext(Var S:TsearchRes);

FindFirst-қа соңғы ашылуында берілген қанағаттанарлық шартпен каталогтың келесі файлын табады.

S - процедура табылған файлдың өлшемін жазатын TsearchRes ауыспалы типі.


Авариялық жағдай туындағанда 18 код-файлдар жоқ белгіленеді.

GetFAttr процедурасы

Procedure GetFAttr (var f; Var Attr:Word);

Файлдар атрибутын қайтарады.

F - әзірге ашылмаған нақты физикалық файлмен байланысты кез-келген типтегі не типсіз файлдық ауыспалы;

Attr - файл атрибуттарын жазатын процедура ауыспалы;нақты атрибутты бөлу үшін файл атрибуттары кодтарын-маскаларды пайдалануға болады.


Авариялық жағдай туындағанда қатердің төмнегі коды белгіленеді;

3 - берілмейтін жол;

5 - файл жіберілмейді;

Intr процедурасы.

Procedure Intr (IntNo:Byte;Var Regs:Tregisters);

Берілген бағдарламалық үзілістерді орындайды.

IntNo - үзіліс номері;

Regs - тіркеу туралы ақпаратты құрайтын Tregisters ауыспалы типі;

Процедураны орындау алдында бұл мәліметтер тіркеуге жүктеледі, процедура орындалған соң сақталатын тізімдер осы ауыспалыға орналастырылады.

SP немесе SS құрайтын регистірлерінің өзгерісі өтетін болса,процедураны пайдалануға болмайды.

MS DOS процедурасы.

Procedure MS DOS (Var Regs:Tregisters);

MS DOS функциясын шақыру жүзеге асырылады ($21 бөлу номерімен Intr процедурасын пайдаланумен эквивалентті).

Regs - тіркеу туралы ақпаратты құрайды.

Tregisters - ауыспалы типі, процедураны орындау алдында бұл мәліметтер тіркеуге жүктеледі, процедура орындалған соң сақталатын тізімдер осы ауыспалыға орналастырылады.

SP немесе SS регистрін құрайтын өзгерістер мұнда өтсе, онда процедураны пайдалануға болмайды.

FileExpand функциясы.

Function FileExpand (Dest,Name:Pchar):Pchar;

Оған жол қоса отырып,толғанша файл аты кеңейеді. Функция нәтижесі - атауды ұлғайтуға көрсеткіш.

Dest - толық атаулы орналастыру үшін жолға көрсеткіш.

Name - ізделетін файл атына көрсеткіш.

List - файл ізделетін үтірмен бөлінген нүкте каталогы тізіміне көрсеткіш.

FileSplit функциясы.

Function FileSplit (Path,Dir,Name, Ext:Pchar):Word;

Файлдың толық аты үшін бөлімге бөлінеді: файл жолы, аты және кеңеюі. Нәтиже-топтық операциялардың (*немесе?) және файл аты тиісті бөлігінің болу белгілері.

Path - файлдың толық атын құрайтын жолға көрсеткіш;

Dir - жол жазылатын жолға көрсеткіш;

Name - файл аты жазылатын жолға көрсеткіш;

Ext - файл кеңеюі жазылатын жолға көрсеткіш.

GetArgCount функциясы.

Function GetArgCount :Integer;

Командалық жолға бағдарламаға берілетін өлшемдер саны қайтарылады.

GetArgStr функциясы

Function GetArgStr (Dest: Pc har;Index: Integer; MaxLen: Word): Pchar;

Өлшемге командалық жол көрсеткіші Index номерімен қайтарады.

Dest - Index номерімен өлшем жазылатын жолға көрсеткіш;

Index - командалық жол өлшемі номері;

Егер Index=0,онда бағдарлама аты жазылады, егер Index керісінше немесе командалық жолдық өлшемдердің ең көп санынан көп болса, онда бос жазылады.

Maxlen - командалық жолдық табылған өлшемі жазылған жолдық ең көп мөлшері.

GetCuzDir функциясы.

Function GetCuzDir (Dir:Pchar;Drive: Byte) Pchar;

Ағымдағы каталогтың ерекшелігін (жол мен аты) алады. Нәтиже-ағымда каталогтың ерекшелігі (жолы, аты) орналасқан жолға көрсеткіш.

Dir - ағымдағы директория ерекшелігі (жолы мен аты) жазылған жолға көрсеткіш.

Drive - мән қабылдайтын құрылыстың шартты номері:

0 - ағымдағы дисковод;

1 - А құрылымы;

2 - В құрылымы және басқалары.

Авариялық жағдай туындағанда қателік коды Doserror ауыспалылығы келеді. Егер болған құрылымның шартты номері көрсетілмесе, Dir көрсеткіші жолға "X:/"хабарламасы орналасады.

3. Overlay модулінің процедуралары мен функциялары.

OvrClearBuf процедурасы

Procedure OvrClearBuf

Оверлейлі буферді тазартады.

OvrInit процедурасы

Procedure OvrInit (File Name:string);

Оверлейлер диспетчерін анықтайды және оверлейлі файл ашады.

File Name - оверлейлі файл аты.

Авариялық жағдайда қателіктер коды қалыптасады.

1 - файлдың дұрыс емес форматы немесе файл оверлейлі болып саналмайды.

2 - оверлейлі файл табылмайды.

Қате болған жағдайда оверлейлі диспетчері белгіленбейді. OvrInit оверлейлерді басқару басқа бағдарламашысына қандай да назар аударғаны орындалуы тиіс.

OvrInitEMS процедурасы.

Procedure OvrInitEMS;

Оверлейлі файл жадтың кеңейтілген облысына жүктейді.

Авариялық жағдайда қателік коды қалыптасады:

1 - процедурасы орындалмады немесе дұрыс орындалмады;

4 - оверлейлі файлды қосу-ажырату операциясын орындау кезіндегі қате;

5 - жадтың кеңейтілген аумағының драйвері жоқ;

6 - оверлейлік файлды орналастыру үшін жадтың жеткілікті аумағы жоқ.

Қате жағдайында оверлей диспетчері жұмысты жалғастыратын болады, бір файл дискіден оқылады.

OvrSetBuf порцедурасы.

Procedure OvrSetBuf (BufSize:Longint);

Оверлейлі буфердің мөлшерін белгілейді.

BufSize - буфердің талап ететін мөлшері.

Процедураға назар аударғанда қозғалыстағы аумақ бос болуы тиіс.

Авариялық жағдайда қате коды қалыптасады:

1 - OverInit процедурасы орындалмады немесе дұрыс орындалмады, BufSize көлемі мейлінше аз (буфер бастапқы мөлшеріне аз), жадтың динамикалық аумағы бос емес;

3 - оверлейлі буфер мөлшерін ұлғайту үшін жадтың жеткілікті аумағы жоқ.

Қате болғанда оверлейлік буфер мөлшері өзгермейді, ал оверлей диспечері жұмысын жалғастыратын болады.

OvrSetRetry процедурасы

Procedure OvrSetRetry (Size: Longint);

Оверлейлік буфердің сынақ аумағының мөлшерін белгілейді.

Size - аумақтың талап етілетін мөлшері (қажет мөлшері - оверлейлі буфердің 1/3 - нен ½ мөлшеріне дейін).

OvrGetBuf функциясы

Function Ovr Get Buf: Longint ;

Оверлейлік буфердің сынақ алаңының мөлшерін қайтарады.


© 2010-2022