Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Organizarea funcționării unui calculator cu o arhitectură de bază

Calculatorul este un set de dispozitive executate pe circuite integrate mari, fiecare având propriul scop funcțional. Un set de circuite integrate, din care compune calculatorul, se numește set de microprocesoare. Seturile de microprocesoare includ: un cronometru de sistem, un microprocesor (MP), coprocesoare, un controler de întrerupere, un controler de acces direct al memoriei, controlori de dispozitiv de intrare / ieșire și alții.







Toate dispozitivele computerizate sunt împărțite în central și periferic. Dispozitivele centrale sunt complet electronice, dispozitivele periferice pot fi electronice sau electromecanice cu control electronic.

Dispozitivele centrale ale computerului includ: procesorul central, memoria principală și un număr de noduri suplimentare care execută funcțiile de serviciu: controlerul de întrerupere, temporizatorul și controlerul de acces direct al memoriei (DMA).

Dispozitivele periferice sunt împărțite în două tipuri: de memorie externă (LDR, FDD, LMW) și dispozitive de intrare-ieșire (ICC): tastatură, afișaj, imprimantă, mouse-ul, adaptor de canale de comunicare (COP), și altele.

În cazuri mai complexe, după primirea unui semnal că dispozitivul a răspuns, înainte ca comanda să fie trimisă, CPU-ul solicită dispozitivului starea sa. Starea curentă a dispozitivului este codificată într-un octet de stare, pe care dispozitivul respondent îl trimite procesorului prin intermediul busului de sistem SHD. Dacă dispozitivul este pornit și gata de plecare, octetul stării este zero. Prezența unităților în ea indică o situație anormală, pe care CP încearcă să o analizeze și, dacă este necesar, notifică operatorul situației.

Interacțiunea MP cu dispozitive externe asigură o secvență logică a acțiunilor asociate cu căutarea unui dispozitiv, determinarea stării sale tehnice, schimbarea comenzilor și a informațiilor. Această secvență logică de acțiuni, împreună cu dispozitivele care o implementează, a fost denumită interfața intrări-ieșiri.

Pentru dispozitive diferite, pot fi utilizate diferite secvențe logice ale acțiunilor, astfel încât pot fi utilizate mai multe interfețe I / O în același computer. Dacă acestea pot fi reduse la una, universală, atunci această interfață se numește standard. În IBM PC există două interfețe standard pentru conectarea procesorului cu dispozitive externe: paralel (tip Centronics) și serial (tip RS-232).

Interfețele sunt în mod constant îmbunătățite, astfel încât, odată cu apariția noilor computere, a noilor dispozitive externe și chiar a noilor programe software, apar și noi interfețe. Astfel, în software-ul dezvoltat de companiile de vârf, noua interfață Plug and Play este utilizată din ce în ce mai mult, care este proiectată pentru a facilita configurarea sistemului de la conectarea dispozitivelor noi la mașină. Această interfață vă permite să conectați cu un cablu, noul dispozitiv și apoi porniți software-ul de calculator ei determină automat compoziția dispozitivelor conectate, tipurile lor în aparatul ajustează pentru a lucra cu ei fără intervenția operatorului de sistem.

Când manipulați CPU către dispozitivul extern, continuarea programului principal al procesorului este posibilă numai după finalizarea operațiunii IO, CPU, care rulează dispozitivul extern intră în starea de așteptare și este în ea atâta timp cât dispozitivul extern nu îl informează cu privire la încetarea de schimb date. Acest lucru are ca rezultat perioada de nefuncționare a majorității dispozitivelor computerizate, deoarece numai una dintre ele poate funcționa în orice moment. Acest mod de operare a fost numit program unic - în orice moment toate dispozitivele sunt în stare de așteptare și un singur dispozitiv efectuează programul principal (și numai).

Pentru a elimina astfel de nefuncționări și pentru a îmbunătăți eficiența echipamentelor, dispozitivele externe sunt realizate în mod autonom. După ce au primit de la CP informațiile necesare, își organizează în mod independent activitatea de schimb de date. Procesorul, prin rularea dispozitivului extern, încearcă să continue executarea programului. Dacă este necesar (dacă se găsesc comenzile corespunzătoare), acesta poate porni alte câteva dispozitive (deoarece dispozitivele externe funcționează mult mai lent decât procesorul). Dacă trebuie să intre în modul standby, atunci, profitând de faptul că pot exista mai multe programe în același timp în OP, CPU continuă să execute următorul program. Aceasta creează o situație în care, în același timp, diferite dispozitive computerizate efectuează fie programe diferite, fie părți diferite ale aceluiași program, acest mod de operare al calculatorului este numit multiprogramare.

Organizarea lucrărilor unui computer în executarea unei sarcini a unui utilizator

Organizarea intrării, transformării și afișării rezultatelor face parte din software-ul sistemului. Acestea sunt procese complexe, adesea făcute "transparente", adică invizibil pentru utilizator. Una dintre ele este implementarea sarcinii utilizatorului: utilizatorul profesionist (programator) scrie sarcina calculatorului sub forma unui program într-un limbaj algoritmic. Sarcina scrisă (program) este un modul sursă, urmat de declarații de control care indică sistemul de operare al calculatorului, limba în care este scris programul și ce ar trebui să facă cu acesta. În cazul în care programul este scris în limbajul de programare, ofertele de control - în limba (în sistemul de operare 360/370 calculator UE și IBM, limba se numește Iov de Control Langiage, în MS DOS IBM PC - este limba de comenzi DOS, uneori se face sub forma unui liliac - fișier).







