Kontekst və proses idarəsi. Proses anlayışı. Proseslərin idarə edilməsi əməliyyat sistemi alt sistemi. Proses vəziyyətləri. Proses Konteksti və Deskriptor Proses İdarəetmə Alt Sistemi

Tapşırıqların idarə edilməsi sistemi onların kompüterdən keçməsini təmin edir. Prosesin vəziyyətindən asılı olaraq, bu və ya digər resurs ayırmaq lazımdır. Məsələn, yeni prosesi ona ünvan sahəsi ayırmaqla yaddaşa yerləşdirmək lazımdır; prosessor vaxtı üçün rəqabət aparan tapşırıqlar siyahısına daxil edin.

Kompüterin işinə birbaşa təsir edən çoxproqramlı ƏS-nin əsas alt sistemlərindən biri proses və mövzu idarəetmə alt sistemi. O, onların yaradılması və məhv edilməsi ilə məşğul olur, həmçinin prosessor vaxtını sistemdə eyni vaxtda mövcud olan proseslər və iplər arasında bölüşdürür.

Sistemdə birdən çox tapşırıq eyni vaxtda icra olunduqda, iplər asinxron şəkildə yaradılıb yerinə yetirilsə də, məsələn, məlumat mübadiləsi zamanı onların qarşılıqlı əlaqəsi tələb oluna bilər. Buna görə də, ipin sinxronizasiyası proses və ip idarəetmə alt sisteminin mühüm funksiyalarından biridir.

Proseslər arasında əlaqə paylaşılan dəyişənlər və adlanan xüsusi əsas əməliyyatlar vasitəsilə həyata keçirilir primitivlər.

Proses və mövzu idarəetmə alt sistemi proseslərdə aşağıdakı əməliyyatları yerinə yetirmək qabiliyyətinə malikdir:

– prosesin yaradılması (kürü atması)/məhv edilməsi;

– prosesi dayandırmaq/davam etmək;

– prosesin bloklanması/oyanması;

- prosesə başlamaq;

– proses prioritetinin dəyişdirilməsi;

Proses və mövzu idarəetmə alt sistemi prosesləri lazımi resurslarla təmin etmək üçün məsuliyyət daşıyır. ƏS yaddaşda xüsusi informasiya strukturlarını saxlayır və bu strukturlarda hər bir prosesə hansı resursların ayrıldığını qeyd edir. Resurs tək istifadə və ya digər proseslərlə birgə istifadə üçün prosesə təyin edilə bilər. Resursların bəziləri proses yaradılarkən ona ayrılır, bəziləri isə icra zamanı sorğular əsasında dinamik şəkildə bölüşdürülür. Resurslar bir prosesə bütün ömrü boyu və ya yalnız müəyyən bir müddət üçün təyin edilə bilər. Bu funksiyaları yerinə yetirərkən, prosesin idarə edilməsi alt sistemi, yaddaşın idarə edilməsi alt sistemi, giriş/çıxış alt sistemi və fayl sistemi kimi resursun idarə edilməsinə cavabdeh olan digər ƏS alt sistemləri ilə qarşılıqlı əlaqədə olur.

1. Proseslərin və mövzuların yaradılması və silinməsi

Proses yaratmaq hər şeydən əvvəl yaratmaq deməkdir proses idarəsi, əməliyyat sisteminin onu idarə etməsi üçün lazım olan proses haqqında bütün məlumatları ehtiva edən bir və ya bir neçə məlumat strukturudur. Bu məsələ əvvəllər ətraflı müzakirə edildi, indi yalnız xatırlayırıq ki, bu cür məlumatlara, məsələn, proses identifikatoru, icra olunan modulun yaddaşda yerləşməsi haqqında məlumatlar, prosesin imtiyaz dərəcəsi (prioritet və giriş hüquqları), və s.

Prosesin yaradılması prosesin icra oluna bilən proqramının kodlarının və məlumatlarının diskdən RAM-a yüklənməsini nəzərdə tutur. Bu halda prosesin idarə edilməsi alt sistemi yaddaşın idarə edilməsi alt sistemi və fayl sistemi ilə qarşılıqlı əlaqədə olur. Çox yivli sistemdə proses yaradıldıqda ƏS hər bir proses üçün ən azı bir icra xətti yaradır. İp yaradarkən, proses yaratarkən olduğu kimi, ƏS xüsusi məlumat strukturu yaradır - iplik identifikatorunu, giriş hüquqları və prioritetləri, ip vəziyyəti və s. Yarandıqdan sonra ip (və ya proses) icraya hazır vəziyyətdədir (və ya xüsusi təyinatlı OS vəziyyətində boş vəziyyətdədir).

Tapşırıqlar istifadəçilərin və ya digər tapşırıqların müvafiq sorğuları əsasında yaradılır və silinir. Tapşırıq yeni bir tapşırıq yarada bilər - bir çox sistemdə bir mövzu sözdə yaratmaq tələbi ilə OS ilə əlaqə saxlaya bilər. uşaq axınları. Yaradan vəzifə “əcdad” və ya “valideyn”, uşaq tapşırığı isə “nəsil” və ya “uşaq tapşırığı” adlanır. "Əcdad" öz uşaq tapşırığını dayandıra və ya silə bilər, "uşaq" isə "əcdadı" idarə edə bilməz.

Fərqli əməliyyat sistemləri uşaq mövzuları və onların valideynləri arasındakı əlaqəni fərqli şəkildə qurur. Bəzi əməliyyat sistemlərində onların icrası sinxronlaşdırılır (ana zəncir başa çatdıqdan sonra onun bütün uşaqları icradan çıxarılır), digərlərində uşaq ana iplə bağlı asinxron şəkildə icra olunur.

Proses başa çatdıqdan sonra OS sistemdə mövcudluğunun "izlərini təmizləyir" - prosesin işlədiyi bütün faylları bağlayır, kodlar, məlumatlar və prosesin sistem məlumat strukturları üçün ayrılmış RAM sahələrini azad edir. Xitam edilən prosesə istinadları ehtiva edən ƏS növbələri və resurs siyahıları düzəldilir.

2. Proseslərin və iplərin planlaşdırılması və göndərilməsi

Planlaşdırma strategiyası məqsədə çatmaq üçün icra edilmək üçün hansı proseslərin seçildiyini müəyyənləşdirir. Strategiyalar fərqli ola bilər, məsələn:

– mümkünsə, hesablamaları başladıqları ardıcıllıqla başa çatdırın;

– daha qısa proseslərə üstünlük vermək;

– eyni gözləmə müddəti daxil olmaqla, bütün istifadəçiləri (istifadəçi tapşırıqlarını) eyni xidmətlərlə təmin etmək.

Prosesin ömrü boyu onun iplərinin icrası dəfələrlə kəsilə və davam etdirilə bilər.

Bir ipin icrasından digərinə keçid nəticəsində həyata keçirilir planlaşdırmagöndərilməsi.

Planlaşdırma mövzular prosesdə və mövzu deskriptorlarında saxlanılan məlumatlara əsasən həyata keçirilir. Planlaşdırarkən iplərin prioriteti, onların növbədə gözləmə müddəti, yığılmış icra müddəti, I/O çıxışının intensivliyi və digər amillər nəzərə alına bilər. ƏS eyni və ya fərqli proseslərə aid olub-olmamasından asılı olmayaraq mövzuların icrasını planlaşdırır. Planlaşdırma, icra zamanı mümkün qədər az ziddiyyət təşkil etmələri və hesablama sistemindən mümkün qədər səmərəli istifadə etmələri üçün belə proseslər toplusunu seçmək vəzifəsi kimi başa düşülür.

Müxtəlif məlumat mənbələrində "planlaşdırma" və "dispetçerlik" anlayışlarının müxtəlif şərhləri var. Beləliklə, bəzi müəlliflər planlaşdırmanı uzunmüddətli (qlobal) və qısamüddətli (dinamik, yəni cari ən səmərəli paylama) bölünür və ikincisi dispetçerlik adlanır. Digər mənbələrə görə, dispetçerlik planlaşdırma mərhələsində qəbul edilmiş qərarın həyata keçirilməsi kimi başa düşülür. Bu seçimə sadiq qalacağıq.

Planlaşdırma iki problemin həlli daxildir:

aktiv ipin dəyişdirilməsi üçün vaxt anının müəyyən edilməsi;

hazır iplər növbəsindən icra etmək üçün mövzunun seçilməsi.

Bu problemləri müxtəlif yollarla həll edən çoxlu planlaşdırma alqoritmləri var. Əməliyyat sisteminin xüsusiyyətlərini təyin edən planlaşdırma xüsusiyyətləridir. Onlara bir az sonra baxaq.

Əksər əməliyyat sistemlərində planlaşdırma həyata keçirilir dinamik olaraq, yəni. iş zamanı mövcud vəziyyətin təhlili əsasında qərarlar qəbul edilir. Mövzular və proseslər təsadüfi vaxtlarda görünür və gözlənilmədən sona çatır.

Statik planlaşdırma növü, eyni vaxtda yerinə yetirilən tapşırıqların bütün dəstinin əvvəlcədən müəyyən edildiyi ixtisaslaşdırılmış sistemlərdə istifadə edilə bilər (real vaxt sistemləri). Planlayıcı bir sıra tapşırıqların xüsusiyyətlərinə dair biliklərə əsaslanaraq cədvəl yaradır. Bu cədvəl daha sonra əməliyyat sistemi tərəfindən planlaşdırma üçün istifadə olunur.

Göndərmə planlaşdırma nəticəsində tapılan həlli həyata keçirməkdən ibarətdir, yəni. bir prosesin digərinə keçməsində. Göndərmə aşağıdakılara düşür:

dəyişdirilməsi lazım olan cari mövzu kontekstinin saxlanması;

icra üçün yeni bir mövzu işə salın.

Mövzunun konteksti, ilk növbədə, kəsilmə zamanı kompüter avadanlığının vəziyyətini (proqram sayğacının dəyəri, ümumi təyinatlı registrlərin məzmunu, prosessorun iş rejimi, bayraqlar, kəsmə maskaları və digər parametrlər) əks etdirir. ), ikincisi, əməliyyat mühitinin parametrləri (açıq fayllara keçidlər, tamamlanmamış giriş/çıxış əməliyyatları haqqında məlumatlar, sistem çağırışlarının verilmiş xətti ilə yerinə yetirilən xəta kodları və s.).

Mövzu kontekstində biz verilmiş prosesin bütün mövzuları üçün ümumi olan hissəni (açıq fayllara keçidlər) və yalnız verilmiş mövzuya aid olan hissəni (registrlərin məzmunu, proqram sayğacı, prosessor rejimi). Məsələn, NetWare mühitində üç növ kontekst var - qlobal kontekst (proses konteksti), mövzu qrupu konteksti və fərdi mövzu konteksti. Bu kontekstlərin verilənləri arasındakı əlaqə proqramdakı qlobal və yerli dəyişənlər arasındakı əlaqəyə bənzəyir. Kontekstlərin iyerarxik təşkili mövzu keçidini sürətləndirir: eyni proses çərçivəsində bir qrupun ipindən digər qrupun ipinə keçid zamanı qlobal kontekst dəyişmir, ancaq qrup konteksti dəyişir. Qlobal kontekstdə keçid yalnız bir prosesin ipindən digər prosesin mövzusuna keçdikdə baş verir.

3. Planlaşdırma alqoritmləri

İlk planlaşdırma probleminin həlli nöqteyi-nəzərindən (aktiv ipi dəyişdirmək üçün vaxt anını seçmək) planlaşdırma alqoritmləri iki böyük sinfə bölünür - qabaqlayıcı və qeyri-preemptiv alqoritmlər:

repressiv olmayan– aktiv iplik özü idarəetməni sistemə ötürənə qədər icra edə bilər ki, növbədən başqa hazır ipi seçsin;

yerdəyişmə– əməliyyat sistemi yerinə yetirilən tapşırığı dəyişdirmək qərarına gəlir və prosessoru başqa ipə keçir.

Bu planlaşdırma alqoritmləri arasındakı əsas fərq iplik planlaşdırma mexanizminin mərkəzləşdirilməsi dərəcəsidir. Alqoritmlərin hər bir sinfinin əsas xüsusiyyətlərini, üstünlüklərini və mənfi cəhətlərini nəzərdən keçirək.

Qeyri-preemptiv alqoritmlər. Tətbiq proqramı, ƏS-dən idarəetməni alaraq, özü onun icrasının növbəti dövrünün tamamlanma anını müəyyənləşdirir və yalnız bundan sonra bəzi sistem çağırışlarından istifadə edərək idarəetməni ƏS-ə ötürür. Nəticə etibarilə, istifadəçinin proqrama nəzarəti ixtiyari bir müddət ərzində itirilir. Tərtibatçılar bunu nəzərə almalı və proqramlar yaratmalıdırlar ki, onlar “hissələrdə” işləsinlər, vaxtaşırı nəzarəti kəsib sistemə ötürsünlər, yəni. İnkişaf zamanı planlayıcının funksiyaları da yerinə yetirilir.

Üstünlüklər bu yanaşma:

– əlverişsiz anda axının kəsilməsi istisna edilir;

– verilənlərin eyni vaxtda istifadəsi problemi həll edilir, çünki hər bir icra dövrü ərzində tapşırıq onlardan yalnız istifadə edir və başqa heç kimin onları dəyişdirə bilməyəcəyinə əmindir;

– axından axına keçidin daha yüksək sürəti.

Mənfi cəhətləriçətin proqramın hazırlanması və proqramçının ixtisaslarına artan tələblər, həmçinin təsadüfən və ya bilərəkdən döngələrə çevrildiyi təqdirdə bir ipin prosessoru ələ keçirmə ehtimalı.

Preemptiv alqoritmlər– dövri və ya dairəvi planlaşdırma növü, burada əməliyyat sisteminin özü aktiv tətbiqi dayandırmaq qərarına gəlir və prosessoru bu və ya digər meyara uyğun olaraq bir tapşırıqdan digərinə keçir. Belə alqoritmləri olan sistemdə proqramçı onun tətbiqinin digər tapşırıqlarla eyni vaxtda yerinə yetiriləcəyindən narahat olmayacaq. Nümunələrə UNIX, Windows NT/2000, OS/2 əməliyyat sistemləri daxildir. Bu sinfin alqoritmləri proqramların yüksək performanslı icrasına yönəldilmişdir.

Preemptiv alqoritmlər kvantlaşdırma konsepsiyasına və ya prioritet mexanizmə əsaslana bilər.

Kvantlaşdırmaya əsaslanan alqoritmlər. Hər bir mövzuya məhdud fasiləsiz prosessor vaxtı verilir (onun dəyəri 1 ms-dən az olmamalıdır - adətən bir neçə onlarla ms). Kvant tükəndikdə ip işləyən vəziyyətdən hazır vəziyyətə keçir. Quanta bütün axınlar üçün eyni və ya fərqli ola bilər.

Kvantları ipə ayırarkən müxtəlif prinsiplərdən istifadə edilə bilər: bu kvantlar sabit dəyərə malik ola bilər və ya ipin ömrünün müxtəlif dövrlərində dəyişə bilər. Məsələn, bəzi xüsusi axın üçün birinci kvant kifayət qədər böyük ola bilər və ona ayrılan hər bir sonrakı kvant daha qısa müddətə malik ola bilər (müəyyən edilmiş hədlərə qədər azalma). Bu, daha qısa iplər üçün üstünlük yaradır və uzun müddət davam edən tapşırıqlar arxa plana keçir. Başqa bir prinsip, giriş/çıxış əməliyyatlarını tez-tez yerinə yetirən proseslərin onlara ayrılan vaxt dilimlərindən tam istifadə etməməsinə əsaslanır. Bu ədalətsizliyi kompensasiya etmək üçün bu cür proseslərdən başqa iplər üzərində imtiyazları olan ayrıca növbə yaratmaq olar. İcra üçün növbəti mövzu seçildikdə, bu növbə əvvəlcə skan edilir və yalnız boş olduqda, icraya hazır olan ümumi növbədən ip seçilir.

Bu alqoritmlər tapşırıqlar haqqında heç bir əvvəlki məlumatdan istifadə etmir. Xidmətin fərqləndirilməsi bu halda sistemdəki axının “mövcudluq tarixi”nə əsaslanır.

İkinci planlaşdırma problemi (növbəti ipin icrasını seçmək prinsipi) nöqteyi-nəzərindən alqoritmləri də şərti olaraq siniflərə bölmək olar: prioritet olmayan və prioritet alqoritmlər. Prioritet olmayan texniki xidmətlə, növbəti tapşırıq onların nisbi əhəmiyyəti və texniki xidmət müddəti nəzərə alınmadan müəyyən əvvəlcədən müəyyən edilmiş qaydada seçilir. Prioritet intizamları həyata keçirərkən, icra vəziyyətinə daxil olmaq üçün bəzi tapşırıqlara üstünlük verilir.

İndi ən çox yayılmış planlaşdırma fənlərindən bəzilərinə baxaq.


İlk gələn ilk xidmət. Prosessor FIFO (First In First Out) prinsipindən istifadə edərək ayrılır, yəni. xidmət üçün müraciətlərin qəbulu qaydasında. Bu yanaşma “hesablamaları mümkün olduqda görünən ardıcıllıqla tamamlamaq” strategiyasını həyata keçirməyə imkan verir. İcra zamanı bloklanan tapşırıqlar hazır vəziyyətə gəldikdən sonra hələ yerinə yetirilməmiş tapşırıqların qarşısında növbəyə qoyulur. Beləliklə, iki növbə yaradılır: biri hələ yerinə yetirilməmiş tapşırıqlardan, digəri isə gözləmə vəziyyətindən keçmiş tapşırıqlardan.

Tapşırıqlar prosessoru könüllü olaraq buraxdıqda bu intizam qeyri-preemptiv olaraq həyata keçirilir.

Ləyaqət Bu alqoritmi həyata keçirmək asandır. Mənfi cəhəti– ağır yük altında qısa tapşırıqlar sistemdə uzun müddət gözləmək məcburiyyətində qalır. Aşağıdakı yanaşma bu çatışmazlığı aradan qaldırır.

Ən qısa proses əvvəlcə xidmət göstərir. Bu alqoritmə görə, işini başa çatdırmaq üçün tələb olunan minimum təxmin edilən vaxta malik ip icranın yanında təyin olunur. Burada tamamlanmasına az vaxt qalan mövzulara üstünlük verilir. Bu, sistemdə gözlənilən tapşırıqların sayını azaldır. Mənfi cəhəti təxmin edilən vaxtları əvvəlcədən bilmək ehtiyacıdır ki, bu da həmişə mümkün olmur. Təxmini təxmini olaraq, bəzi hallarda ipin son nəzarəti qəbul etdiyi vaxtdan istifadə edə bilərsiniz.

Alqoritm qeyri-preemptiv, prioritetsiz kateqoriyasına aiddir.

Adlandırılmış alqoritmlər, istifadəçi sistemin cavab verməsini gözləmədiyi zaman toplu iş rejimləri üçün istifadə edilə bilər. İnteraktiv hesablamalar üçün ilk növbədə məqbul cavab müddətini və multiterminal sistemlər üçün bərabər xidməti təmin etmək lazımdır. Tək istifadəçi sistemləri üçün, birbaşa işləyən proqramların fon işlərinə nisbətən daha yaxşı cavab müddəti olması arzu edilir. Bundan əlavə, bəzi proqramlar birbaşa istifadəçi əlaqəsi olmadan işləyərkən prosessor vaxtının öz payını almağa hələ də zəmanət verilməlidir (məsələn, e-poçt proqramı). Belə problemləri həll etmək üçün prioritet xidmət metodlarından və kvantlaşdırma anlayışından istifadə olunur.


Karusel intizamı, və ya dairəviR.R.(Dəyirmi Robin). Bu intizam qabaqlayıcı alqoritmlərə istinad edir və kvantlaşdırmaya əsaslanır. Hər bir tapşırıq prosessor vaxtını hissə-hissə alır - kvant. Kvant vaxtı bitdikdən sonra tapşırıq prosessordan çıxarılır və icraya hazır olan proseslərin növbəsinin sonunda yerləşdirilir və növbəti tapşırıq prosessor tərəfindən xidmətə qəbul edilir. Sistemin optimal işləməsi üçün tapşırıqlara vaxt dilimlərinin ayrıldığı qanunu düzgün seçmək lazımdır.

Kvant dəyəri istifadəçi sorğularına məqbul sistemin cavab müddəti (onların ən sadə sorğuları uzun gözləmələrə səbəb olmasın) və tez-tez dəyişən tapşırıqların əlavə xərcləri arasında kompromis kimi seçilir. Fasilə edildikdə, OS cari proses haqqında kifayət qədər böyük miqdarda məlumat saxlamalı, ləğv edilmiş tapşırığın sapını növbəyə qoymalı və yeni tapşırığın kontekstini yükləməlidir. Kiçik bir vaxt dilimi və tez-tez keçidlər ilə belə yerüstü xərclərin nisbi payı böyük olacaq və bu, bütövlükdə sistemin işini pisləşdirəcəkdir. Zaman dilimi böyükdürsə və hazır tapşırıqların növbəsi artarsa, sistemin cavabı zəifləyəcək.

Bəzi əməliyyat sistemlərində vaxt diliminin dəyərini və ya onun dəyərlərinin icazə verilən diapazonunu açıq şəkildə təyin etmək mümkündür. Məsələn, OS/2-də CONFIG.SYS faylı zaman dilimi üçün minimum və maksimum dəyərləri təyin etmək üçün TIMESLICE operatorundan istifadə edir: TIMESLICE=32.256 zaman dilimini 32-dən 256 millisaniyəyə qədər dəyişdirilə biləcəyini göstərir.

