Понятието "процес" и "поток"
В подкрепа на многопроцесорна, операционната система трябва да определи и да осигури за себе си са вътрешната изработки на уреда, които ще бъдат поделени между процесора и други компютърни ресурси. В момента два вида работни позиции, идентифицирани в повечето операционни системи. По-голямата единица работа, която носи името на процеса или задача изисква за изпълнението й няколко по-малки работи, за да покаже, че терминът "поток" или "нишка".
Какво тогава са основните разлики по отношение на "процес" и "поток"?
Всяка работа на компютърната система е да се изпълни програмата. Следователно, с процеса, и се свързва с притока на специфичен код, който за тази цел трябва да бъде под формата на изпълним модул. Това, че този код може да бъде изпълнена, тя трябва да бъде зареден в паметта, е възможно да се разпределят малко място на диска за съхранение на данни, за да се осигури достъп до входни и изходни устройства. В хода на програмата може да се наложи достъп до информационни ресурси, като например файлове, също така е невъзможно без прилагането на програмата на .ey време за обработка, т.е. времето, през което изпълнява процесора на програмен код.
На операционни системи, в които има процеси и нишки, процесът се вижда от операционната система като заявление за потреблението на всички видове ресурси, с изключение на една - vremeni.Etot CPU ресурс се разпределя от операционната система между други единици работа -CURRENT, който е получил името си, поради факта, те представляват последователности (нишки на изпълнение) инструкция.
Многопроцесорна прекъсване задвижване цел и вида на капани
Прекъсвания са основната движеща сила зад всяка операционна sistemyschsh. Изключете системата за прекъсване - и "живот" в операционната система, за да се спре веднага. Периодични процеси причина за промяна таймер прекъсване в многозадачни операционни системи и да прекъсне входни устройства - контрол на изхода на потоците от данни, която компютърна система комуникира с външния свят.
Колко вярно е отбелязано: "Прекъсванията са наименувани много добре, защото те прекъсват нормалната работа на системата." С други думи, за прекъсване система поставя на процесора да изпълнява потока от команди, различни от тази, която е извършена до този момент и след това се върнете към оригиналния kodu.Iz можем да заключим, че механизмът за прекъсване е много подобен на механизма на процедурите. Това наистина е така, въпреки че между тези механизми е важна разлика. Преминаване прекъсване различава от включване на команда безусловно или условно клон, предоставена от програмиста в потока от команди за кандидатстване. Преходът се случва по команда на предварително определени места в програмата от програмист, в зависимост от суровите данни, обработвани от програмата. Прекъсване случва в произволна точка в потока на командите на програмата, която програмист не може да се случи prognozirovat.Preryvanie или в зависимост от външната към процеса на изпълнение на събитието програма, или при възникване на спешна неочаквани по време на изпълнение на програмата. Сходството на прекъсването с процедурите, е, че и в двата случая, определен рутинно извършва за лечение на особено положение, а след това продължава с главния клон на програмата.
В зависимост от източника на прекъсване е разделена на три основни групи:
Външни прекъсва могат да възникнат в резултат на действията на потребителя или оператора на терминала, или - в резултат от получаването на сигнала от хардуер устройството - входните сигнали за експлоатация завършване - на изхода от контролерите на външни устройства в компютъра, като например принтер или твърд диск, или сигналите от сензор контролира от компютър техническа obektov.Vneshnie наричан също хардуерно прекъсване, което отразява факта, че прекъсването се дължи на оборудване за доставка (например , Принтер контролер) на електрически сигнал, който се предава (евентуално преминаване през други компютърни единици, като например контролер на прекъсване) в специален вход за прекъсване на процесора. Това прекъсване клас е асинхронен по отношение на потока от инструкции, изпълнявани програма. Апаратура процесор работи така, че асинхронни прекъсва възникват между изпълнението на два съседни инструкции, където след система за прекъсване на обработката продължава изпълнението на този процес, като се започне с следващата инструкция.
Ако изпълните софтуер прекъсване процесор изпълнява същата последователност, както в случай на външни или вътрешни прекъсване, но това се случва по предсказуем точка в програмата - когато програмистът постави тази команда.
Почти всички съвременни процесори имат да командват прекъсване инструкция софтуерната система. Една от причините за появата на софтуер прекъсване инструкция в командите система процесор е, че тяхната употреба често води до по-компактни код програми за разлика от помощта на стандартни команди на процедурите. Това е така, защото разработчиците процесорните обикновено запазени за управление на прекъсвания на малък брой възможни подпрограми, така че дължината на операнда в екип софтуер прекъсват, който показва желаната подпрограмата е по-малко от екипа отидете на подпрограмата. Софтуер прекъсвания са различни от предишните две класи по това, че по своята същност не са "истински" прекъсва. Софтуер прекъсване се случва, когато процесор специфично указание за който симулира прекъсване, т.е. на прехода към нова поредица от команди.
Прекъсвания приписвани на приоритета, с които те се класират по реда на важност и спешност. За да прекъсва, които имат същия приоритет стойност, те казват, че принадлежат на едно и също ниво на прекъсване приоритет.
Прекъсвания обикновено се обработват от модулите на операционната система, като действия, извършени от прекъсването, се отнасят до споделеното управление на компютърната система - принтер, дисково устройство, таймер, процесор и т.н. Процедури предизвикаха прекъсване обикновено се нарича прекъсвай обработват, или прекъсват рутинна услуга (Прекъсване служба рутинна, ISR). Хардуер прекъсва се обработват шофьори, съответстващи на външни устройства, изключения - оперативни процедури, обслужващи системата за разговори. В допълнение към тези модули, операционната система може да бъде т.нар прекъсват контролер, който координира работата на отделните куките.