Modulul sursă trebuie tradus în limba internă a mașinii înainte de execuție. Această operație se realizează printr-un program special-translator (figura 4.1). Traducătorii sunt executați sub forma a două versiuni: interpreți și compilatori. Traducătorul traduce imediat programul de mașină primit în limbajul mașinii fiecărui operator al limbajului algoritmic. Compilatorul transmite în întregime întregul program prezentat sub forma unui modul inițial (MI), în limba mașinii. Programul de mașină rezultat este un modul de obiect (OM). Rezultatul compilatorului poate fi scris în biblioteca modulelor de obiecte (BOM) sau transferat în alte programe pentru prelucrare ulterioară, deoarece programul de mașină recepționat nu este pregătit pentru execuție din două motive. În primul rând, va păstra referințe externe nerezolvate (adică accesul la programe care nu sunt cuprinse în modulul sursă, dar sunt necesare pentru programul principal, de exemplu, la programele standard de algoritm

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Fig. 4.1. Procesarea sarcinilor de către sistemul de operare

Reprezentarea programului de mașină sub formă de module sursă, obiect și de încărcare permite realizarea celor mai eficiente complexe de programe. De exemplu, în cazul în care același program are nevoie de o mulțime de timp pentru a face calcule, este ineficient să-și petreacă timp de fiecare dată pentru a difuza și program de editare - ar trebui să fie făcută într-un modul de încărcare și stocate în biblioteca corespunzătoare. La accesarea unui astfel de program, programul de probă va fi apelat imediat pentru a încărca modulul corespunzător (iar stadiile de compilare și de editare ale legăturilor vor fi omise) - durata de execuție a programului va fi redusă semnificativ.

Algoritmii pentru distribuția, utilizarea, eliberarea resurselor și furnizarea accesului la acestea sunt destinate organizării celei mai eficiente a întregului complex de dispozitive informatice. Să le considerăm pe exemplul gestionării memoriei principale.

Alocarea resurselor poate fi efectuată chiar de către programator (mai ales dacă lucrează într-o limbă apropiată limbajului mașinii), dar poate fi produsă și de sistemul de operare.

Dacă resursele sunt alocate înainte ca programul să fie executat, un astfel de proces se numește mișcare statică, ca urmare a faptului că programul este "atașat" la un anumit loc din memoria calculatorului. Dacă resursele sunt alocate în timpul executării programului, acest lucru se numește mișcare dinamică, în acest caz programul nu este legat de o anumită locație în memoria reală. Modul dinamic poate fi implementat numai cu ajutorul sistemului de operare.

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

În acest caz, programatorul (sau sistemul de operare) este forțat să rezolve problema, cum să organizeze executarea programului. Metode de rezolvare a problemei, există mai multe: Puteți crea o structură de acoperire (de exemplu, programul de pauză în afară, a cauzat în PO după cum este necesar), pentru a face reentrant modulele de program (de exemplu, modulul permite funcționarea simultană a mai multor hit-uri din diferite părți ale programului sau diverse programe), etc.

Fig. 4.4. Fragmentarea memoriei reale

Când lucrați în modul multiprogram, poate exista o situație în care zonele de memorie neocupate se formează între programe. În Fig.4.4

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Figura 4.5. Plasarea programului în partea liberă a PO

suma totală a memoriei neocupate, care este de 50 KB, este suficientă pentru a încărca și programul D, care este în așteptare. Dar nu poate fi încărcat deoarece spațiile de memorie gratuite nu sunt învecinate. Această stare se numește fragmentare a memoriei reale. Este tipic pentru sistemele cu deplasare statică.

În sistemele cu program de mișcare dinamică mută încărcătorul plasează programul în memoria liberă (figura 4.5), și permite utilizarea unor zone neconsecutive.

În acest caz, există mai multe oportunități pentru organizarea muncii multiprogram și, în consecință, pentru utilizarea mai eficientă a resurselor temporare de computer.

Cu cantități mari de programe implementate, există unele contradicții în organizarea unui mod de operare cu mai multe programe, dificultatea alocării dinamice a resurselor.

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Fig. 4.6. Fragmentarea PO. Încărcarea unui program segmentat

Fiecare segment al programului trebuie să aibă un nume. Forma numelui segmentului poate fi oricare, de exemplu numărul (figura 4.7 a, b).

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1


Figura 4.7. Formatul denumirii segmentului: a - când sunt alocate 8 cifre; b - cu alocarea a 16 cifre

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Un tabel de segmente conține fiecare program executabil.

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

• RNTS indică începutul tabelului de segmente al programului D-68000;

Utilizarea programelor de segmentare poate reduce fragmentarea memoriei principale, dar nu a eliminat complet fragmente -ostayutsya fragmentare a căror lungime este mai scurtă decât lungimea segmentului de program.

Dacă segmentele sunt împărțite în una sau mai multe unități numite pagini care sunt de dimensiune fixă, deoarece dimensiunea paginii este suficient de mică, în comparație cu dimensiunea obișnuită a segmentelor, fragmentele neutilizate ale PO considerabil reduse în volum - va fi așa-numita fragmentare în interiorul paginilor. În consecință, pierderile rămân în continuare, însă ele vor fi semnificativ mai mici.

Organizarea funcționării computerelor cu arhitectură la nivelul coloanei vertebrale 1

Formarea structurii segment-pagină se realizează automat utilizând sistemul de operare.

DTA va fi efectuată după cum urmează:







Articole similare

Trimiteți-le prietenilor: