Главная страница
Контакты

    Басты бет


Операциялық жүйелер

жүктеу 1.56 Mb.



жүктеу 1.56 Mb.
бет5/8
Дата10.03.2017
өлшемі1.56 Mb.

Операциялық жүйелер


1   2   3   4   5   6   7   8

Wait () және Signal ()командалары.

Егерде маниторда бір процесс жүріп жатса, оған тағы бір процесске құрау жасасақ, онда манитор Wait күту режимін қосады. Манитор Wait командасы мен тоқтатса, онда маниторға бір шарт қойсақ, сонда бірақ жұмысқа кіріседі. Содан кейін Signal командасы маниторға жұмыс істеліп жатқан процесс босатылды деп хабарлайды.



Монитор , екілік семафорды орналастыру

Операцияның орындалуы Р және V бөлікте семафор S, манитордың көмегімен қарастырсақ. Мұндай алгоритм Хоара алгоритмі болып танылған.

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



Monitor Семафор;

S : integer;

S_POSITIVE: condition; {бұл процесс блокта тұрған кезде тоқтатпайды}
procedure P;

begin

if S<1 then Wait(S_POSITIVE);{орындалуды тосу үштінде}

S:=S-1

end;
procedure V;

begin

S:=S 1;

if S=1 then Signal(S_POSITIVE);{жұмыстың орындалғанын білдіретін дыбыс}

end;

begin

S:=1

end;
Монитордың көмегімен Хоара алгоритмін екі алгоритммен қосуға болатындығын. Мұнда манитор шақырғанда Р және V -ны манитор бұларды Семафор Р және Семафор V деп шақырады.

begin

Parbegin

Процесс_Х:



begin

While (true) do

begin

Call (Cемафор.Р);

{Критический участок Процесса_Х};

Call(Семафор.V);

{Оставшиеся операторы Процесса_Х}

end

end;
Процесс_Y;

begin

While (true) do

begin

Call (Cемафор.Р);

{Критический участок Процесс_Y};

Call(Семафор.V);

{Оставшиеся операторы Процесса_Y}

end

end

Parend

end.
Бақылау сұрақтары:

  1. Синхронизация түсінігі.

  2. Синхронизация тәсілдері

  3. Параллельді процесстер деген не?

  4. Деккер алгоритмінің принциптері.

  5. Семафорлық примитивтер түсінігі.

Дәріс № 6

Тақырыбы: Тұғырықтар.Тұғырықтардың пайда болу себептері. Олармен күресу.

Дәрістің сұрақтары:



  1. Тұғырықтар. Тұғырықтар пайда болу үшін қажетті шарттар.

  2. Тұғырықтарды болдырмау стратегиясы.

  3. Банкир алгоритмі.

  4. Тұғырыұтарды анықтау. Ресурстарды тарату графтары.

  5. Петри желілері.

  6. Тұғырық мәселесі үшін Холт моделі.

Тұғырықтар

Тұғырықтар және өмірлік қалған проблемалар – маңызды факторлар, ОЖ ескеретін факторлар.

Тұғырық (deadlock) – бұл мультипрограммалық жүйе ситуациясы, бұл жаңалық болады деп тосады бірақ олай болмайды.

Қарапайым тұғырыққа мысал келтірілетін болсақ ОЖ-гі тупикте ресурстардың байқалу процессі кезінде басқа процеспен кедергіге ұшырайтын жағдайлар да болады.

Спулинг жүйесі(кіріс-шығыс буферизациясымен) тупикке қатер әкеледі.

Негізгі тұғырық кезіндегі қажетті шарттар

Негізгі тупик кезіндегі қажетті шарттар:


  • Бірлестік шарты;

  • Ресурстарды күту шарты;

  • Дөңгелек күту шарты.

Негізгі тұғырықтардың пайда болуының шарттары. 1971 жылы Коффман, Элфик және Шошани тұйықтарды тудырудың төрт шартын қисынға келтірді:

  1. (Mutual exclusion) тұйықталулардың пайда болуының шарты. әрбір процес бір ғана лек үшін бөлінген нмесе енуге рұқсат етілген. Процестер өздеріне бөлінген қорларды монополиялық басқаруды қажет етеді.

  2. қорларды күту шарттары (Hold and wait). Процесстер өздеріне бөлінген қорларды ұстап тұрады және сол уақытта қосымша бөлінетін қорларды күтеді (басқа процесстердің әсерінен кідірген қорларды)

  3. Қайта таратпау шарттары (No preemtion). Алдын – ала берілген қор процестен мәжбүрлі түрде алынылмайды... оларды ұстап тұрған процес арқылы ғана босатылады.

  4. дөңгелек күту шарттары (Circular wait). Басқа процестер шынжырлы түрде талап ететін, әр – бір процесс бір немесе оданда көп қорларды ұстап тұруы мүмкін, сол жағыдайда процестердің сақиналы шынжыры болады.

    Жүзік - соғу, қалыптау, ширату , сәндеу арқылы жасалып, сәндік үшін саусаққа салынатын әшекейлі сақина. Палеолит дәуірінде сүйектен, неолит дәуірінде тастан, қола дәуірінде металдан жасалған. Ежелгі Египетте (Мысыр) мөрлі Жүзік салу кең таралып, оның көзінде оюлап салынған сурет не жазу болған; адамдар қол қою орнына мөрлі Жүзіктің таңбасын басқан.



Жазылған бағдарлама көмегімен тұғырықты шектеуге болады, лектердің өзара жылдамдығына байланысты тұйықталуларды болдырмаудың арнайы бағдарламасы жазылуы қажет.мысалы 4.7 суретте көрсетілген А және В лектерінің бірдей тәртіппен қорлдарды сұрады сұраса, онда тұйықталу тууы мүмкін емес еді. Тұйықталуды болдырмаудың едәуір тиімді жолы бар, ол ОЖ әрбір тапсырма жіжеру алдында олардың қорға қажеттілігі мен осы мултибағдарламалық қосапда туындайтын тұйықталуларды сараптайды. Солай болған жағыдайда жаңа тапсырманы енгізу уақытша шегеріледі. ОЖ сонымен қатар лекреге

Қорларды тағайындауда анықталған тәртіпті пайдалануы мүмкін, мысалы, қорлар операциялық жүйеде, анықталған тәртіппен барлық лектерге ортақ бөлінуі мүмкін.


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

Анықтау алгоритімі өзіне жүктелген міндеттерді толықтай орындап тұйықталуды табады делік. Содан әрі не болады. Тағы бір жолы қалпына келтіріліп жүйені арықарай жүмыс істетеді. Осы бөлімде біз тұйықталудан кейінгі қалпына келтірудің түрлі тәсілдерін қарастырамыз.

Тұйықталуда тұрған жүйені, оның қалыптасуының бір шартын бұзу арқылы тұйықталудан алып шығуға болады. Осыған байланысты атқарылған жұмыстардың бірнеше лектері толдық немесе бөлшекті қорытындысын жоғалтады.

Факторлармен бірге қалпына келтіру қиындықтары



  • көптеген жүйелерде процесті тоқтатудың тиісінше нәтижелілігі жоқ, оны жүйеден алып шығып және оны нәтижесіне сәйкес қайта қалыптастыру

  • егер ондай жүйе болған күнде де, ол көп шығын мен оператор назарын көп қажет етеді

  • күрделі тұйықталудан кейінгі қалпына келтіру көп жұмысты қажет етеді


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

Мысалы, лазерлі принетерді процестен ажырату үшін, оператор басылып шығарылған беттерді жинап кішкене үйінді етіп жинауы жеткілікті. Содан кейін процесс тоқтатылып принтер басқа процеске беріледі.

Лазер (ағылш. laser, ағылш. light amplification by stimulated emission of radiation - жарықты мәжбүрлі сәулелену арқылы күшейту қысқашасы) - лазер, оптикалық кванттық генератор - толтыру (жарық, электр, жылу, химиялық және т.б.)

Принтер (ағылш. printer) - мәтін мен кескіндерді қағазға немесе басқа да басып шығарылатын арқауларға шығаруға арналған құрылғы, ЭЕМ-ның ақпарат басып шығаруға арналған перифериялық құрылғыларының бір түрі.

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


Кейін шегіну арқылы қалпына келтіру.

Шегіну - қарсыластың басым күшінің соққысынан шығу мақсатында жүргізілетін әскери шара. Келесі іс-қимылға тиімді жағдай табу, уақытты ұту және басқа бағыттардағы іс-қимыл үшін күштерді босату мақсатын көздейді.

Бұл барынша мүмкін, ең нәтижелі тоқтату және қайта құрудың тәсілі

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

Тұйықталу анықталғанда, онда қандай қорлар дөңгелек күту цикліне қатысқанын байқауға болады.

Бір процесті жою арқылы қалпына келтіру. Тұйықталуды шектеудің ең қарапайым, дөрекі тәсілі – бір немесе одван да кп процестерді жою. Мысалы циклдегі процесті жою. Онда қалған процестер сәтті орындалуы мүмкін. Егер бұл көмсектеспесе онда тағы бір процесті жоюға болады.

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



Қорларды бөлу арқылы тұйықталуларды шектеу. Процесс еркіне пайдалануға берілген қор бұл қауіпті еместігіне шешім қабылдауы қажет. Мұнадай сұрақ туады: тұйықталулардан қашатын және дұрыс шешім қабылдайтын алгоритім бар ма? Жауабы – бар, біз тұйықталулардан қаша аламыз, егер белгілі біа ақпарат алдын ала анықталуы мүмкін болса. Осы секцияда біз тұйықталудың алдын алу жұмыстарын қорларды түпкілікті бөлу арқылы жүргізуді қарастырамыз.

Тұйықталулардың алдын алу алгоритімдері қауіпсіз жағдайлар концепциясына негізделеді



Банкирлердің тұйықталулардың алдын алуы және алгоритімдері. Тұйықталулардаң қашуға болады егер қорларды рационалды түрде пайдаланып, белгілі бір тәртіпті ұстай отырып. Алгоритімдер арасында кеңінен танымалы ол – Дейкстрой ұсынған, банкирлік алгоритім.

Жүйедегі n құрылғы бар делік, мысалы лента. Алгоритім тәртібі төмендегідей:

10 құрылғы іске қосылған, ал 2 құрылғы қосалқы бар, 12 құрылғымен үш тұтынушы жұмыс істейтін жүйе сенімділігіне мысал келтірейік. Ағымдағы жүйе төмендегідей:




Ағымдағы саны

Максималдық қажеттілік

Бірінші тұтынушы

1

4

Екінші тұтынушы

4

6

Үүшінші тұтынушы

5

8

Дәл осы жағыдай сенімді. Жүйе ең алдымен екінші тұтынушына қанағаттандырады да өзінің 6 құрылғысыныың босағанына дейін күтеді. Содан кейін басқа тұтынушыларды қанағаттандыра алады.

Міндетті түрде тұйқталу болады деген термин сенімді жүйеде қолданылмайды. Ол тек қана сәтсіз жағыдайларда жүйе тұйықталуға түсіп қалуы мүмкіндігін ескертеді.

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


  • Банкир алгоритімі бекітілген қорлар санына сәйкес орындалады

  • Он требует, чтобы число работающих пользователей оставалось постоянным

  • Осы алгоритім белгілі уақыт аралығында тапсырысты қанағаттандыруды талап едеді

  • Алгоритім тұтынушылар қорларды қайтаратындығына кеілдік беруін талап етеді.

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



  • Тұтынушылар алдан ала қорлар санын көрсетуін талап етеді. Қорлардың динамикалық бөлінуіне сәйкес тұтынушыларға қажетті қорлар сенын анықтау өте қиын.

Пайда болу шарттарын бұза отырып тұйықталуды шектеу.Берілген тапсырма туралы ақпаратсыз қандай жүйе тұйықталудың алдын ала алады? Бұл сұраққа жауап беру үшін тұйықталуды тудырудың үш шартына оралайық. Бөлінген уақыт соңында бір қызмет қанағаттандыра алмайтындай жүйе жұмысын қалыптастыра алсақ онда тұйықталу болуы мүмкін емес.

Өзара байланыс шарттарын бұзу. Егер жүйеде бөлінген қорлар болмаса тұйықталу болмайды. Егер де жалпылау қасиеті болса мысалы принтерге өзара хауз тудыра отырып екі процесті бір принтеде орындауға болады. Спулинг арқылы бірнеше процесті бір уақытта орындау мүмкін. Бұл жағдайда тұйықталу болмайды.

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

Бәсеке (лат. concurrere) - ортақ ресурсты пайдаланудағы жүйелердің немесе программалардың өзара таласушылығы; қандай жұмыс бекетінің арнаға қатынас құра алатынын анықтауға мүмкіндік беретін үстаным.



Қосымша қорлардың күту тәртібінің шарттарының бұзылуы. 1968 жылы Хавендер төмендегі старатегияны ұсынды:

  • әрбір процес өзіне қажетті қорлардықолма қол талап етуі қажет және барлық қорлар мүмкін болғанға дейін жұмысты бастамау керек.

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

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

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

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



Дөңгелек күту режімін бұзу. Бір ғана шарт қалды. Циклдық күтуден аврылудың ешбір жолы жоқ.

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

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

Бақылау сұрақтары:


  1. Бір процесс қатысқан тұғырық мысалысын келтіріңіз.

  2. Үш процесс және үш ресурс бар тұғырық мысалысын келтіріңіз.

  3. Тұғырық болудың негізгі төрт шарттары.

Дәріс №

Тақырыбы: Жадыны басқару. Жадты басқару стратегиясы.

Дәрістің сұрақтары:



  1. Жадтың иерархиясы.

  2. Жадыны ұйымдастыру түрлерінің эволюциясы.

  3. Жадыны парақтық және сегменттік ұйымдастырудың ерекшелңктері.

  4. Жадыны басқару стратегиялары.

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

Мультибағдарламалық жүйедегі жадыны басқару оперативтік жүйенің функциялары:



  • Бос және толық жадыны тексеру;

  • Жадыны процесстерге бөлу және процесс біткенде жадыны тазарту;

  • Негізгі жадыға барлық процесстер симаған кезінде, оперативтік жадыдан дискіге процесстер шығару;

  • Оперативті жадыда орын босағанда, процесстерді сонда қайтару;

  • Физикалық жадының нақты аймағына бағдарлама мекен-жайын жөңдеу;

Жадыны басқарудың барлық әдістерін екі классқа бөлуге болады: оперативті жадымен диск арасында процесстерді алмастыру әдісі және бұл істі жасамайтын әдістер.

Алмастыру - белгілі бір n элементті қандай да бір ретте (тәртіпте) қайталамай орналастыру. Берілген n элементтен барлығы әр түрлі n! = 1*2...n Алмастыруы жасалады. Алмастыруға байланысты көптеген есептер ауыстыру терминдері арқылы тұжырымдалады.

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

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

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



  • Символдық аттарды қолданушы бағдарламалық жасау барысында алгоритм тілдерді қолданылады.

  • Кейде математиклық немесе логикалық деп аталатын виртуалды мекен-жайлы транслятор өңдеп бағдарламаны машинаның тіліне аударады.

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

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

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

Әр түрлі оперативтік жүйеде виртуалды мекен-жай кеңістігі құрылысының амалы қолданылады. Кейбір оперативтік жүйеде виртуалдық мекен-жай физикалық жады сияқты ұздіксіз сызықтық жүйелікте беріледі. Сонымен қоса виртуалды мекен-жай біршама ығысу (әдетте бұл 000 ……………000) – жекеше бір сан виртуалды мекен-жай болады. Мекен-жайдың мұндай түрін сызықтық виртуалды мекен-жай дейді. 5.2.сурет



1.2.сурет. Бірнеше бағдарламалардың виртуалды мекене-жай кеңістігі

Басқа оперативтік жүйеде виртуалды мекен-жай сегмент деп аталатын бөлшектерге бөлінеді. Бұл жағдайда мекен-жайдан басқа қосты сан болған, соның ішінде n – сегменті, ал т – сегменттің ығысуын білдіретін виртуалды мекен-жай пайдаланылады.



1.3.сурет. Виртуалды мекен-жай кеңістігінің түрлері:

жалпақтау (а), сегменттік (б)

Виртуалдық мекен-жайдың физикалық түрленуіге 2 ерекшелігі бар:



  • Бірінші жағдайда жадыға бағдарламаны бастапқы тейіптеу кезінде виртуалдық мекен-жайды физикалыққа ауыстыру әрбір процессте бірақ рет орындалады. Арнайы жүйелік бағдарлама – орын ауыстыру тиіпеуіші – бағдарламаны тейіптеу барысында жадының бастапқы физикалық мекен-жайы туралы шығатын мәлімет негізделеді, сонымен қатар мекен-жайды тәуелді программа туралы транслятормен берілген ақпарат бағдарламаны тейіптеп, виртуалдық мекен-жайды физикалықпен ауыстырады;

  • Екінші тәсіл мынамен шектеледі, бағдарлама жадыға виртуалды мекен-жайға өзгермеген түрінде тиіптеледі, нақты айтқанда операнды инструкциясы мен мекен-жайдың ауысуы траслятор өңдеген мағынасымен көрсетіледі. Тейіптеу кезінде виртуалдық мекен-жайға бағдарлама кодының орындалуын операциялық жүйеде белгілейді. Бағдарламаның орындалуы кезінде әрбір операциялық жадыға өтуінде виртуалдық мекен-жайдың физикалыққа жаңартылуы орындалады. Бұның жаңарту кестесі 5.4. суретте көрсетілген мысалға операциялық жүйе сызықтық-құрылымды виртуалдық мекен-жаймен қолданылсын және осы операциялық жүйе басқаратын кейбір бағдарламалар физикалық жадыға физикалық мекен-жайдан бастап тейіптелген. Бастапқы S ығысу мағынасын операциялық жүйе сақтайды және бағдарлама орындалу уақытында оны арнайы процессор регистрына орналастырады. Берілген бағдарламаның виртуалдық мекен-жайлары жадыға кірген уақытта физикалық жолмен немесе оларға S ығысуының қосылуы түрлендіріледі. Мысалға: V мекен-жайы бойынша орналасқан MOV мәліметтер ауысу инструкциясының орындалуында VA S физикалық мекн-жай V мекен-жайы бойынша орналасады.



1.4. суретте динамикалық мекен-жайларды жаңарту кестесі
Соңғы тәсіл ыңғайлау болып табылады. Тейіптеуіш бағдарламаны бастапқы жадының бөлігіне қатты байланыстырғанда, виртуалдық мекен-жайдың динамикалық түрлендіруі процесстің бағдарламалық кодын орындау кезінде оны ауыстыруға мүмкіндік береді. Бірақ ауыстыру тейіптеуішін қолдану өте үнемді, өйткені бұл жағдайда әрбір виртуалды мекен-жайдың түрлендіруі тейіптеу кезінде бірақ рет болады, ал динамикалық жаңартуда - әрбір мекен-жайдың мәліметтерін қолданған сайын. Виртуалды мекен-жайлы процесстің максималды мүмкіндігі мен виртуалды мекен-жайдың көрсетілуін ажырата білу қажет. Бірінші жағдайда операциялық жүйе жұмыс істейтін компьютердің архитертурасымен анықталатын виртуалдық мекен-жайдың максималды мөлшері, әсіресе оның адресация кестесі топталуы жөнінде айтылған. Мысалы, 32-топтық Intel Pentium процессорларымен жұмыс істеген уақытта операциялық жүйе әрбір процесске 4 Гбайтқа деінгі виртуалды мекен-жай береді. Бірақ бұл мағына виртуалдық мекен-жайдың практикада сирек қажет болатын сәйкестік мөлшері болып табылады. Процесс виртуалдық мекен-жайдың шектелген бөлігін қолданады.

Белгіленген виртуалдық мекен-жай жұмыс процессіне нақты керек жинағы болып табылады. Кодтық сегмент – сонымен бірге сегмент немесе мәліметтер сегментін құрғанда осы мекен-жайларды бастапқы бағдарламаның мәтініне негіздеп, бағдарламаға тронслятор негіздейді. Содан кейін поцессті құру кезінде операциялық жүйе виртуалды мекен-жайды өзінің жүйелігінде белгілейді. Процесс өзінің орындалу барысында мекен-жайын операциялық жұйеден қосымша сегменттің құрылуын немесе бар мөлшерін көбейтуін сұрап бастапқы белгіленген виртуалдық мекен-жайдың мөлшерін көбейте алады. Кез келген жағдайда операциялық жүйе әдетте виртуалдық мекен-жай процессінің сәйкестігін қолдануын бақылайды – оған белгіленген сегменттің шетіне шыққан виртуалды мекен-жайымен процесске операция жүргізілмейді. Виртуалды мекен-жайдың максималды мөлшері компьютердің берілген архитектурасымен сәйкес мекен-жайдың топталуымен шектеледі, әдетте ол компьютердегі физикалық жады көлемімен келіспейді. Бүгінгі күнгі универсалдық машина үшін виртуалдық мекен-жайдың көлемі оперативтік жады көлемінен асады. Қолданбалы кодтан операциялық жүйе кодына беру басқаруын шектеу үшін және операциялық жүйе модульдерін жеңіл қоланбалы мәліметтерге кіру үшін рұқсат. Мысалы, оларды сыртқы құрылғыға шығару үшін көбінесе операциялық жүйе олардың сегменттерін белсенді процесстің виртуалды мекен-жаймен қолданбалы бөледі. Нақты айтқанда операциялық жүйе сегменттері мен белсенді процесс сегменттері біргелкі виртуалды мекен-жайды құрайды.

Әдетте процесстің виртуалдық мекен-жайы екі үздіксіз бөлікке бөлінеді: жүйелік және қолданбалық. Кейбір операциялық жүйелерде (мысалға: Windows) бұл бөлшектер біркелкі мөлшер – 2Гбайттан болады. Мысалы: 1Гбайт операциялық жүйе үшін, және 2Гбайт қолданбалы бағдарлама үшін әрбір процесстің виртуалды мекен-жай бөлігі операциялық жүйе сегментіне арналған барлық процесске сәйкес болады.

Қолданбалы бағдарлама(Прикладная программа; application program) - 1) пайдаланушының қолданбалы мәселелерді шешуге арналған программасы; жұмыс істеуші адамның нақты тапсырмасын орындайтын дестелік файлдағы программа.

Сондықтан белсенді процесс ауысуында, индивидуалды сегментті бар виртуалды мекен-жайдың екінші бөлігіне ауыстырылады. Әдетте – кодтармен және қолданбалы бағдарламаның мәліметтері (5.5.сурет). жаңашыл процессордың архитектурасы виртуалдық мекен-жайдың құрылымының ерекшелігін көрсетеді. Мысалы: Intel мұндай жағдайда операциялық жадыға симайтын мәліметтер сақтайтын жүйе сыртқы жаңашыл компьютерлерді қатқыл дискісі бар жадысын пайдаланады. Осы принципте виртуалды жады негізделген. Жадыны басқару үшін операциялық жүйеде қолданылатын жаңашыл тетік.

Тетік (ор. деталь) - құрастыру операцияларын қолданбай жасалған бұйымның бөлшегі.

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

Виртуалдық мекен-жайға белгіленген анықтама, нақтырақ айтқанда команда коды шығушы және мәлімет аралығы, сонымен қатар есептің нәтижнесі процесстің барысын көрсетеді.

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






1.5 сурет Жалпы және жеке виртуалды мекен-жай.

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

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

Виртуалды жадының жүйелі бөлігі әр типті операциялық жүйеде парақтық ығыстырып шығарылған (paged) саланы қосып алады. Ығыстырылып шығарылмайтын салада жылдам реакция немесе жадыда үнемі болатынын талап ететін операциялық жүйе модульдері орналасады, мысалы жадының парақтары ауыстыруын басқаратын ағым немесе код диспетчері. Қалған операциялық жүйе модульдері парақтық ығыстыруға, пайдаланушы сегменттер ретінде ұшырайды.

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

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



Жадының үлестіру алгоритмі. Әр түрлі даму кезеңіне сай операциялық жүйелерінің жадыны үлестірудің жалпы тұрғысын қарастырайық.

Тұрғысын - Шығыс Қазақстан облысы Зыряновск қалалық әкімдігіне қарасты ауыл, Тұрғысын ауылдық округі орталығы.

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

Суретте барлық жадыны үлестіру алгоритмдері 2 класқа бөлінген: сыртқы жадысы қосылмайтын алгоритмі және операциялық жүйемен дисктің арасында сегменттері ауысатып жүретін алгоритм







1.6 сурет Жадыны үлестіру әдістемісінің классификациялары.

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

Жаданы басқару жүйесі келесі міндеттерді шешеді.



  • Орындауға түскен бағдарламаның өлшемімен бос бөлімдерді салыстырып, сәйкес бөлімді таңдайды.

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

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

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



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

Жадыны басқару үшін арналған функциялар:

Жадыны басқаруды былай қарастыруға болады, ақпаратты жадыға енгізудің енгізудің үш функциясы бар:



  • Аталатын функция F1, әлбетте көрсетілген ақпарат қолданушының аты ақпараттың идентикаторы, осыған арналған ат үшін

  • Жадының функциясы F2, олар орналасқан жерді идентификаторады шындығындағы адресін анықтайды

  • Содержимое функциясы F3, бұл мәндегі жадының адрестері, сол адресте орналастырылған.


Қолданушының f1 Біркелкі f2 Ұяшықтар f3 Мәні

аттары идентификаторлар жадысы
Жадыдағы мультибағдарламалық жүйе

Ауысу бөлігіндегі мультибағдарлама – егер де есепті енгізсек, онда ешқандай кеденді сақтап керегі жоқ, есепке қанша жадыдан орын керек болса, керектігінше қолданды.

есеп Х 40К операциялық жүйе
есеп Y 60K

Есеп Х 40К

Есеп Y 60K



Бос



Ауысу бөлігіндегі мультибағдарламадағы бастапқы бөлінуі


Сегменттік – беттік жады (paging/segmentation)сегмент үшін жады беттер бөледі, және де сегменттің кестелік кеденіне байланысты бөлінеді. Адрестер үш компоненттардан тұрады [s,p,d] s-сегменттің нөмері, p- беттегі кестедегі жазбаны анықтайды, d – қосылыстары. Сонда [s,p,d] s- сол берілген есептегі, p- беттегі, d – сөзді анықтайды.

сегменттағы кестелік регистр

бет
s р d d

сөз


Сегметтер кестесі
Кедені беттегі база кестесі s-тая строка

таблицы

сегментов



Беттегі кестелер





Признак қорғаныс беттің орналастыруын көрсеткіш р-тая

строка таблицы

кеден страниц (беттегі кестенің ұзындығы)

Сегменттік – беттік жадының , адресті табу кезеңі

f3(сөз)= f3(f3(f3(f3(сегменттағы кестелік регистр) s) p) d)
Беттерге тез ену ассоциативтік регистр

сегменттің беттің Беттің

номері номері орналасқан

жері бет [s1,p1]



s1 p1 бет [s2,p2]
s2 p2
s3 p3

. . .

Ұзындық (Длина) - егер тетік сызбада бірақ көрінісімен кескінделген болса, оның үзындығының сандық мәнінің алдына "L" деген таңба қойылады. Ұзындығы 200 мм бұрыштықтың сызбасы көрсетілген. Ұзындықтың Бірліктердің халықаралық жүйесіндегі бірлігі - метр.

бет [s3,p3]



Жадыны басқару стратегиясы. Қандай да бір нақты сұлба жадысы таңдалса, оптималдық мінездеме үшін жадыны басқару стратегиясын қолдану керек. Жадыны басқару стратегиясына әртүрлі мән беріп, шығарса олар қалай анықталады:

  • Жады да жаңа бағдарлама алсақ: жүйеге сұрау жіберу

  • Бағдарлама оперативтік жадының қанша бөлігін алу керек: көбінесе бос орын қалдырмауға тырысады, олардың жадыға минимум орын қалдырмауға немесе оларды тез жадыға орналастырып , машинаның уақытын алмайды.

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

Жадыны басқару стратегиясы категорияларға бөлінеді:

  1. Таңдау стратегиясы

Таңдау стратегиясына сұрау жіберу

2.орналастыру стратегиясы

Таңдау стратегиясы олардың мақсаты: қандай уақытта бетті қайта жазу керектігін және де сегментті оперативтік жадыға ауыстырады.

Орналастыру стратегиясы. Түскен сегментті немесе бетті бірінші жадыға орналастыру, олардың мақсаты болып табылады.

Оперативтік жадыға жаңадан бағдарлама енгізілсе, онда оларды қалай таңдау керек. Және де оларға 3 стратегия келеді. Оларды қарастырып өтсек:



  • Көбінесе келетін стратегия, көбінесе келетін жадыға бағдарламаны орналастырса, онда жадыға аздаған орын қалады,

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

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

Кез келген бетті ығыстыру. Мұндай оңай жолмен жадыдағы орынды босату үшін кез келген бетті ығыстырамыз.

Бірінші түскен бетті ығыстыру ( FIFO)

First-in-first-out

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

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

Қолданысқа енбейтін бетті ығыстыру ( LRU)

Least-recently-used

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



Қолданысқа көп ене бермейтін беттерді ығыстыру(LFU)

Least-frequently-used

LFU стратегиясы жоғарыда айтылып өткен. LRU стратегиясы сәйкес келеді. Мұнда да керек бетті ығыстырып алуымыз керек.


Бақылау сұрақтары:

    1. Жадының иерархиялық ұйымдастырылуын қарастырыңыз.

    2. Жадыны ұйымдастыру түрлерінің эволюциясы.

    3. Жадыны ұйымдастыру стратегиясының негізге қасиеттері.

    4. Жадыны бақылау түрлері.


Дәріс № 8

Тақырыбы: Сыртқы жадыны басқару

Дәрістің сұрақтары:



  1. Файлдар.

  2. Деректер иерархиясы. Файлдарды ұйымдастыру.

  3. Кіріс әдістері. Файлдардың мінездемелері.

  4. Файлдық жүйе. Файлдық жүйенің фанкциялары. Файлдық жүйенің құрамы.

  5. UNIX файлдық жүйесі.

  6. Файлдардың дисктік жадыда орналасуы.

Сыртқы жадыны басқару. Файлдар.

Иерархиялық мәліметтер. Иерархияның төменгі дәрежесі – бытавой комбинация құрайды, соның көмегімен кез – келген мәліметтердің элементтері құралады. Ал байттар мен символдар келесі дәрежеде орналасқан ( мысалы , 8 – биттік комбинация «аски» АSCII-тық кодта қолданады). Структуралардың үлкені болып саналатын жиек : алфавиттік, сандық немесе алфавиттік – сандық, жиектермен қосылған топтар жазбаларды құрайды.

Сандық - киіз үйдің ағаш жиһаздарының бірі. Оған киім-кешек, асыл бұйымдар салынады. Қазақ шеберлері Сандықты қайың, қара тал ағаштарының сүрегінен жасаған. Сыртынан көркем етіп темір, мыс жапсырмамен, қатырма ою өрнектермен безендіріледі.

Жазбалар қосылып, файл болады, ал топтармен байланысты файлдар мәліметтер базасы болады...

Файл (file) – мәліметтерге ат қою. Операторлардың көиегімен бір бөлік болып, файлдар мен операция жасалуы мүмкін. Операторлар: ашу(open), жабу(close), құрау(create), құрту(destroy), көшіру (copy), ат қою (rename), өшіру (list). Басқа файлдардың құрамдарымен операция жасалуы мүмкін: оқу (read), жазу (write), жаңарту (update), қою (insert), алып тастау (delete).

Рұқсат ету тәсілдері

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



  • Кезекпен рұқсат ету тәсілі;

  • Базистік рұқсат ету тәсілі;

Кезекпен рұқсат ету тәсілі мынандай жағдайларда қолданды, жазбаларды тазалау кезінде болашақтағы жағдайды көре алғанда.

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



Файлдардың мінездемелері.

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

  • Белсенді – файлдағы жазбалардың пайызымен өлшенеді, берілген уақытта тазалауды қарастырады.

  • Өлшем – файлда сақталынған мәліметтердің мөлшерін анықтайды.

Файлдық жүйе

Файлдық жүйе- ол барлық басқару жадының жүйесінің бір бөлшегі, сыртқы жадыда сақталған, оның міндеті көбінесе файлдарды басқару болып табылады, қолданушыларға ақпаратты бөлу бақыланады.

Файлдар жүйесінің құрамы

Файлдық жүйе, ОС ядросының енетін құрамдары, олар келесілерді құрайды:



  • Кіру тәсілі, файлдарда сақталынғандарға нақты мәліметтер мүмкіншілігін анықтайды.

  • Файлдарды басқару, топтасып қолдану және қорғау, файлға сақтауды қадағалайды.

  • Сыртқы жадыны басқару, сыртқы жадыда файлдарды сақтауға, орындауға орналастырады.

UNIX файлдық жүйесі

UNIX файлдық жүйесін қарастырып өтсек.ең басты файлдық жүйедегі белгілі бір дискідегі мөлшердіорналастыру, аталған бөлшектер – файлдар.

UNIX үш негізгі түрлері бар. Олар:


  • Дискідегі қарапайым файлдар

  • Каталогтар

  • Белгілі бір файлдар

Қарапайым файлдар – қолданушы енгізген ақпаратты дискіде сақтау. Файлдар болып, дайын бағдарламалар қолданылады.

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

Символдық деңгейді анықтау файлдың символдық атымен анықталады. Файлдық жүйеде әр файл тек бір ғана асимволдық атты иелене алады. (мысалы, MS-DOS), бұл деңгей жоқ символдық ат сияқты. UNIX файлдық жүйесінде мысалы, маңызды болып дескриптор файлы есептеледі (inode).



Файлдағы сұраныс

(операция, файлдың аты, логикалық жазу)
Символдық деңгей Символдық аттың ерекше

атын ақытау



Базалық деңгей Ерекше файлдағы аттың

мінездемесін анықтау
Тексеру деңгей Операцияға тапсырыс берілген

тапсырыстық файлды тексеру


Логикалық деңгей Логикалық кординаттық

