Главная Случайная страница



Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать неотразимый комплимент Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника







Рылғылардың драйверлері





 

Барлық құрылғыдан тәуелді код құрылғы драйверлеріне оранластырылады. Әрбір драйвер бір типтің немесе мүмкін бір кластың құрылғыларымен басқарады.

Операциялық жүйеде тек құрылғыт драйвері ғана қандай да бір құрылғы драйвері ғана қандай да бір құқрылғының нақты ерекшеліктері туралы біледі. Мысалы, тек диск драйвері ғана жолдармен, секторлармен, цилиндрлермен, бүршікті орналастыру уақытымен және дискінің дұрыс жұмысын қамтамасыз ететін басқа факторлармен жұмыс істейді.

Құрылғы драйвері бағдарламалық қабат құрылғыларынын сұранысты қабылдайды және оны қалай орындайтын шешеді. Қарапайым сұраныс мәліметтердің n тарын оқу болып табылады. Егер ол басқа сұранысқа қызмет көрсетумен айналысып жатқан болса, онда қайта түскен сұраныс бар сұраныстардың кезегіне қосылады және ол өзінің кезегі келген кезде орындалады.

Енгізу-шығарудың сұранысын жүзеге асырудағы бірінші қадам, мысалы, диск үшін, оның абстрактілі формадан нақты пішінге айналуынан тұрады. Дискілі драйвер үшін бұл блоктардың нөмірлерінің цилиндрлердің, бүршіктердің, секторлардың нөмірлеріне айналуын, тексеруді, мотор жұмыс істей ме, бүршік қажетті цилиндрдің басында жатыр ма дегенді білдіреді. Қысқартып айтқанда, ол контроллердің қандай амалдарын және қандай реттілікте орындау керектігін шешу керек.

Контроллерге команданы тапсырудан кейін драйвер өзін берілген операцияның аяқталуына дейінқұрсаулау керек пе, әлде жоқ па, соны шешуі тиіс. Егер амал мәліметтердің кейбір блоктарын басып шығарудағы сияқты көп уақыт алса, онда драйвер амал аяқталғанға дейін және үзілулерді өңдеуші оны құрсаулардан шығарғанға дейін блокта болады. Егер енгізі-шығару бұйрығы тез орындалса (мысалы, экранды айналдыру), онда драйвер оның аяқталуын блокадалусыз күтеді.



Енгізі-шығарудың бағдарламалық жасақтаманың үлкен бөлігі құрылғылардан тәуелсіз болып келеді. Драйверлер мен құрылғылардан тәуелсіз бағдарламалар арасындағы дәл шекара жүйемен анықталады, себебі тәуелсіз тәсілмен жүзеге асырылуы мүмкін кейбір функциялар, шын мәнінде, нәтижелілікті көтеру үшін немесе басқа себептермен драйверлер түрінде орындалған.

Құрылғылардан тәуелсіз қабат үшін әдеттегі функциялар болып табылады:

құрылғылар драйверлеріне жалпы интерфейсті қамтамасыз ету;

құрылғылардың атын қою;

құрылғылардың қорғанышы;

блоктың тәуелсіз өлшемін қатамасыз ету;

буферлеу;

блок-бағытталған құрылғыларда жадыны тарату;

бөлінген құрылғылардың таратылуы және босатылуы;

қателер туралы хабарлау.

Осы тізімнің кейбір функцияларына тоқталайық. Бағдарламалық жасақтама жоғарғы қабаттарына әр түрлі өлшемдегі блоктармен жұмыс істеу ыңғайлы емес, сондықтан берілген қабат блоктың бірыңғай өлшемін қамтамасыз етеді, мысалы, бірнеше әр түрлі блоктардың бірыңғай логикалық блокқа бірігуінің арқасында. Осыған байланысты жоғарғы деңгейлер физикалық сектордың өлшемінен тәуелсіз логикалық блоктың бірыңғай өлшемін пайдаланатын абстрактілі құрылғылармен іс атқарады.

Файлды жасағанда немесе оны жаңа мәліметтермен толтырғанда оған жаңа блоктар бөлу керек. Ол үшін ОЖ дисктің бос блоктарының тізімін жүргізуі тиіс. Дискте бос орын бар деген ақпараттың негізінде құрылғыдан тәуелсіз және драйверлр қабатынан жоғары орналасқан бағдарламалық қабатпен жүзеге асырылатын бос блокты іздеу алгоритмі өңделуі мүмкін.



Енгізу-шығарудың бағдарламалық жасақтамасының көп бөлігі ОЖ-нің ішінде ораналасса да, оның кейбір бөлігі пайдаланушылық бағдарламалармен байланысқан кітапханаларда болады. Енгізу-шығарудың шақыруларын қосатын жүйелік шақырулар әдетте кітапханалық процедуралармен жүзеге асырылады. Енгізу-шығарудың стандартты кітапханасы енгізу-шығаруды орындайтын және пайдаланушылық бағдарламаның бөлігі ретінде жұмыс істейтін процедуралардың үлкен санынан тұрады.

Енгізу-шығарудың бағдарламалық жасақтамасының басқа категориясы спулингтің ішкі жүйесі болып табылады. Спулинг – бұл мультибағдарламалық жүйеде бөлінген құрылғылармен жұмыс істеу тәсілі. Спулингті талап ететін қарапайым құрылғы беттік принтерді қарастырайық. Әрбір пайдаланушылық процеске принтермен бсайланысты арнайы файл ашуды рұқсат ету техникалық түрде жеңіл болса да, мұндай тәсіл – қауіпті, себебі пайдаланушылық процесс принтерді еркін уақытқа монополизациялай алады.оның орнына арнайы процесс – осы құрылғыны пайдалануға ерекше құқықтары бар монитор жасалынады. Сонымен бірге, спулингтің каталогі деп аталатын арнайы каталог жасалынады. Файлды басып шығару үшін пайдаланушылық процесс шығарылатын ақпаратты осы файлға және спулинг каталогына орналастырады. Процесс-монитор кезекпен спулинг каталогында болатын барлық файлдарды басып шығарады.

 








Date: 2015-05-22; view: 861; Нарушение авторских прав



mydocx.ru - 2015-2021 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию