Vēl viens svarīgs punkts, kas atšķir procesu un pavedienu, ir tas, ka procesi ir izolēti viens ar otru, kamēr pavedieni dalās atmiņā vai resursos.
Salīdzinājuma diagramma
Salīdzināšanas pamats | Process | Vītne |
---|---|---|
Pamata | Programma izpildē. | Viegls process vai tā daļa. |
Atmiņas koplietošana | Pilnīgi izolēts un neatbalsta atmiņu. | Koplieto atmiņu savā starpā. |
Resursu patēriņš | Vairāk | Mazāk |
Efektivitāte | Mazāk efektīvs salīdzinājumā ar procesu komunikācijas kontekstā. | Uzlabo efektivitāti komunikācijas kontekstā. |
Radīšanai vajadzīgais laiks | Vairāk | Mazāk |
Konteksta pārslēgšanas laiks | Aizņem vairāk laika. | Patērē mazāk laika. |
Neskaidra izbeigšana | Rezultāti procesa zaudēšanā. | Vītni var atgūt. |
Izbeigšanai vajadzīgais laiks | Vairāk | Mazāk |
Procesa definīcija
Šis process ir programmas izpilde un veic attiecīgās programmā norādītās darbības, vai tā ir izpildes vienība, kurā darbojas programma. Operētājsistēma izveido, plāno un pārtrauc procesora procesus. Citi procesi, ko rada galvenais process, ir pazīstami kā bērnu process.
Procesa darbības tiek kontrolētas ar PCB palīdzību (procesa kontroles bloks), var uzskatīt par procesa smadzenēm, kas satur visu būtisko informāciju par procesu, piemēram, procesa ID, prioritāti, stāvokli, PWS un satura CPU reģistru. .
PCB ir arī uz kodolu balstīta datu struktūra, kas izmanto trīs veidu funkcijas, kas ir plānošana, nosūtīšana un konteksta saglabāšana.
- Plānošana - tā ir metode, pēc kuras vienkāršo vārdu atlases procesa secība izvēlas procesu, kas CPU ir jāizpilda vispirms.
- Nosūtīšana - tiek izveidots process, kurā process tiks izpildīts.
- Konteksta saglabāšana - šī funkcija saglabā informāciju par procesu, kad tā tiek atsākta vai bloķēta.
Procesa dzīves ciklā ir iekļautas dažas valstis, piemēram, gatava, darbojoša, bloķēta un pārtraukta. Procesa valstis tiek izmantotas procesa aktivitātes izsekošanai.
No programmētāja viedokļa, procesi ir līdzeklis programmas vienlaicīgai izpildei. Vienlaicīgas programmas galvenais process rada bērnu procesu. Galvenajam procesam un bērna procesam ir jāsadarbojas ar katru, lai sasniegtu kopīgu mērķi.
Procesu starplīniju operācijas uzlabo skaitļošanas ātrumu, kad i / o darbība vienā procesā pārklājas ar skaitļošanas aktivitāti citā procesā.
Procesa īpašības:
- Katra procesa izveide ietver sistēmas izsaukumus katram procesam atsevišķi.
- Process ir izolēta izpildes vienība, un tā nespēj koplietot datus un informāciju.
- Procesi izmanto IPC (Inter-process communication) mehānismu komunikācijai, kas ievērojami palielina sistēmas zvanu skaitu.
- Procesu vadība patērē vairāk sistēmas zvanu.
- Katram procesam ir sava kaudze un kaudze, instrukcija, dati un atmiņas karte.
Vītnes definīcija
Vītne ir programmas izpilde, kas uzdevuma izpildei izmanto procesu resursus. Visi pavedieni vienā programmā ir loģiski ietverti procesā. Kodols katram pavedienam piešķir steku un pavedienu kontroles bloku (TCB). Operētājsistēma saglabā tikai kaudzes rādītāju un CPU stāvokli laikā, kad pārslēdzat starp viena un tā paša procesa pavedieniem.
Vītnes tiek īstenotas trīs dažādos veidos; tie ir kodola līmeņa pavedieni, lietotāja līmeņa pavedieni, hibrīdie diegi. Vītnēm var būt trīs valstis, kas ir gatavas un bloķētas; tas ietver tikai skaitļošanas stāvokli, nevis resursu piešķiršanu un sakaru stāvokli, kas samazina pārslēgšanās pieskaitāmās izmaksas. Tas uzlabo vienlaicīgumu (paralēli), tāpēc arī ātrums palielinās.
Multithreading arī nāk ar demerits, Vairāki pavedieni nerada sarežģītību, bet mijiedarbība starp tiem notiek.
Vītnei jābūt prioritārai īpašībai, ja ir vairāki pavedieni ir aktīvi. Laiku, kas tiek izpildīts, lai izpildītu citus aktīvos pavedienus tajā pašā procesā, nosaka pavediena prioritāte.
Tēmas īpašības:
- Tikai viens sistēmas zvans var radīt vairāk nekā vienu pavedienu (viegls process).
- Pavedieni koplieto datus un informāciju.
- Pavedieni dalās instrukcijās, globālajos un kaudzes reģionos, taču tam ir savs individuālais kaudze un reģistri.
- Vītnes pārvaldība patērē ne mazāk vai mazāk sistēmas zvanus, jo komunikāciju starp pavedieniem var sasniegt, izmantojot koplietojamo atmiņu.
- Procesa izolācijas īpašums palielina pieskaitāmās izmaksas resursu patēriņa ziņā.
Galvenās atšķirības starp procesu un pavedienu
- Visi programmas pavedieni ir loģiski ietverti procesā.
- Process ir smags, bet pavediens ir viegls.
- Programma ir izolēta izpildes vienība, bet vītne nav izolēta un koplieto atmiņu.
- Vītnei nevar būt individuāla eksistence; tas ir pievienots procesam. No otras puses, process var pastāvēt atsevišķi.
- Laikā, kad beidzās pavediens, ar to saistīto kaudzīti varēja atgūt, jo katram pavedienam ir sava kaudze. Turpretī, ja process nomirst, visi pavedieni mirst, ieskaitot procesu.
Secinājums
Procesi tiek izmantoti, lai panāktu programmu izpildi vienlaicīgi un secīgi. Lai gan pavediens ir programmas izpildes vienība, kas izmanto procesa vidi, ja daudzi pavedieni izmanto to pašu procesu vidi, viņiem ir nepieciešams dalīties ar savu kodu, datiem un resursiem. Operētājsistēma šo faktu izmanto, lai samazinātu pieskaitāmo un uzlabotu aprēķinu.