жазуды файлда анықтау
Физикалық деңгей Логикалық және физикалық

блоктағы номерді анықтау
Кіріс- шығыс жүйесі
Келесі базалық деңгейде ерекше файл атауының қарастырылған мінездемесі: мекені, мөлшері т.б. Жоғарыда айтылып өткендей файлдың мінездемесі каталогтық құрамына немесе кестеде жеке сақталады.

Логикалық деңгейде логикалық жазудың кай кординатта екені анықталады. Физикалық файлдың сарапталуы оның байт мөлшерімен анықталады. Берілген деңгейдегі жұмыстың алгоритімі логикалық файлға тәуелді. Мысалы, егер файлдың фиксировандық ұзындығы 1 болса, онда n логикалық жазуы l((n-1) байтына ығысады. Кординаттағы логикалық жазуды анықтау үшін файлдағы көрсетілген адрестағы логикалық жазумен және кестедегі көрсетілген символдармен анықталады.



Файл

V V V V V





N















S логикалық жазу

S

Сурет. 19 Физикалық функция деңгейінің файлдық жүйесі.

Бастапқы шығуы:
V – блоктың размері;
N – бірінші блоктағы файл номері;
S – логикалық жазудың файлға ығысуы.

Физикалық деігейде анықтауды талап етеді::

n – логикалық жазудағы талап еткен блоктың номері;

s – логикалық жазудағы блок аралық ығысу.

n = N [S/V], где [S/V] – санның бүтін бөлігі S/V


s = R [S/V] – санның бөлшек бөлігі S/V
Файлға кіру құқығы. Файлға кіру құқығын анықтау – ол операцияда әр қолданғышты анықтау, оын берілген файлға пайдаланады. Дифференциялдық операцияға кіру әр файлдық жүйеде өз тізімі анықталған. Бұл тізімге қосылған келесі операциялар:

  • Файлдың құрылымы,

  • Файлдың жойылуы,

  • Файылдың ашылуы,

  • Файлдың жабылуы,

  • Файлдың оқылуы,

  • Файлдың жазылуы,

  • Файлдың қосымшасы,

  • Файлды іздестіру,

  • Файлдың белгісін алу,

  • Жаңа белгілерді орнату,

  • Өзгертілім,

  • Файлдың орындалуы,

  • Каталогтың оқылуы.


3 ЗЕРТХАНАЛЫҚ ЖҰМЫСТАР

Зертханалық жұмыс № 1

Тақырыбы: ОЖ-ді қарастыру. Виртуалды машиналар.

Жұмыстың мақсаты: Бірнеше ОЖ-ді көріп салыстыру. MS Virtual PC бағдарламасымен жұмыс істеуді үйрену және оның үстіне виртуалды ОС MS-DOS орнықтыру.
Теориялық мәліметтер:

  1. Виртуалды машиналар (ВМ)

Кейде басқа платформа үшін жазылған бағдарламаны персоналды компьютерде іске еңгізу және оны алыстан бақылауға қажеттілік туады. Сондықтан ПК-ге кейде екі нем3се үш ОЖ қою, ал біреуінен екіншіге көшу үшін компьютердің перезагрузкасын жасау керек болады. Ол үшін, VMware, Connectix и Swsoft компанияларымен өңдірілген, ОЖ-ні эмуляциясын жасайтын арнайы бағдарламалар бар. Virtual PC бағдарламаны Connectix компаниясы 1988 жылы шығарды. Бұл бағдарламаның ішінде ПК-дің виртуалды жадымен қолдану үшін VM технологиясы (ВМ - виртуалды машиналар) қолданылды.

Ең алдымен Virtual PC бағдарламасы Macintosh тұтынушыларына арналған болатын.


2. MS Virtual PC
MS Virtual PC 2004 бағдарламаның версиясы Windows - ХР, NT, 2000, ME ОЖ-нің версияларының барлығында қойылуы мүмкін. Ал Virtual PC бақылауы арқылы Windows, Linux, Solaris, NetWare, BeOS и OS/2 Warp барлық варианттары орнықтырыла алады.
Талаптар

Бағдарламаны орнықтырған кезде қатты дискіде 30-40 Мбайт орын болуы қажет, бірақ қосымша операциялық жүйелерді орнықтыру үшін MS Virtual PC сіздің компьютеріңізден қосымша мінездемелер сұрайды. Ең маңызды мінездеме процессордікі (оның жиелілігі 400 МГц-тен кем болмауы керек), оперативті жадқа және бос дисктік орынға. Соңғылардың мінездемелері орнықтырылатын қосымша ОЖ-ге тәүелді. Мысалы үшін Windows 98 орнықтыру 64 Мб RAM және 500 Мб қатты дискіде талап етеді.

Кез-келген эмулятор негізгі ОЖ сияқты сондай тез және жемісті істемейтінін ескеріп отыру керек.

Виртуалды ресурстар

MS Virtual PC бағдарламасы комьютердің ресурстарын виртуалды машиналар арасында бөліп отырады. Процессорлық уақыт және ОЖ жай ғана процесстер арасында бөлінеді. Ал дисководтармен желілік адаптерлердің мәселелерін қалай шешуге болады? Виртуалды дисководтар, виртуалды қатты дисктер, виртуалды желілік адаптерлер ұғымдары еңгізіледі.
Виртуалды қатты диск

Виртуалды қатты диск .vhd кеңейтуі бар бір фай түрінде көрсетіледі. Ол төрт типтің біреуіне ие бола алады:


Динамикалық кеңейтілетін. MS Virtual PC бағдарламасы виртуалды дисктің өлшемін бақылайды, және бұл өлшем әдеттегідей дискте сақталынған мәліметтердің максималды өлшеміне тең болады.

Фиксацияланған өлшемдері бар дисктер. Өлшем тұтынушымен беріледі және эмуляция процессінде өзгермейді.

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

Қатты дискіге қосылған. Бұл виртуалды диск нақты қатты дискіге қосылған.


MS Virtual PC бағдарламасында жаңа виртуалды дискті құру және бар дисктің типін ауыстыруға арналған виртуалды дисктердің мастері бар.
Виртуалды порттар

СОМ1, COM2, LPT1 порттары болуы мүмкін немесе мүлдем болмауы мүмкін.
2.3.5 Қалған жабдықтардың эмуляциясын жасау.

Қосымша ОЖ сіздің компьютеріңізді орнықтырылған жабдықтармен байланыспауы мүмкін. Сізде қандай дыбыс картасы болмасада MS Virtual PC қосымша ОЖ-ні стандартты түрде эмуляциясын жасайды (Windows үшін - Creative Labs SoundBlaster 16). Аналогиялық түрде MS Virtual PC видеоадаптермен, монитормен, мауспен, пернетақтамен және желілік адаптермен жұмыс істейді. Бұның бәрі мүмкін өйткені BIOS-тің эмуляциясы жүріп жатады.



Компьютерге ОЖ-ні орнықтырудың негізгі кезеңдері.

  1. BIOS-тің ішінде компьютердің жүктеу ретін өзгерту. Бұл кезең ОЖ-дің көбін орнықтыру үшін дсикета немесе CD-ROM керек болғандықтан қажетті болады.

    CD-ROM не Ықшам дискілерге арналған дискіенгізгі - бұл сыртқы жадтау құрылғысы, ол CD-ROM ықшам дискілерін оқуға арналған. Ықшам дискілердің көпшілігінің сыйымдылығы шамамен 650-700 МБ болады, сондықтан үлкен бағдарламалар әдетте оларды орнатуға арналған ықшам дискілермен бірге сатылады.



  2. Дискті бөлімшелерге бөлу, ал бөлімшелерді логикалық дисктерге. Бұл кезең fdisk бағдарламасының көмегімен орныдалады.

  3. Әр логикалық дискті форматтау. Бұл кезең format.com утилитасының көмегімен орындалады.

  4. ОЖ-нің файлдарын компьютерге көшіру, жабдықтарды және қызметші бағдарламаларды іске кіргізу . Бұл кезең ОЖ-нің дистрибутивті комплектімен бірге келетін орнықтыру бағдарламасының көмегімен орындалады.


Жұмыс барысы:


  1. Жаңа виртуалды машинаны құру.

1. Microsoft Virtual PC бағдарламасын іске қосыңыз. Пуск\Программы\ Microsoft Virtual PC.

Microsoft Virtual PC іске қосқанда экранда Virtual PC Console терезесі пайда болады. (сур 1.)




сур 1.Жаңа виртуалды машинаны құру.
2. Мастердің инструкциялары бойынша жаңа виртуалды машинаны құрыңыз, MS DOS деп атаңыз (сур 2).

Сур 2.


3. Виртуалды машинаға берілетін оперативті жадтың өлшеміне 8 Мб мәнін беріңіз. (сур 3)



Сур 3.

4. Жаңа виртуалды диск құрыңыз (сур 4).



Сур 4.Жаңа виртуалды дискті құру.
Бұл операциялардың нәтижесінде сіз жаңа 8 Мб оперативті жады және MS DOS Hard Disk.vhd виртуалды дискі бар MS DOS виртуалды машинаны жасадыңыз. (сур 5)
сур 5.


  1. Виртуалды дискіге MS DOS операциялық жүйесін орнықтыру.

ВМ-ны іске еңгізгеннен кейін (сур 6. Start) MS DOS операциялық жүйесін орнықтыруға кірісеміз.




сур.6.
1. Біріншіден ОС DOS және басқа бағдарламалары бар дисктің бейнесін қосамыз: Floppy\Capture Floppy Disk Image... , дискетаны ашу С\temp\VPC 111\dos.VFD. (сур 7)



Сур 7.
Бұл берілген дискета виртуалды болғанына назарыңызды аударыңыз (файлдардың кеңейтулерін көріңіз).

2. А дискінің құрамын көріңіз.

MS DOS-тың сәйкес командасын еңгізіңіз.



3. Дисктің бөлімшелерін құру.
Бұл кезең 4 бөлімнен тұрады:

  1. DOS-аумақтарын құру;

  2. Белсенді бөлімді құру ;

  3. Бөлімдерді жою (қателіктер болған жағдайда);

  4. Жасалған жұмысты көру.


DOS-аумақтарын құру

    • Негізгі бөлімді құру (Primary DOS Partition) дисктің ішінде;

    • Кеңейтілген бөлімді құру (Extended DOS Partition) (қосымша);

    • Логикалық бөлімдерді құру (Logical DOS Partition).

Негізгі бөлімді жасағанда жүйе сізден келесіні сұрайды:

Бұл бөлімге барлық бос зонаны бересізбе?

ЖОҚ еңгізініз, өйткені бізге кеңейтілген бөлімді жасау керек.

Содан кейін: негізгі бөлімге қанша жад қажет?

50% еңгізіңіз, яғни 1022.
fdisk.exe бағдарламаның менюіне Esc пернесін басып шығасыз. Тағы 1 пунктті орындаңыз ( DOS-аумақты құру) және 2 пунктті кеңейтілген бөлім үшін орындаңыз.

Кеңейтілген бөлімді құрғанда қалған жадтың көлемін еңгізіңіз (появляется по умолчанию). Enter.

Аналогиялық түрде логикалық аумақтарды жасауға кірісеміз. Біздің жағдайда бүкіл кеңейтілген аумақты бір логикалық диск алады. Enter.

Логикалық диск қандай атқа ие болды?



1   2   3   4   5   6   7   8

  • Қатты дискіге қосылған . Бұл виртуалды диск нақты қатты дискіге қосылған.

  • жүктеу 1.56 Mb.