Bu xidmət intizamı ən çox yayılmışlardan biridir. Bəzi hallarda, OS dəyirmi sistemli planlaşdırma intizamını açıq şəkildə dəstəkləmədikdə, bu cür texniki xidmət süni şəkildə təşkil edilə bilər. Məsələn, bəzi RTOS mütləq prioritetlərlə planlaşdırmadan istifadə edir və prioritetlər bərabər olduqda növbə prinsipi tətbiq olunur. Yəni, yalnız daha yüksək prioritet olan bir tapşırıq bir işi icradan çıxara bilər. Lazım gələrsə, xidməti bərabər və bərabər təşkil edin, yəni. Bütün işlərin eyni vaxt dilimlərini almasını təmin etmək üçün sistem operatoru belə xidməti özü həyata keçirə bilər. Bunu etmək üçün bütün istifadəçi tapşırıqlarına eyni prioritetləri təyin etmək və bir yüksək prioritetli tapşırıq yaratmaq kifayətdir ki, bu da müəyyən vaxt intervallarında taymerdə yerinə yetirilməsi üçün planlaşdırılandan başqa heç nə etməməlidir. Bu tapşırıq yalnız cari tətbiqi icradan çıxaracaq, növbənin sonuna keçəcək və tapşırığın özü dərhal prosessoru tərk edərək onu növbədəki növbəti prosesə verəcək.

Ən sadə tətbiqində, karusel xidməti intizamı bütün işlərin eyni prioritetə ​​malik olmasını nəzərdə tutur. Prioritetli xidmət mexanizmini tətbiq etmək zərurəti yaranarsa, adətən prioritetlərdən asılı olaraq bir neçə növbə təşkil edilir və daha aşağı prioritet növbəyə xidmət yalnız yüksək prioritet növbə boş olduqda həyata keçirilir. Bu alqoritm OS/2 və Windows NT sistemlərində qrafiki tərtib etmək üçün istifadə olunur.

Prioritetlərə uyğun planlaşdırma.

Bir çox preemptiv alqoritmlərin əsasını təşkil edən mühüm konsepsiya preemptive xidmətdir. Belə alqoritmlər axın deskriptorunda tapılan məlumatdan istifadə edir - onun prioriteti. Fərqli sistemlər prioriteti fərqli şəkildə müəyyənləşdirir. Bəzi sistemlərdə ən yüksək prioritet dəyər ədədi olaraq nəzərə alına bilər ən yüksək dəyər, digərlərində isə əksinə, ən yüksək prioritet sıfır hesab olunur.

Tipik olaraq, ipin prioriteti birbaşa ipin işlədiyi prosesin prioriteti ilə bağlıdır. Prosesin prioriteti prosesin sistem və ya tətbiqi olduğunu, prosesi başlatan istifadəçinin statusunun nə olduğunu və müəyyən bir prioritetin təyin edilməsi üçün açıq istifadəçi təlimatının olub olmadığını nəzərə alaraq əməliyyat sistemi yaradılarkən təyin olunur. prosesinə. Prioritet dəyəri proses sapına daxil edilir və onun ipliklərinə prioritet təyin edərkən istifadə olunur. Əgər ip istifadəçi əmri ilə deyil, sistem çağırışını yerinə yetirən başqa bir ipin nəticəsidirsə, onda OS ona prioritet təyin etmək üçün sistem çağırışının parametrlərini nəzərə almalıdır.

Əvvəllər təsvir edilmiş alqoritmlərə uyğun olaraq proqrama texniki qulluq planlaşdırarkən, sistemdə artan yük (xüsusilə RTOS-da) səbəbindən bəzi nəzarət və ya idarəetmə tapşırıqlarının uzun müddət həyata keçirilə bilmədiyi bir vəziyyət yarana bilər. Üstəlik, bu cür tapşırıqların vaxtında yerinə yetirilməməsinin nəticələri bəzi proqramların daha yüksək prioritetlə tamamlanmamasından daha ciddi ola bilər. Bu halda, "fövqəladə" tapşırıqların (emal müddəti başa çatmış) prioritetini müvəqqəti olaraq dəyişdirmək və icra edildikdən sonra əvvəlki dəyəri bərpa etmək məqsədəuyğun olardı. Dinamik dəyişən prioritetlər üçün mexanizmlərin tətbiqi qısa istifadəçi sorğularına daha sürətli sistem cavabını həyata keçirməyə imkan verir (bu, interaktiv iş zamanı vacibdir), lakin eyni zamanda istənilən sorğunun yerinə yetirilməsinə zəmanət verir.

Beləliklə, prioritet ola bilər statik(sabit) və ya dinamik(ondakı vəziyyətdən asılı olaraq sistemin dəyişdirilməsi). Sözdə əsas mövzu prioriteti birbaşa onu yaradan prosesin əsas prioritetindən asılıdır. Bəzi hallarda sistem mövzunun prioritetini (və müxtəlif dərəcələrdə) artıra bilər, məsələn, prosessorun ona ayrılmış vaxt dilimi tam istifadə olunmayıbsa və ya başqa halda prioriteti azalda bilər. Məsələn, OS klaviatura daxiletməsini gözləyən iplərə daha çox, disk əməliyyatlarını yerinə yetirən iplərə isə daha az üstünlük verir. Dinamik prioritet mexanizmindən istifadə edən bəzi sistemlərdə prioritetləri dəyişdirmək üçün kifayət qədər mürəkkəb düsturlar istifadə olunur, bunlara əsas prioritetlərin dəyərləri, kompüter sisteminin yüklənmə dərəcəsi, istifadəçi tərəfindən müəyyən edilmiş ilkin prioritet dəyəri və s. daxildir. .

İki növ prioritet planlaşdırma var: texniki xidmət nisbi prioritetlərlə və xidmət mütləq prioritetlərlə. Hər iki halda, icra üçün ipin seçilməsi eyni şəkildə həyata keçirilir - ən yüksək prioritet olan ip seçilir və aktiv ipin dəyişdirilməsi anı fərqli şəkildə müəyyən edilir. Nisbi prioritet sistemdə aktiv ip prosessoru tərk edənə qədər işləyir (ya gözləyir, xəta baş verir və ya ip dayandırılır). Mütləq prioritetləri olan bir sistemdə, aktiv ipin kəsilməsi, göstərilən səbəblərə əlavə olaraq, hazır iplərin növbəsində aktivdən daha yüksək prioritetə ​​malik bir ip göründükdə də baş verir. Sonra işləyən ip kəsilir və hazır vəziyyətə gətirilir.

Nisbi prioritet cədvəli olan sistem keçid xərclərini minimuma endirir, lakin bir tapşırıq prosessoru uzun müddət məşğul edə bilər. Bu xidmət rejimi vaxt mübadiləsi və real vaxt sistemləri üçün uyğun deyil, lakin toplu emal sistemlərində (məsələn, OS/360) geniş istifadə olunur. Mütləq prioritet planlaşdırma hadisələrə sürətli reaksiyanın vacib olduğu obyektlərin idarəetmə sistemləri üçün uyğundur.

Qarışıq planlaşdırma növü bir çox əməliyyat sistemlərində istifadə olunur: prioritetlərə əsaslanan planlaşdırma alqoritmləri kvantlaşdırma anlayışı ilə birləşdirilir.

TƏLİM ƏMƏLİYYAT SİSTEMİNİN MODULUNUN İNKİŞAF EDİLMƏSİ

Təlimatlar

fənn üzrə kurs dizaynı üçün

"OS"

tam zamanlı tələbələr üçün

istiqamətlər

GİRİŞ 4

1. Nəzəri bölmə. 4

1.1. Prosesə nəzarət alt sistemi. 4

1.1.1. Kontekst və proses idarəsi. 5

1.1.2. Proseslərin planlaşdırılması alqoritmləri. 6

1.1.3. Preemptive və qeyri-preemptive planlaşdırma alqoritmləri. 9

1.1.4. Proses modeli və tədris əməliyyat sisteminin proseslərin idarə edilməsi altsisteminin funksiyaları 12

1.2. Yaddaşın idarə edilməsi alt sistemi.. 17

1.2.1. Səhifə paylanması. 18

1.2.2. Seqment paylanması. 22

1.2.3. Səhifə seqmentlərinin paylanması. 23

1.2.4. Səhifənin dəyişdirilməsi alqoritmləri. 24

1.3. Fayl idarəetmə. otuz

1.3.1. Fayl adları. otuz

1.3.2. Fayl növləri. 32

1.3.3. Fiziki təşkilat və fayl ünvanı. 33

2. Kurs layihəsinin tamamlanma qaydası. 38

3. Tapşırıqlar üçün seçimlər. 39

Biblioqrafiya 42

ƏLAVƏ A... 43

GİRİŞ

Kurs layihəsinin məqsədi: öyrənmək nəzəri əsasəməliyyat sistemi modullarının qurulması. Əməliyyat sisteminin bir hissəsi olan proqramı hazırlamaqda praktiki bacarıqlar əldə edin.

Nəzəri bölmə

Müstəqil kompüterin əməliyyat sisteminin funksiyaları adətən ya ƏS-nin idarə etdiyi yerli resursların növlərinə görə, ya da bütün resurslara aid olan xüsusi tapşırıqlara görə qruplaşdırılır. Bəzən belə funksiya qrupları alt sistemlər adlanır. Ən mühüm alt sistemlər proses, yaddaş, fayl və xarici cihazların idarə edilməsi alt sistemləri, bütün resurslar üçün ümumi olan alt sistemlər isə istifadəçi interfeysi, məlumatların qorunması və idarəetmə alt sistemləridir.

Prosesə nəzarət alt sistemi

Kompüterin işləməsinə bilavasitə təsir edən əməliyyat sisteminin ən mühüm hissəsi prosesə nəzarət alt sistemidir. Hər bir yeni yaradılmış proses üçün ƏS, prosesin kompüter sisteminin resurslarına olan ehtiyacları, habelə ona faktiki olaraq ayrılmış resurslar haqqında məlumatları ehtiva edən sistem informasiya strukturlarını yaradır. Beləliklə, bir proses həm də sistem resurslarını istehlak etmək üçün bəzi tətbiqlər kimi müəyyən edilə bilər.

Prosesin yerinə yetirilməsi üçün əməliyyat sistemi ona prosesin kodunu və məlumatlarını yerləşdirmək üçün RAM sahəsi təyin etməli və onu lazımi miqdarda prosessor vaxtı ilə təmin etməlidir. Bundan əlavə, proses fayl və I/O cihazları kimi resurslara giriş tələb edə bilər.

Multitasking sistemində proses üç əsas vəziyyətdən birində ola bilər:

RUNING - prosesin aktiv vəziyyəti, bu müddət ərzində prosesin bütün zəruri resursları var və prosessor tərəfindən birbaşa icra olunur;

GÖZLƏMƏ - prosesin passiv vəziyyətidir, proses bloklanır, öz daxili səbəblərinə görə icra edə bilmir, hansısa hadisənin baş verməsini gözləyir, məsələn, giriş/çıxış əməliyyatının tamamlanmasını, başqa bir prosesdən mesaj almasını gözləyir. , və ya ehtiyac duyduğu bəzi resursun buraxılması;

READY həm də prosesin passiv vəziyyətidir, lakin bu halda proses ona xaric olan şəraitə görə bloklanır: proses onun üçün tələb olunan bütün resurslara malikdir, icra etməyə hazırdır, lakin prosessor başqa bir prosesi yerinə yetirməklə məşğuldur.

Həyat dövrü ərzində hər bir proses müəyyən bir əməliyyat sistemində həyata keçirilən prosesi planlaşdırma alqoritminə uyğun olaraq bir vəziyyətdən digərinə keçir. Tipik proses vəziyyəti qrafiki Şəkil 1.1-də göstərilmişdir.

Şəkil 1.1 — Çox tapşırıqlı mühitdə proses vəziyyəti qrafiki

Tək prosessorlu sistemdə İŞLƏYƏN vəziyyətdə yalnız bir proses ola bilər, GÖZLƏYƏN və HAZIR vəziyyətlərinin hər birində bir neçə proses ola bilər, bu proseslər müvafiq olaraq gözləmə və hazır proseslərin növbələrini təşkil edir.

Həyat dövrü proses icraya hazır olduqda və öz növbəsini gözləyəndə HAZIR vəziyyətlə başlayır. Aktivləşdirildikdə proses RUNING vəziyyətinə keçir və ya prosessorun özünü buraxaraq, hansısa hadisə üçün GÖZLƏMƏ vəziyyətinə keçənə qədər, ya da, məsələn, ayrılmış funksiyanın tükənməsi səbəbindən prosessordan zorla çıxarılana qədər orada qalır. bu proses CPU vaxt kvantı. Sonuncu halda proses HAZIR vəziyyətinə qayıdır. Proses gözlənilən hadisə baş verdikdən sonra GÖZLƏMƏ vəziyyətindən bu vəziyyətə keçir.

Oxumaq üçün məqalələr:

Proqramlaşdırmanın əsasları. Prosesin idarə edilməsi

prosesin izolyasiyası;
  • proseslərin və iplərin icrasını planlaşdırmaq (ümumiyyətlə, planlaşdırma tapşırıqları haqqında da danışmalıyıq);
  • iplərin göndərilməsi;
  • proseslərarası qarşılıqlı əlaqənin təşkili;
  • proseslərin və iplərin sinxronizasiyası;
  • proseslərin və iplərin dayandırılması və məhv edilməsi.
  • Beş əsas hadisə prosesin yaranmasına səbəb olur:

  • bir proses yaratmaq üçün işləyən prosesin tələbinin yerinə yetirilməsi;
  • istifadəçinin bir proses yaratmaq üçün sorğusu, məsələn, interaktiv giriş zamanı;
  • toplu işə başlamaq;
  • hər hansı bir xidmətin işləməsi üçün zəruri olan prosesin əməliyyat sistemi tərəfindən yaradılması.
  • Tipik olaraq, OS işə salındıqda bir neçə proses yaradılır. Onlardan bəziləri istifadəçilərlə qarşılıqlı əlaqədə olan və yerinə yetirən yüksək prioritet proseslərdir təyin edilmiş iş. Qalan proseslər fon prosesləridir, onlar konkret istifadəçilərlə əlaqələndirilmir, lakin xüsusi funksiyaları yerinə yetirir - məsələn, e-poçt, veb səhifələr, çap, faylların şəbəkə üzərindən ötürülməsi, proqramların vaxtaşırı işə salınması (məsələn, diskin defraqmentasiyası) və s. Fon prosesləri demonlar adlanır.

    Mövcud prosesin tələbi ilə yeni proses yaradıla bilər. Yeni proseslərin yaradılması, yerinə yetirilən tapşırığın bir-biri ilə əlaqəli, lakin müstəqil, qarşılıqlı əlaqədə olan proseslər toplusu kimi ən asanlıqla formalaşdırıla biləcəyi hallarda faydalıdır. İnteraktiv sistemlərdə istifadəçi klaviaturada əmr yazmaqla və ya proqram ikonasını iki dəfə sıxmaqla proqramı işə sala bilər. Hər iki halda yeni proses yaradılır və proqram orada işə salınır. IN toplu emal sistemləri meynfreymlərdə istifadəçilər işi təqdim edirlər (ehtimal ki, uzaqdan girişdən istifadə etməklə) və ƏS yeni proses yaradır və lazımi resurslar boşaldıqda növbədən növbəti işə başlayır.

    Texniki nöqteyi-nəzərdən bütün bu hallarda yeni proses eyni şəkildə formalaşır: cari proses yeni prosesi yaratmaq üçün sistem tələbini yerinə yetirir. Proses və mövzu idarəetmə alt sistemi prosesləri lazımi resurslarla təmin etmək üçün məsuliyyət daşıyır. ƏS yaddaşda xüsusi informasiya strukturlarını saxlayır və bu strukturlarda hər bir prosesə hansı resursların ayrıldığını qeyd edir. O, resursları tək istifadə və ya digər proseslərlə birgə istifadə üçün prosesə təyin edə bilər. Resursların bir hissəsi proses yaradılarkən ona ayrılır, bəziləri isə proses zamanı sorğular əsasında dinamik şəkildə bölüşdürülür. rəhbərlik vaxtı. Resurslar bir prosesə bütün ömrü boyu və ya yalnız müəyyən bir müddət üçün ayrıla bilər. Bu funksiyaları yerinə yetirərkən, prosesə nəzarət alt sistemi cavabdeh olan digər ƏS alt sistemləri ilə qarşılıqlı əlaqədə olur resursların idarə edilməsi yaddaş idarəetmə alt sistemi kimi, giriş/çıxış alt sistemi, fayl sistemi.

    Proseslərə müdaxilə etməmək üçün resurs bölgüsü, və həmçinin bir-birinin kodlarına və məlumatlarına zərər verə bilməz, OS-nin ən vacib vəzifəsi bir prosesi digərindən təcrid etməkdir. Bunun üçün əməliyyat sistemi hər bir prosesi ayrıca virtual ünvan sahəsi ilə təmin edir ki, heç bir proses digər prosesin əmrlərinə və məlumatlarına birbaşa daxil ola bilməyəcək.

    Proseslərin və mövzuların mövcud olduğu OS-də proses bir prosessor vaxtı istisna olmaqla, bütün növ resursları istehlak etmək tələbi kimi qəbul edilir. Bu kritik resurs əməliyyat sistemi tərəfindən digər iş vahidləri arasında paylanır - əmrlərin ardıcıllığını (icra iplərini) təmsil etdiyinə görə öz adını almış iplər. Bir ipin icrasından digərinə keçid nəticəsində həyata keçirilir planlaşdırmagöndərilməsi. Cari cərəyanın nə vaxt kəsilməli olduğunu və işləməsinə icazə verilməli olan ipin təyin edilməsi işinə planlama deyilir. Mövzunun planlaşdırılması prosesdə və mövzu deskriptorlarında saxlanılan məlumatlara əsasən həyata keçirilir. Planlaşdırarkən nəzərə alınır mövzu prioriteti, onların növbədə gözləmə müddəti yığılıb rəhbərlik vaxtı, I/O çıxışının intensivliyi və digər amillər.

    Dispetçerlik planlaşdırma nəticəsində tapılan həllin həyata keçirilməsindən ibarətdir, yəni. prosessorun bir ipdən digərinə keçidində. Göndərmə üç mərhələdə baş verir:

    • cari mövzu kontekstinin saxlanması;
    • planlaşdırma nəticəsində seçilmiş ipin kontekstinin yüklənməsi;
    • icra üçün yeni bir mövzu işə salın.

    Sistem eyni vaxtda bir neçə müstəqil tapşırığı yerinə yetirdikdə əlavə problemlər yaranır. Mövzular sinxron şəkildə yaranıb icra edilsə də, məlumat mübadiləsi zamanı onların qarşılıqlı əlaqəsi tələb oluna bilər. Bir-biri ilə əlaqə yaratmaq üçün proseslər və mövzular geniş imkanlardan istifadə edə bilər: borular (UNIX-də), poçt qutuları (Windows), uzaq prosedur çağırışları, rozetkalar (Windows-da onlar müxtəlif maşınlarda prosesləri birləşdirir). Resursların paylaşılması zamanı baş verən yarış şərtlərinin (birdən çox başlığın eyni faylı dəyişdirməyə çalışdığı), kilidlərin və digər toqquşmaların qarşısını almaq üçün ip sürətlərinin uyğunlaşdırılması da çox vacibdir.

    Sinxronizasiya mövzular proses və ip idarəetmə alt sisteminin ən vacib funksiyalarından biridir. Müasir əməliyyat sistemləri semaforlar, mutekslər, kritik bölgələr və hadisələr daxil olmaqla müxtəlif sinxronizasiya mexanizmlərini təmin edir. Bütün bu mexanizmlər proseslərlə deyil, iplərlə işləyir. Beləliklə, bir ip semaforda bloklandıqda, bu prosesdəki digər mövzular işləməyə davam edə bilər.

    Proses hər dəfə çıxdıqda—aşağıdakı hadisələrdən birinə görə: normal çıxış, xətadan çıxış, ölümcül xəta çıxışı, başqa bir proses tərəfindən öldürülmə—OS sistemdəki izlərini təmizləmək üçün addımlar atır. Prosesin idarə edilməsi alt sistemi, prosesin işlədiyi bütün faylları bağlayır, kodlar, məlumatlar və prosesin sistem məlumat strukturları üçün ayrılmış RAM sahələrini azad edir. Bütün mümkün OS növbələri və dayandırılan proseslə əlaqəsi olan resursların siyahısı düzəldilir.

    Artıq qeyd edildiyi kimi, dəstək olmaq multiproqramlaşdırma, ƏS özü üçün prosessor və digər kompüter resurslarının bölünəcəyi daxili iş vahidlərini tərtib etməlidir. Sual yaranır: bu iş vahidləri arasında əsas fərq nədir, onların istifadəsindən hansı multiproqramlaşdırma effekti əldə etmək olar və bu əməliyyat sisteminin iş vahidləri hansı hallarda yaradılmalıdır?

    Aydındır ki, kompüter sisteminin istənilən əməliyyatı hansısa proqramın icrasından ibarətdir. Buna görə də müəyyən proqram kodu həm proses, həm də icra olunan modul şəklində buraxılan iplə əlaqələndirilir. Ən sadə halda proses tək ipdən ibarətdir və bəzi müasir əməliyyat sistemlərində hələ də bu vəziyyət mövcuddur. Çox proqramlaşdırma belə ƏS-də proses səviyyəsində həyata keçirilir. Qarşılıqlı əlaqə lazım olduqda, proseslər vasitəçi kimi çıxış edərək, onları proseslərarası əlaqə vasitələri - kanallar, poçt paylaşımları, paylaşılan yaddaş bölmələri və s. ilə təmin edən əməliyyat sisteminə müraciət edir.

    Lakin iplik anlayışı olmayan sistemlərdə proses daxilində paralel hesablamaların təşkili zamanı problemlər yaranır. Və belə bir ehtiyac yarana bilər. Məsələ ondadır ki, tək bir proses heç vaxt tək proqram rejimində olduğundan daha sürətli icra edilə bilməz. Bununla belə, tək bir proses daxilində çalışan bir proqram ola bilər daxili paralellik, bu, prinsipcə, onun həllini sürətləndirə bilər. Əgər, məsələn, proqram xarici cihaza girişi təmin edirsə, onda bu əməliyyat zamanı bütün prosesin icrasını bloklamaq yox, proqramın başqa bölməsində hesablamaları davam etdirmək olar.

    Bir interaktiv proqram daxilində birdən çox işi paralel olaraq icra etmək istifadəçinin səmərəliliyini artırır. Beləliklə, mətn redaktoru ilə işləyərkən, yeni mətn yazmağı mətnin əhəmiyyətli bir hissəsini yenidən formatlaşdırmaq, onu yerli və ya uzaq diskdə saxlamaq kimi uzun əməliyyatlarla birləşdirə bilmək arzuolunandır.

    Proqramı yazarkən fasilələr zamanı mənbə kodu fayllarını avtomatik tərtib edə bilən kompilyatorun gələcək versiyasını təsəvvür etmək çətin deyil. Sonra real vaxt rejimində xəbərdarlıqlar və səhv mesajları görünəcək və istifadəçi harada səhv etdiyini dərhal görəcəkdi. Müasir elektron cədvəllər istifadəçi hər şeyi dəyişdirən kimi məlumatları arxa planda yenidən hesablayın. Söz prosessorları mətni səhifələrə bölür, orfoqrafik yazısını yoxlayır və qrammatik səhvlər, fonda yazmaq, bir neçə dəqiqədən bir mətni saxlamaq və s. Bütün bu hallarda iplər hesablamaları paralelləşdirmə vasitəsi kimi istifadə olunur.

    Bu tapşırıqlar bir proses daxilində paralelliyi həyata keçirən dispetçer proqramı yazan bir proqramçıya həvalə edilə bilər. Bununla belə, bu, çox çətindir və proqramın özü çox çaşqın olacaq və səhvləri aradan qaldırmaq çətin olacaq.

    Başqa bir həll, paralellərin hər biri üçün bir tətbiq üçün bir neçə proses yaratmaqdır

    Kompüterin fəaliyyətinə birbaşa təsir edən hər hansı müasir multiproqramlı ƏS-nin əsas alt sistemlərindən biri proses və mövzu idarəetmə alt sistemidir. Bu alt sistemin əsas funksiyaları:

      proseslərin və mövzuların yaradılması;

      prosesləri və ipləri lazımi resurslarla təmin etmək;

      prosesin izolyasiyası;

      proseslərin və iplərin icrasını planlaşdırmaq (ümumiyyətlə, planlaşdırma tapşırıqları haqqında da danışmalıyıq);

      iplərin göndərilməsi;

      proseslərarası rabitənin təşkili;

      proseslərin və iplərin sinxronizasiyası;

      proseslərin və iplərin dayandırılması və məhv edilməsi.

    1. Beş əsas hadisə prosesin yaranmasına gətirib çıxarır:

      bir proses yaratmaq üçün işləyən prosesin tələbinin yerinə yetirilməsi;

      istifadəçinin bir proses yaratmaq üçün sorğusu, məsələn, interaktiv giriş zamanı;

      toplu işə başlamaq;

      hər hansı bir xidmətin işləməsi üçün zəruri olan prosesin əməliyyat sistemi tərəfindən yaradılması.

    Tipik olaraq, OS işə salındıqda bir neçə proses yaradılır. Onlardan bəziləri istifadəçilərlə qarşılıqlı əlaqədə olan və təyin olunmuş işi yerinə yetirən yüksək prioritet proseslərdir. Qalan proseslər fon prosesləridir, onlar xüsusi istifadəçilərlə əlaqələndirilmir, lakin xüsusi funksiyaları yerinə yetirirlər - məsələn, e-poçt, veb səhifələr, çıxış möhür, fayl ötürülməsi Byşəbəkə, proqramların vaxtaşırı işə salınması (məsələn, diskin defraqmentasiyası) və s. Fon prosesləri demonlar adlanır.

    Yeni bir proses yaradıla bilər By cari prosesin tələbi. Yeni proseslərin yaradılması, yerinə yetirilən tapşırığın bir-biri ilə əlaqəli, lakin müstəqil, qarşılıqlı əlaqədə olan proseslər toplusu kimi ən asanlıqla formalaşdırıla biləcəyi hallarda faydalıdır. İnteraktiv sistemlərdə istifadəçi klaviaturada əmr yazmaqla və ya proqram piktoqramını iki dəfə sıxmaqla proqramı işə sala bilər. Hər iki halda yeni proses yaradılır və işə salmaq proqramlar var. IN toplu emal sistemləri meynfreymlərdə istifadəçilər işi təqdim edirlər (ehtimal ki, uzaqdan girişdən istifadə etməklə) və ƏS yeni proses yaradır və lazımi resurslar boşaldıqda növbədən növbəti işə başlayır.

    2. Texniki nöqteyi-nəzərdən bütün bu hallarda eyni şəkildə yeni proses formalaşır: cari proses sistemi icra edir. xahiş yeni bir proses yaratmaq. Proses və mövzu idarəetmə alt sistemi prosesləri lazımi resurslarla təmin etmək üçün məsuliyyət daşıyır. ƏS yaddaşda xüsusi informasiya strukturlarını saxlayır və bu strukturlarda hər bir prosesə hansı resursların ayrıldığını qeyd edir. O, resursları tək istifadə və ya digər proseslərlə birgə istifadə üçün prosesə təyin edə bilər. Resursların bir hissəsi proses yaradılarkən ona ayrılır, bəziləri isə dinamik şəkildə bölünür By sorğular rəhbərlik vaxtı. Resurslar bir prosesə bütün ömrü boyu və ya yalnız müəyyən bir müddət üçün ayrıla bilər. Bu funksiyaları yerinə yetirərkən, prosesə nəzarət alt sistemi cavabdeh olan digər ƏS alt sistemləri ilə qarşılıqlı əlaqədə olur resursların idarə edilməsi yaddaş idarəetmə alt sistemi kimi, giriş/çıxış alt sistemi, fayl sistemi.

    3. Proseslərə müdaxilə etməmək üçün resurs bölgüsü, həmçinin bir-birinin kodlarına və məlumatlarına zərər verə bilməz, ƏS-nin ən vacib vəzifəsi bir prosesi digərindən təcrid etməkdir. Bunun üçün əməliyyat sistemi hər bir prosesi ayrıca virtual ünvan sahəsi ilə təmin edir ki, heç bir proses digər prosesin əmrlərinə və məlumatlarına birbaşa daxil ola bilməyəcək.

    4. Proseslərin və mövzuların mövcud olduğu OS-də proses bir prosessor vaxtı istisna olmaqla, bütün növ resursları istehlak etmək tələbi kimi qəbul edilir. Bu ən vacib resursəməliyyat sistemi tərəfindən digər iş vahidləri arasında paylanır - əmrlərin ardıcıllığını (icra iplərini) təmsil etdiyinə görə öz adını almış iplər. Bir ipin icrasından digərinə keçid nəticəsində həyata keçirilirplanlaşdırma göndərilməsi . İş By Cari cərəyanın kəsilmə anının və işləməsinə icazə verilməli olan ipin təyin edilməsi planlama adlanır. Mövzunun planlaşdırılması prosesdə və mövzu deskriptorlarında saxlanılan məlumatlara əsasən həyata keçirilir. Planlaşdırarkən nəzərə alınır mövzu prioriteti, onların növbədə gözləmə müddəti yığılıb rəhbərlik vaxtı, I/O çıxışının intensivliyi və digər amillər.

    5. Dispetçerlik planlaşdırma nəticəsində tapılan həllin həyata keçirilməsindən ibarətdir, yəni. prosessorun bir ipdən digərinə keçidində. Göndərmə üç mərhələdə baş verir:

      cari mövzu kontekstinin saxlanması;

      icra üçün yeni bir mövzu işə salın.

    6. Sistem eyni vaxtda bir neçə müstəqil tapşırığı yerinə yetirdikdə əlavə problemlər yaranır. Mövzular sinxron şəkildə yaranıb yerinə yetirilsə də, onların qarşılıqlı əlaqəsi tələb oluna bilər məsələn, məlumat mübadiləsi zamanı. Bir-biri ilə əlaqə yaratmaq üçün proseslər və mövzular geniş imkanlardan istifadə edə bilər: kanallar (in UNIX), poçt qutuları ( Windows), uzaqdan prosedur çağırışı, rozetkalar (in Windows müxtəlif maşınlarda prosesləri birləşdirin). İp sürətlərinin uyğunluğu yarış şəraitinin qarşısını almaq üçün də çox vacibdir (burada birdən çox ip eyni dəyişməyə çalışır fayl), resursların paylaşıldığı zaman baş verən çıxılmaz vəziyyətlər və digər toqquşmalar.

    7. Sinxronizasiya mövzular proses və ip idarəetmə alt sisteminin ən vacib funksiyalarından biridir. Müasir əməliyyat sistemləri semaforlar, mutekslər, kritik bölgələr və hadisələr daxil olmaqla müxtəlif sinxronizasiya mexanizmlərini təmin edir. Bunlar hamısı mexanizmləri proseslərlə deyil, iplərlə işləyin. Ona görə nə vaxt axın semafordakı bloklar, bu prosesdəki digər mövzular işləməyə davam edə bilər.

    8. Hər dəfə proses başa çatdıqda, – və bu, aşağıdakı hadisələrdən birinə görə baş verir: normal çıxış, çıxış By səhv, çıxış Byölümcül səhv, başqa bir proses tərəfindən məhv - OS sistemdə mövcudluğunun "izlərini təmizləmək" üçün addımlar atır. Prosesin idarə edilməsi alt sistemi, prosesin işlədiyi bütün faylları bağlayır, kodlar, məlumatlar və prosesin sistem məlumat strukturları üçün ayrılmış RAM sahələrini azad edir. İfa etdi korreksiya hər növ OS növbələri və siyahı dayandırılan prosesə keçidləri ehtiva edən resurslar.

    Müstəqil kompüterin əməliyyat sisteminin funksiyaları adətən ya ƏS-nin idarə etdiyi yerli resursların növlərinə görə, ya da bütün resurslara aid olan xüsusi tapşırıqlara görə qruplaşdırılır. Bəzən belə funksiya qrupları alt sistemlər adlanır. Ən vacib resurs idarəetmə alt sistemləri proses, yaddaş, fayl və xarici cihazların idarə edilməsi alt sistemləridir və bütün resurslar üçün ümumi olan alt sistemlər istifadəçi interfeysi, məlumat təhlükəsizliyi və idarəetmə alt sistemləridir. Kompüterin işləməsinə bilavasitə təsir edən əməliyyat sisteminin ən mühüm hissəsi prosesə nəzarət alt sistemidir. Hər bir yeni yaradılmış proses üçün ƏS, prosesin kompüter sisteminin resurslarına olan ehtiyacları, habelə ona faktiki olaraq ayrılmış resurslar haqqında məlumatları ehtiva edən sistem informasiya strukturlarını yaradır. Beləliklə, bir proses həm də sistem resurslarını istehlak etmək üçün bəzi tətbiqlər kimi müəyyən edilə bilər. Çox proqramlı əməliyyat sistemində eyni vaxtda bir neçə proses mövcud ola bilər. Bəzi proseslər istifadəçilərin və onların tətbiqlərinin təşəbbüsü ilə yaradılır; belə proseslər adətən istifadəçi prosesləri adlanır. Sistem prosesləri adlanan digər proseslər öz funksiyalarını yerinə yetirmək üçün əməliyyat sisteminin özü tərəfindən işə salınır. Əməliyyat sisteminin mühüm vəzifəsi verilmiş prosesə ayrılan resursları digər proseslərdən qorumaqdır. Ən diqqətlə qorunan proses resurslarından biri proses kodunun və məlumatların saxlandığı RAM sahələridir. Əməliyyat sistemi tərəfindən prosesə ayrılmış bütün RAM sahələrinin məcmusuna onun ünvan sahəsi deyilir. Hər bir prosesin OS tərəfindən təmin edilən ünvan fəzalarının qorunmasına istinad edərək, öz ünvan məkanında işlədiyi deyilir. Fayllar, xarici qurğular və s. kimi digər resurs növləri də qorunur. Əməliyyat sistemi təkcə bir proses üçün ayrılmış resursları qoruya bilməz, həm də onların paylaşılmasını təşkil edə bilər, məsələn, müəyyən bir sahəyə giriş imkanı verir. \u200byaddaş bir neçə proseslə. Prosesin müddəti ərzində onun icrası dəfələrlə kəsilə və davam etdirilə bilər. Prosesin icrasını bərpa etmək üçün onun əməliyyat mühitinin vəziyyətini bərpa etmək lazımdır. Əməliyyat mühitinin vəziyyəti registrlərin və proqram sayğacının vəziyyəti, prosessorun iş rejimi, faylları açmaq üçün göstəricilər, tamamlanmamış I/O əməliyyatları haqqında məlumat, verilmiş proses tərəfindən yerinə yetirilən sistem çağırışlarının səhv kodları və s. . d) Bu məlumat tərəqqi konteksti adlanır. Deyirlər ki, proses dəyişdikdə kontekst keçidi baş verir. Beləliklə, proseslərin idarə edilməsi alt sistemi proseslərin icrasını planlaşdırır, yəni prosessor vaxtını sistemdə eyni vaxtda mövcud olan bir neçə proses arasında paylayır, prosesləri yaradır və məhv edir, prosesləri lazımi sistem resursları ilə təmin edir, proseslərin sinxronizasiyasını təmin edir, həmçinin qarşılıqlı əlaqəni təmin edir. proseslər arasında.

    Dostlarınızla paylaşın və ya özünüz üçün qənaət edin:

    Yüklənir...