Ce sunt procesele de sistem? procesele sistemului Windows

Procesele de sistem

Procesele de sistem fac parte din nucleu și sunt întotdeauna localizate în RAM. Procesele de sistem nu au programe corespunzătoare sub formă de fișiere executabile și sunt lansate într-un mod special atunci când nucleul de sistem este inițializat. Instrucțiunile de execuție și datele acestor procese se află în nucleul sistemului, astfel încât acestea pot apela funcții și accesa date pe care alte procese nu le pot accesa. Procesele de sistem sunt: ​​shed (managerul de schimburi), vhand (managerul de înlocuire a paginii), bdfflush (managerul cache-ului tampon) și kmadaemon (managerul memoriei kernel). Procesele de sistem includ cerneala, care este precursorul tuturor celorlalte procese din UNIX. Deși init nu face parte din kernel și este lansat din fișierul executabil ( /etc/init), activitatea sa este vitală pentru funcționarea întregului sistem în ansamblu.

Din cartea Programe și sisteme gratuite aplicate la școală autor Otstavnov Maxim

1.6 Procese Alături de fișier, conceptul de proces este cel mai important în conceptul de sisteme de operare deschise.Un proces este o unitate de cod executabil în memorie cu un identificator unic.Prin lansarea unei comenzi simple din shell, operatorul instruiește sistemul de operare să ruleze

Din cartea Free Software and Systems at School autor Otstavnov Maxim

1.6 Procese Alături de fișier, conceptul de proces este cel mai important în conceptul de sisteme de operare deschise.Un proces este o unitate de cod executabil35 în memorie cu un identificator unic.Prin lansarea unei comenzi simple din shell, operatorul instruiește sistemul de operare să ruleze

Din cartea Arhitectura sistemului de operare UNIX autorul Bach Maurice J

2.2.2 Procese

Din cartea EMBEDDED SYSTEMS SOFTWARE. Cerințe generale pentru dezvoltare și documentare autor Gosstandart al Rusiei

12.3.3.4 Procese simulate Când nucleul efectuează o comutare de context pe un sistem uniprocesor, acesta operează în contextul procesului care dă control (vezi Capitolul 6). Dacă nu există procese pe sistem gata de rulare, nucleul intră într-o stare inactivă în context

Din cartea Computerra Magazine Nr. 710 autor Revista Computerra

Din cartea Encyclopedia of Linux Kernel Module Developer de Pomerantz Ori

De pe serverul de carte DIY Linux autor Kolisnichenko Denis Nikolaevici

Din cartea AS/400 Basics de Soltis Frank

5 Procese 5.1. Apelurile de sistem fork() și exec() Un proces în Linux (ca și în UNIX) este un program care rulează într-un spațiu de adrese virtual separat. Când un utilizator se conectează în sistem, este creat automat un proces pentru el în care este executat un shell

Din cartea QNX/UNIX [Anatomy of Concurrency] autor Tsilurik Oleg Ivanovici

Procese în MI Un proces în MI este un obiect sistem numit spațiu de control al procesului. Rețineți că nu există un obiect OS/400 echivalent. (Vom vorbi mai multe despre acest lucru în secțiunile de management al muncii.) Scopul procesului MI este de a lega resursele

Din cartea Introducere în QNX/Neutrino 2. Un ghid pentru programarea aplicațiilor în timp real în platforma QNX în timp real de Curten Rob

Procese Crearea proceselor paralele este descrisă atât de complet în literatura UNIX încât aici vom oferi doar o privire de ansamblu superficială minimă necesară, concentrându-ne doar pe caracteristicile distinctive ale OS QNX.Orice discuție presupune existența unui sistem de concepte.

Din cartea Linux prin ochii unui hacker autor Flenov Mihail Evghenievici

Procese periodice Deci, cum este asigurată funcționarea „periodică” a sistemului de diagnosticare? Ne putem imagina un proces care rulează pe procesorul mașinii noastre care face ceva de genul următor: // Proces de diagnosticare int main(void) // Ignora

Din cartea Sistem de operare UNIX autor Robachevsky Andrey M.

3.4. Procese Pentru a gestiona eficient computerul, trebuie să înțelegeți temeinic serverul și procesele care rulează pe acesta. După ce v-a spart serverul, un atacator va încerca să ruleze un program pe el care va acorda în liniște drepturi hackerului

Din cartea UNIX - un mediu de programare universal de Pike Rob

Procese Procesele joacă un rol cheie în sistemul de operare UNIX. Sarcina resurselor procesorului depinde de configurația optimă a subsistemului de control al procesului și de numărul de procese care rulează simultan, care, la rândul lor, are un impact direct asupra

Din cartea autorului

Programe și procese De obicei, un program este o colecție de fișiere, fie că este un set de texte sursă, fișiere obiect sau fișierul executabil real. Pentru ca un program să fie executat, sistemul de operare trebuie mai întâi să creeze un mediu sau

Din cartea autorului

Procese Capitolul 1 procesele deja menționate. Cu toate acestea, familiaritatea era limitată la interfața de utilizator sau de comandă a sistemului de operare. În această secțiune vom încerca să le privim din punct de vedere al unui programator.Procesele sunt motorul principal al sistemului de operare

Trimiterile

Teoria lui P.K. Anokhin ca sistem integral

Deci, primul avantaj și caracteristică importantă care distinge TFS de alte variante ale abordării sistemelor este introducerea ideii de rezultat al unei acțiuni în schema conceptuală. Astfel, TFS, în primul rând, a inclus un factor de formare a sistemului izomorf în aparatul conceptual al abordării sistemelor și, în al doilea rând, a schimbat radical înțelegerea determinării comportamentului.

Trebuie remarcat faptul că atunci când o anumită teorie a fost deja clar formulată, o analiză retrospectivă a literaturii de specialitate poate scoate la iveală afirmații care au anticipat oricare dintre prevederile acesteia. Aceasta este situația cu TFS. Astfel, J. Dewey a remarcat la sfârșitul secolului trecut că „acțiunea este determinată nu de evenimentele anterioare, ci de rezultatul cerut”. În anii 20 În secolul al XX-lea, A. A. Ukhtomsky a prezentat conceptul de „organ funcțional în mișcare”, care însemna orice combinație de forțe care duce la un anumit rezultat. Cu toate acestea, găsim un sistem holistic de idei, justificat nu doar teoretic, ci și de cel mai bogat material experimental, tocmai în TFS. Integritatea și consistența sa constă în faptul că ideea de activitate și scop nu este pur și simplu inclusă în TPS împreună cu alte prevederi, ci determină de fapt conținutul principal, aparatul teoretic și metodologic al teoriei. Această idee definește atât abordări ale analizei mecanismelor specifice pentru obținerea rezultatelor comportamentale, care funcționează la nivelul întregului organism, cât și o înțelegere a organizării activității unui neuron individual (vezi paragraful 3). Cum răspunde TFS la întrebarea despre mecanismele care asigură integrarea elementelor într-un sistem și obținerea rezultatului acestuia? Ce prevederi ale teoriei reflexelor l-au făcut pe P.K. Anokhin (un student al lui I.P. Pavlov) să respingă logica dezvoltării consecvente a ideilor sistemice, care a dus TFS dincolo de „cadrul reflexului” [Sudakov, 1996]?

Ca prevederi cheie ale teoriei reflexelor, P.K. Anokhin a identificat următoarele: a) exclusivitatea stimulului declanșator ca factor care determină acțiunea care este cauza acestuia; b) finalizarea unui act comportamental cu o acțiune reflexă, răspuns și c) progresia înainte a excitației de-a lungul unui arc reflex. Toate aceste prevederi sunt respinse atunci când se analizează comportamentul din perspectiva TPS [Anokhin, 1978].

Prezența unui stimul declanșator nu este suficientă pentru apariția unui comportament adecvat. Apare: a) după antrenament, adică în prezența unui material de memorie adecvat; b) în prezenţa unei motivaţii adecvate şi c) în mediul adecvat. Aceste componente au fost, desigur, considerate de alți autori, dar numai ca modulatori sau condiții în care un anumit stimul provoacă o anumită reacție asociată acestuia. P.K. Anokhin a remarcat că atunci când apare același stimul și condițiile se schimbă, un animal poate obține rezultatul comportamentului într-o varietate de moduri care nu au fost niciodată asociate cu acest stimul. De exemplu, în loc să se apropie de alimentator, poate înota până la el dacă apa devine brusc un obstacol.



Potrivit TFS, integrarea tuturor acestor componente se realizează în cadrul unui mecanism sistemic special de sinteză aferentă, în timpul căruia, pe baza motivației, luând în considerare situația și experiența trecută, se creează condiții pentru eliminarea excesului de grade de libertate. - luarea de decizii cu privire la ce, cum și când să faceți astfel încât să obțineți un rezultat adaptativ util. Luarea deciziilor se termină cu formarea unui acceptor al rezultatelor acțiunii, care este un aparat pentru prezicerea parametrilor rezultatelor viitoare: etapă și finală, și compararea acestora cu parametrii rezultatelor efectiv obținute în timpul implementării programului de acțiune. În comparație cu parametrii rezultatelor etapei obținute, se dezvăluie conformitatea progresului programului cu cel planificat (pentru mai multe detalii, vezi [Batuev, 1978; Pashina, Shvyrkov, 1978]) în comparație cu parametrii finali - corespondenţa relaţiei realizate între organism şi mediu cu cel pentru care s-a format sistemul. Aceste mecanisme de sistem constituie arhitectura operațională a oricărui sistem funcțional (Fig. 14.1). Introducerea lor în schema conceptuală este al doilea cel mai important avantaj și caracteristică care distinge TFS de alte opțiuni pentru abordarea sistemelor.

Orez. 14.1. Sistem funcțional și continuum comportamental

Arhitectonica operațională a unui sistem funcțional conform P.K. Anokhin (sus). Pentru informații despre mecanismele sistemice care alcătuiesc arhitectura operațională, vezi paragraful 2. Săgețile de la „motivație dominantă” la „memorie” demonstrează că natura informațiilor preluate din memorie este determinată de motivația dominantă. Diagrama ilustrează, de asemenea, ideea că acceptorul rezultatelor acțiunii conține modele ale rezultatelor etapei împreună cu rezultatul final și că modelul acestuia din urmă este reprezentat nu de o singură caracteristică, ci de un set de parametri.

Continuum comportamental (de jos). Р n, Р n+1 - rezultate ale actelor comportamentale; p 1,2,3 - rezultatele etapei; Procese de transformare T (vezi paragraful 2). Pentru seturile de sisteme care asigură implementarea actelor succesive ale continuumului, precum și pentru implicarea în procese de transformare a sistemelor care nu sunt implicate în implementarea actelor, a căror înlocuire prin aceste procese este asigurată (aceste sisteme sunt indicate prin ovale), vezi paragraful 7

Formarea în TPS a ideii că integrarea proceselor fiziologice elementare se realizează în cadrul unor procese specifice sistemului calitativ diferite a fost de o importanță fundamentală pentru dezvoltarea unei abordări psihofiziologice a analizei comportamentului și activității, precum și a unei abordări sistemice. rezolvarea unei probleme psihofiziologice (vezi paragraful 5). Dezvoltarea ideilor despre specificul calitativ al proceselor de integrare a fost descoperirea unui nou tip de procese în întregul organism - procese de sistem care organizează anumite procese fiziologice, dar nu sunt reductibile la acestea din urmă.

Descoperirea proceselor sistemice a făcut posibilă, spre deosebire de considerarea relațiilor material-energetice dintre impactul local și reacția ca bază a comportamentului, interpretarea comportamentului ca un schimb de organizare, sau de informații, între organism și mediu, desfășurat în cadrul cadrul acestor procese informaţionale. În același timp, s-a fundamentat poziția că categoriile de sistem ale TPS descriu simultan atât organizarea activității elementelor corpului, cât și legătura acestei activități cu organizarea mediului extern [Shvyrkov, 1995].

În condiții stabile, de exemplu într-un experiment de laborator, apariția unui stimul de declanșare face posibilă implementarea integrării pre-lansare, care poate fi caracterizată ca pregătirea sistemelor pentru comportamentul viitor, format în procesul de efectuare a celui precedent. Este îndreptată spre viitor, dar stabilitatea situației face evidentă legătura stimul-răspuns. Cu toate acestea, o analiză a activității neuronale în comportament arată clar că organizarea acestuia din urmă este determinată de rezultatul obținut într-un comportament dat, în timp ce stimulul doar „permite” implementarea comportamentului. În cazurile în care același stimul din punct de vedere al parametrilor fizici „declanșează” diferite acte comportamentale (de exemplu, procurarea alimentelor sau defensive), nu numai caracteristicile activității neuronale se dovedesc a fi diferite în aceste acte, ci chiar și setul de celulele implicate, inclusiv în zonele „specifice stimulului” ale creierului (de exemplu, în cortexul vizual când este prezentat un stimul vizual; vezi [Shvyrkova, 1979; Aleksandrov, 1989]).

A doua pozitie a teoriei reflexelor, care este respinsa de TFS, este evaluarea actiunii ca etapa finala a unui act comportamental. Din perspectiva TFS, etapa finală a implementării actului este compararea parametrilor prevăzuți în acceptor cu parametrii rezultatului efectiv obținut. Dacă parametrii corespund celor prevăzuți, atunci individul implementează următorul act comportamental; dacă nu, atunci apare o nepotrivire în aparatul acceptor, ceea ce duce la o restructurare a programelor pentru obținerea rezultatelor.

În cele din urmă, TFS respinge propunerea că excitația progresează de-a lungul arcului reflex. În conformitate cu această poziție, implementarea comportamentului este asigurată de activarea structurilor cerebrale care sunt implicate succesiv în reacție: mai întâi, structurile senzoriale care procesează informațiile senzoriale, apoi structurile efectoare care formează excitație care activează glandele, mușchii etc. , noi [Alexandrov, Shvyrkov, 1974 ], precum și lucrările laboratoarelor lui J. Olds și mai ales E. R. John (vezi în) s-a arătat că în timpul implementării unui act comportamental nu are loc o activare secvențială a aferente și structuri eferente, dar o activare sincronă a neuronilor localizați în diferite zone ale creierului. Modelul de activare a neuronilor în aceste structuri se dovedește a fi general și are un caracter general cerebral. Componentele acestui model - faze succesive de activare - corespund secvenței de desfășurare a mecanismelor de sistem descrise anterior (vezi [Shvyrkov, 1978, 1995]). Acest lucru se aplică nu numai neuronilor din creier. De exemplu, s-a descoperit că în perioada latentă a unui act comportamental (vezi mai jos despre procesele de transformare), cu mult înainte de începerea implementării acestuia și sincron cu neuronii creierului, activitatea elementelor care sunt de obicei asociate exclusiv cu „ mecanismele executive” este rearanjată: unități musculare, receptori fusi musculari [Alexandrov, 1989].

Deja cu mai bine de treizeci de ani în urmă, importanța critică a fenomenului de sincronicitate era evidentă. Din punctul de vedere al teoriei reflexelor, s-a presupus că sincronia structurilor îndepărtate asigură o îmbunătățire a conducerii excitației de-a lungul arcului reflex. Din punctul de vedere al TPS, s-a ajuns la concluzia că acest fenomen este o dovadă a implicării sincrone a elementelor de localizare anatomică diferită în procesele sistemice. Aceste procese sunt la nivelul întregului organism și nu pot fi localizate în nicio zonă a creierului sau în nicio parte a corpului. În diferite zone ale creierului în actele comportamentale, nu apar procese aferente sau eferente locale, ci aceleași procese sistemice cerebrale generale de organizare a activității neuronilor într-un sistem care nu este senzorial sau motor, ci funcțional. Activitatea neuronilor în aceste zone nu reflectă prelucrarea informaţiei senzoriale sau procesele de reglare a mişcării, ci implicarea neuronilor în anumite faze de organizare (sinteza aferentă şi luarea deciziilor) şi implementarea sistemului. Activitatea oricărei structuri corespunde simultan atât anumitor proprietăți ale mediului, cât și naturii activității motorii [Shvyrkov 1978; Şvyrkov, Aleksandrov, 1973].

În ultimii ani, fenomenul de sincronicitate a activării diferitelor zone ale creierului (inclusiv măduva spinării) în comportament a fost redescoperit și i se acordă o importanță tot mai mare. Sunt date argumente în favoarea faptului că sincronia este o caracteristică a activității creierului care este obligatorie pentru funcționarea conștiinței, actualizarea materialului de memorie, organizarea și implementarea comportamentului. Deoarece organizarea și implementarea comportamentului are loc datorită activării sistemelor extrase din memorie (vezi mai jos), iar conștiința poate fi considerată una dintre caracteristicile organizării sistemice a comportamentului (vezi în), toți termenii evidențiați mai sus sunt diferiți aspecte ale descrierii structurii sistemice a acestuia din urmă . Prin urmare, punctele de vedere de mai sus ale diferiților autori sunt în concordanță cu interpretarea sistemică a sincronicității pe care am dat-o mai devreme.

Un singur model de activări și sincronicitate a implicării neuronilor în diferite zone ale creierului în procesele generale ale sistemului cerebral nu înseamnă echipotențialitate (echivalență) structurilor creierului; contribuția acestor structuri la asigurarea comportamentului depinde de specificul proiecției experienței individuale asupra lor (a se vedea paragraful 8).

Apel de sistem permite unei aplicații să contacteze sistemul de operare cu o solicitare de a efectua o anumită acțiune, formalizată ca o procedură (sau un set de proceduri) a segmentului de cod al sistemului de operare. Pentru un programator de aplicații, sistemul de operare arată ca o bibliotecă care oferă un set de funcții utile care pot fi utilizate pentru a simplifica un program de aplicație sau pentru a efectua acțiuni care sunt interzise în modul utilizator, cum ar fi comunicarea cu un dispozitiv I/O.

Implementarea apelurilor de sistem trebuie să îndeplinească următoarele cerințe:

  • asigura trecerea la modul privilegiat;
  • au o viteză mare de apelare a procedurilor OS;
  • asigura, pe cât posibil, acces uniform la apelurile de sistem pentru toate platformele hardware pe care rulează sistemul de operare;
  • permite extinderea ușoară a setului de apeluri de sistem;
  • oferă control al sistemului de operare asupra utilizării corecte a apelurilor de sistem.

Prima cerință pentru majoritatea platformelor hardware poate fi îndeplinită numai folosind un mecanism de întrerupere software. Prin urmare, vom presupune că cerințele rămase trebuie îndeplinite special pentru o astfel de implementare a apelurilor de sistem. Se întâmplă de obicei ca unele dintre aceste cerințe să fie reciproc contradictorii.

Pentru a asigura o viteză mare, este util să folosiți proprietățile vectoriale ale sistemului de întrerupere software găsit în multe procesoare, de exemplu. atribuiți o anumită valoare vectorială fiecărui apel de sistem. Cu această metodă de apelare, aplicația specifică direct valoarea vectorului în argumentul de cerere, după care controlul este transferat imediat la procedura OS necesară (Fig. 3.5, A). Cu toate acestea, această metodă descentralizată de transfer al controlului este legată de caracteristicile platformei hardware și, de asemenea, nu permite sistemului de operare să modifice cu ușurință setul de apeluri de sistem și să controleze utilizarea acestora. De exemplu, în procesorul Pentium, numărul de apeluri de sistem este determinat de numărul de vectori de întrerupere alocați în acest scop dintr-un pool comun de 256 de elemente (din care o parte este folosită pentru întreruperi hardware și gestionarea excepțiilor). Adăugarea unui nou apel de sistem necesită ca programatorul de sistem să caute cu atenție un element liber în tabelul de întreruperi, care, în plus, la un anumit stadiu al dezvoltării sistemului de operare poate să nu fie acolo.

În majoritatea sistemelor de operare, apelurile de sistem sunt deservite conform unei scheme centralizate bazată pe existența unui manager de apeluri de sistem (Fig. 3.5, b). Pentru orice apel de sistem, aplicația execută o întrerupere software cu un număr de vector specific și unic. De exemplu, sistemul de operare Linux utilizează comanda INT 80h pentru apelurile de sistem, iar sistemul de operare Windows NT (când rulează pe platforma Pentium) utilizează INT 2Eh. Înainte de a executa o întrerupere software, aplicația într-un fel sau altul transmite sistemului de operare numărul apelului de sistem, care este un index în tabelul de adrese ale procedurilor OS care implementează apelurile de sistem (tabelul sysent din Fig. 3.5, b). Metoda de transmitere depinde de implementare. De exemplu, numărul poate fi plasat într-un registru specific de uz general al procesorului sau trecut prin stivă (în acest caz, după o întrerupere și tranziție la modul privilegiat, va trebui să fie copiat în stiva de sistem de la utilizator stiva, această acțiune este automatizată pe unele procesoare). De asemenea, argumentele apelului de sistem sunt transmise într-un fel; ele pot fi fie plasate în registre de uz general, fie trecute prin stivă

Orez. 3.5. Descentralizat (A)și centralizat (b) scheme de procesare

apeluri de sistem

sau o matrice situată în RAM. O matrice este convenabilă atunci când o cantitate mare de date este transmisă ca argumente, iar adresa acestei matrice este indicată într-un registru de uz general.

Managerul de apeluri de sistem este de obicei un program simplu care stochează conținutul registrelor procesorului pe stiva de sistem (deoarece o întrerupere de software pune procesorul în modul privilegiat), verifică dacă numărul de apel solicitat se încadrează în intervalul acceptat de sistemul de operare (adică dincolo de limitele tabelului) și transferă controlul către procedura OS, a cărei adresă este specificată în tabelul cu adrese de apel de sistem.

Procedura de implementare a apelului de sistem scoate argumente din stiva de sistem și efectuează acțiunea specificată. Această acțiune poate fi la fel de simplă ca citirea ceasului sistemului, astfel încât apelul de sistem să fie încadrat ca o singură funcție. Apelurile de sistem mai complexe, cum ar fi citirea dintr-un fișier sau alocarea unui segment de memorie suplimentar unui proces, necesită ca funcția principală de apel de sistem să apeleze mai multe proceduri interne ale nucleului OS aparținând unor subsisteme diferite, cum ar fi subsistemul de intrare/ieșire sau de gestionare a memoriei.

După finalizarea apelului de sistem, controlul este returnat dispecerului, iar acesta primește și codul de finalizare pentru acest apel. Dispecerul restabilește registrele procesorului, plasează un cod de returnare într-un registru specific și execută o instrucțiune de returnare dintr-o întrerupere, care restabilește modul neprivilegiat al procesorului.

Pentru o aplicație, un apel de sistem nu diferă în aparență de apelarea unei funcții obișnuite de bibliotecă C care este legată (dinamic sau static) la codul obiect al aplicației și executată în modul utilizator. Și această situație apare de fapt - pentru toate apelurile de sistem din bibliotecile furnizate de compilatorul C, există așa-numitele „stubs” (în versiunea în limba engleză este folosit termenul stub - rest, stub). Fiecare stub este conceput ca o funcție C și conține mai multe linii de limbaj de asamblare necesare pentru a executa o instrucțiune de întrerupere software. Astfel, programul utilizator apelează stub, care la rândul său apelează procedura OS.

Pentru a accelera unele apeluri de sistem destul de simple care, de asemenea, nu necesită un mod privilegiat, munca necesară este efectuată în întregime de o funcție de bibliotecă, ceea ce în acest caz este nedrept să apelați un stub. Mai precis, o astfel de funcție nu este un apel de sistem, ci este o funcție de bibliotecă „pură” care își îndeplinește toată munca în modul utilizator în spațiul de adrese virtuale al procesului, dar programatorul aplicației poate să nu știe despre acest lucru - pentru el, apelurile de sistem și funcțiile bibliotecii arată uniforme. Un programator de aplicații se ocupă cu un set de funcții ale unei interfețe de programare a aplicației - un API (de exemplu, Win32 sau POSIX), constând din funcții de bibliotecă, dintre care unele sunt folosite pentru a finaliza munca prin apeluri de sistem, iar altele nu.

Metoda tabelară descrisă de organizare a apelurilor de sistem este acceptată în aproape toate sistemele de operare. Vă permite să modificați cu ușurință compoziția apelurilor de sistem prin simpla adăugare a unei noi adrese la tabel și extinderea gamei de numere de apel valide.

Sistemul de operare poate executa apeluri de sistem în moduri sincrone sau asincrone. Un apel de sistem sincron înseamnă că procesul care a efectuat un astfel de apel este suspendat (pus într-o stare de așteptare de către planificatorul OS) până când apelul de sistem a finalizat toate lucrările necesare (Fig. 3.6, A). După aceasta, planificatorul pune procesul într-o stare gata, iar data viitoare când este executat, procesul este garantat că va putea folosi rezultatele apelului de sistem care s-a finalizat până la acest moment. Apelurile sincrone se mai numesc și blocare, deoarece procesul care a apelat acțiunea sistemului este blocat până la finalizare.

Un apel de sistem asincron nu determină trecerea procesului în modul de repaus; după unele acțiuni inițiale ale sistemului, cum ar fi pornirea unei operațiuni I/O, controlul este returnat procesului de aplicare (Figura 3.6, b).


Orez. 3.6. Sincron (A)și asincron (b) apeluri de sistem

Majoritatea apelurilor de sistem din sistemul de operare sunt sincrone, deoarece acest mod ușurează aplicarea muncii de a afla când apare rezultatul apelului. În același timp, în noile versiuni ale sistemului de operare, numărul apelurilor de sistem asincrone crește treptat, ceea ce oferă mai multă libertate dezvoltatorilor de aplicații complexe. Apelurile de sistem asincrone în sistemul de operare bazate pe abordarea microkernel sunt deosebit de necesare, deoarece în acest caz o parte a sistemului de operare operează în modul utilizator, care trebuie să aibă libertate deplină în organizarea muncii, iar această libertate este oferită numai de modul asincron de deservirea apelurilor de către microkernel.

Unitate de control al procesului

Pentru ca OS să gestioneze procesele, trebuie să aibă toate informațiile necesare pentru aceasta. În acest scop, pentru fiecare proces este creată o structură informațională specială, care conține anumite informații importante despre proces și apelate mânerul procesului(bloc de control al procesului, PCB). În general, un descriptor de proces conține următoarele informații:

  • identificator de proces (așa-numitul PID - Process IDentificator);
  • un tip de proces (sau o clasă) care definește unele reguli de furnizare a resurselor pentru supervizor;
  • prioritatea procesului conform căreia supervizorul asigură resurse. În cadrul unei clase de procese, procesele cu prioritate mai mare sunt deservite mai întâi;
  • o variabilă de stare care determină starea în care se află procesul (gata de rulare, rulare, așteptarea unui dispozitiv I/O etc.);
  • o zonă de memorie protejată (sau adresa unei astfel de zone) în care sunt stocate valorile curente ale registrelor procesorului dacă procesul este întrerupt fără a-și finaliza activitatea. Această informație se numește contextul sarcinii (procesului);
  • informații despre resursele pe care procesul le deține și/sau are dreptul să le utilizeze (pointeri pentru deschiderea fișierelor, informații despre operațiunile I/O în așteptare etc.);
  • un loc (sau adresa acestuia) pentru organizarea comunicării cu alte procese;
  • parametrii timpului de pornire (momentul în care ar trebui activat procesul și frecvența acestei proceduri).

Astfel, sistemul de operare poate concentra toate informațiile cheie despre proces în blocul de control al procesului.

Blocurile de control al procesului, de regulă, sunt amplasate permanent în RAM pentru a accelera munca supervizorului, care le organizează în liste (cozi) și afișează modificările stării procesului prin mutarea descriptorului corespunzător dintr-o listă în o alta. Pentru fiecare stare (cu excepția stării de rulare pentru un sistem cu un singur procesor), sistemul de operare menține o listă corespunzătoare de sarcini care se află în acea stare. Cu toate acestea, pot exista mai multe liste pentru o stare de așteptare, dar tot atâtea tipuri diferite de resurse pot provoca starea de așteptare. De exemplu, pot exista atâtea stări de așteptare pentru finalizarea unei operațiuni I/O câte dispozitive I/O sunt în sistem. Deoarece sistemul de operare trebuie să poată efectua rapid operațiuni pe diferite RSV-uri, multe computere oferă un registru hardware special care indică întotdeauna către RSV-ul procesului care rulează în prezent. Adesea există și comenzi implementate hardware care asigură încărcarea rapidă a informațiilor de stare în RSV și restaurarea rapidă ulterioară a acestor informații.

Procesele V OS UNIX.Întregul design al sistemului de operare UNIX se bazează pe conceptul de procese. Contextul procesului este format din contextul utilizatorului și contextul nucleului, așa cum se arată în Fig. 3.7.

Contextul utilizatorului unui proces se referă la codul și datele aflate în spațiul de adrese al procesului. Toate datele sunt împărțite:

  • pentru a inițializa date imuabile (de exemplu, constante);
  • date modificabile inițializate (toate variabilele ale căror valori inițiale sunt atribuite în etapa de compilare);
  • ^ date mutabile inițiale (toate variabilele statice cărora nu li se atribuie valori inițiale în etapa de compilare);

Orez. 3.7.

  • stiva de utilizatori;
  • date situate în memoria alocată dinamic (de exemplu, folosind funcțiile standard de bibliotecă C mallocO, callocO, reallocO).

Codul executabil și datele inițializate formează conținutul fișierului program, care este executat în contextul procesului. Stiva de utilizator este utilizată atunci când procesul rulează în modul utilizator.

Termenul „context kernel” se referă la contextul sistemului și contextul registrului. În contextul nucleului, să evidențiem stiva de nucleu, care este utilizată atunci când procesul rulează în modul kernel, și datele nucleului stocate în structuri care sunt analoge cu blocul de control al procesului - PCB. Datele nucleului includ: ID utilizator - UID, ID utilizator grup - G1D, ID proces - P1D, ID proces părinte - PP1D.

Identificarea procesului. Fiecare proces din sistemul de operare primește un număr unic de identificare - P1D (identificator de proces).

Când este creat un nou proces, sistemul de operare încearcă să-i atribuie un număr liber mai mare decât cel al procesului creat înainte de acesta. Dacă nu există astfel de numere libere (de exemplu, a fost atins numărul maxim posibil pentru proces), atunci sistemul de operare selectează numărul minim dintre toate numerele libere. În sistemul de operare Linux, alocarea numerelor de identificare a procesului începe cu numărul 0, pe care procesul nucleului îl primește la pornirea sistemului de operare. Acest număr nu poate fi atribuit ulterior niciunui alt proces. Valoarea maximă posibilă pentru numărul de proces în Linux bazat pe procesoare Intel pe 32 de biți este 2 31 -1.

Stări de proces. Scurtă diagramă de stare. Modelul de stare a procesului din sistemul de operare UNIX este o granularitate a modelului de stare. Diagrama de stare a proceselor din sistemul de operare UNIX este prezentată în Fig. 3.8.

Starea procesului „executarea” a fost împărțită în două stări: „executarea în modul kernel” și „executarea în modul utilizator”. În starea „execuție în modul utilizator”, procesul execută instrucțiuni de aplicație de la utilizator. În starea „execuție în modul kernel”, instrucțiunile nucleului OS sunt executate în contextul procesului curent (de exemplu, atunci când procesează sistemul


Orez. 3.8. Scurtă diagramă de stare a procesului în apel întunecat sau întrerupere UNIX). Un proces nu poate trece direct de la starea „executare în modul utilizator” la stările „în așteptare”, „pregătit” și „execuție terminată”. Astfel de tranziții sunt posibile numai prin starea intermediară „execuție în modul kernel”. De asemenea, este interzisă o tranziție directă de la starea „pregătit” la starea „execuție în modul utilizator”.

Diagrama stării procesului UNIX de mai sus nu este completă. Ea arată doar stări pentru care cunoștințele deja dobândite sunt suficiente pentru a le înțelege.

Ierarhia proceselor.În sistemul de operare UNIX, toate procesele, cu excepția unuia, care este creat la pornirea sistemului de operare, pot fi generate numai de alte procese. Strămoșul tuturor celorlalte procese din sistemele de tip UNIX poate fi procese cu numerele 1 sau 0. În Linux, un astfel de strămoș, care există numai atunci când sistemul pornește, este procesul nucleului cu identificatorul 0.

Astfel, toate procesele din UNIX sunt conectate printr-o relație proces-părinte-proces-copil și formează un arbore genealogic de procese. Pentru a menține integritatea arborelui genealogic în situațiile în care procesul părinte se termină înainte de finalizarea procesului copil, identificatorul procesului părinte din datele nucleului procesului copil (PPID) este schimbat la 1, care corespunde identificatorului procesului inițial. care determină timpul de funcționare al OS. Astfel, procesul init, așa cum spune, adoptă procese orfane. Probabil că ar fi mai logic să înlocuim PPID nu cu valoarea 1, ci cu valoarea identificatorului celui mai apropiat proces strămoș existent al procesului părinte decedat, dar din anumite motive o astfel de schemă nu a fost implementată în UNIX.

Apeluri de sistem de1pp1c!() și de1rts1()

Datele nucleului situate în contextul nucleului unui proces nu pot fi citite direct de către proces. Pentru a obține informații despre acestea, procesul trebuie să efectueze apelul de sistem corespunzător. Valoarea curentă a ID-ului procesului poate fi obținută folosind apelul de sistem §e1p1c1(), iar valoarea ID-ului procesului părinte pentru procesul curent poate fi obținută folosind apelul de sistem getppid(). Prototipurile acestor apeluri de sistem și tipurile de date corespunzătoare sunt descrise în fișierele de sistem și. Apelurile de sistem nu au parametri și returnează ID-ul procesului curent și, respectiv, ID-ul procesului părinte.

Prototipuri de apeluri de sistem

#include ttinclude pid_t getpid(void); pid_t getppid(void);

Descrierea apelurilor de sistem

Apelul de sistem getpid returnează ID-ul procesului curent. Apelul de sistem getppid returnează ID-ul procesului părinte al procesului curent.

Tipul de date pid_t este un sinonim pentru unul dintre tipurile întregi din limbajul C.

Crearea unui proces în UNIX. apel de sistem fork().

În sistemul de operare UNIX, un nou proces poate fi generat în singurul mod - folosind apelul de sistem fork(). În acest caz, procesul nou creat va fi o copie aproape completă a procesului părinte. Pentru un proces copil, în comparație cu procesul părinte (la nivelul cunoștințelor deja dobândite), valorile următorilor parametri se modifică:

  • identificatorul procesului - PID;
  • ID-ul procesului părinte - РРШ. În plus, comportamentul copilului se poate schimba

proces în raport cu unele semnale.

Apel de sistem pentru a genera un nou proces

Prototip de apel de sistem

#include ttinclude pid_t furk(void);

Descrierea apelului de sistem

Apelul de sistem fork este folosit pentru a crea un nou proces în sistemul de operare UNIX. Procesul care a inițiat apelul de sistem fork se numește proces părinte. Procesul nou generat este de obicei numit proces copil. Procesul copil este o copie aproape completă a procesului părinte. Valorile următorilor parametri se modifică pentru procesul copil în comparație cu cel părinte:

  • ID proces;
  • ID-ul procesului părinte;
  • timpul rămas până la recepționarea semnalului SIGALRM;
  • Semnalele care așteptau să fie livrate procesului părinte nu vor fi livrate procesului copil.

Când un apel de sistem este efectuat o dată, acesta poate reveni de două ori: o dată în procesul părinte și din nou în procesul copil. Dacă crearea unui nou proces a avut succes, atunci apelul de sistem va returna valoarea 0 în procesul copil și o valoare pozitivă egală cu identificatorul procesului copil în procesul părinte. Dacă crearea unui nou proces eșuează, apelul de sistem va returna o valoare negativă procesului care l-a inițiat.

Apelul de sistem fork este singura modalitate de a genera un nou proces după inițializarea sistemului de operare UNIX.

În timpul execuției apelului de sistem fork(), o copie a procesului părinte este generată și revenirea de la apelul de sistem va avea loc atât în ​​procesele părinte, cât și în cele secundare. Acest apel de sistem este singurul care este apelat o dată și revine de două ori dacă are succes (o dată în procesul părinte și o dată în procesul copil)! După ieșirea din apelul de sistem, ambele procese continuă să execute cod de utilizator obișnuit după apelul de sistem.

Încheierea procesului. Funcția ex1H()

Există două modalități de a încheia corect un proces în programele scrise în C. Prima metodă pe care am folosit-o până acum: procesul se încheie corect când ajunge la sfârșitul funcției main() sau când se execută instrucțiunea return în main() funcția, a doua metodă este utilizată atunci când este necesar să se încheie procesul în altă parte a programului. Pentru a face acest lucru, utilizați funcția de ieșire () din biblioteca standard de funcții pentru limbajul C. Când executați această funcție, toate bufferele de I/O parțial umplute sunt resetate, închizând fluxurile corespunzătoare, după care este inițiat un apel de sistem pentru a termina procesul și transferați-l la execuția de stat „terminat”.

Valoarea parametrului funcției exitQ - codul de terminare a procesului - este transmisă nucleului OS și poate fi apoi primită de procesul care a generat procesul încheiat. De fapt, când se ajunge la sfârșitul funcției main(), această funcție este de asemenea apelată implicit cu o valoare a parametrului 0.

Funcție pentru terminarea normală a procesului

Prototipul funcției

„include void exit(int status);

Descrierea funcției

Funcția de ieșire este utilizată pentru a încheia procesul în mod normal. Când această funcție este executată, toate tampoanele I/O parțial umplute sunt resetate, fluxurile corespunzătoare (fișiere, conducte, FIFO, socket-uri) sunt închise, după care este inițiat un apel de sistem pentru a termina procesul și a-l transfera în starea de execuție terminată. .

Funcția nu revine la procesul curent, iar funcția nu returnează nimic.

Valoarea parametrului de stare - codul de terminare a procesului - este transmisă nucleului OS și poate fi apoi obținută de procesul care a generat procesul încheiat. În acest caz, sunt utilizați doar cei 8 biți inferiori ai parametrului, astfel încât valorile valide pentru codul de ieșire sunt de la 0 la 255. Prin convenție, un cod de ieșire de 0 înseamnă o terminare fără erori a procesului.

Dacă un proces se încheie înaintea părintelui său, iar părintele nu a indicat în mod explicit că nu dorește să primească informații despre starea de terminare a procesului copil, atunci procesul încheiat nu dispare complet din sistem, ci rămâne în „terminat”. execuție” sau până când procesul se încheie -parent, sau până când părintele primește această informație. Procesele care sunt în starea de „execuție terminată” sunt de obicei numite procese zombie (zombie, defunct) în sistemul de operare UNIX.

Puteți vizualiza o listă cu toate programele care rulează pe computer folosind Manager de activități Windows. Pentru a face acest lucru, apăsați combinația de taste de pe tastatură. Veți vedea o listă de procese și imediat va apărea întrebarea: de ce este necesar fiecare proces specific din această listă? Să ne dăm seama ce este proceselorși cum pot fi gestionate.

Procesele– acesta este tot ceea ce se întâmplă la un moment dat în timp în sistem. ÎN Gestionar de sarcini Fila „Procese” afișează toate programele care rulează în prezent. Procesele pot fi „generate” fie de către utilizator, fie de către sistem. Procesele de sistem încep când Windows pornește; procesele utilizatorului sunt programe lansate de utilizatorul computerului însuși sau lansate în numele acestuia. Toate procesele de sistem rulează ca SERVICIUL LOCAL, SERVICIUL DE REȚEA sau SISTEM(aceste informații sunt disponibile în Task Manager în coloana „Nume utilizator”).

Managerul de activități vă permite doar să vizualizați o listă de procese și să încheiați activitatea acestora. Pentru a face acest lucru, selectați numele procesului din listă și faceți clic pe butonul „Terminare proces”. Aceasta înseamnă că programul care deține procesul este încheiat. Cu toate acestea, nu este posibil să vizualizați informații despre un anumit proces în Task Manager.

Pentru a gestiona procesele Windows, aș recomanda utilizarea unui utilitar mai puternic numit . Acesta este un program gratuit excelent care, de asemenea, nu necesită instalare. Descărcați-l, apoi rulați fișierul din folder și selectați fila „Procese” din partea de sus.
arată toate procesele în timp real, oferind informații complete despre fiecare dintre ele. Făcând clic dreapta pe procesul care ne interesează și selectând „Proprietăți fișier”, putem afla producătorul modulului software, versiunea, atributele și alte informații. Meniul contextual al procesului vă permite, de asemenea, să accesați folderul programului, să încheiați procesul sau să găsiți informații despre acesta pe Internet.

Cum să scapi de viruși de pe computer folosind Starter?

Foarte des, virușii și alte programe rău intenționate sunt deghizate în diferite procese. Prin urmare, dacă observați că ceva nu este în regulă cu computerul dvs., executați o scanare antivirus. Dacă acest lucru nu ajută sau antivirusul refuză deloc să pornească, deschideți Managerul de activități și vizualizați toate procesele care rulează.

Acordați o atenție deosebită unui proces dacă rulează ca utilizator și consumă prea multe resurse (coloanele „CPU” și „Memorie”). Dacă găsiți un proces evident suspect în listă, încheiați-l și vedeți cum funcționează sistemul dvs. după aceea. Dacă aveți îndoieli sau nu știți cărui program îi aparține procesul de rulare, este mai bine să mergeți la Google sau Yandex, să introduceți numele procesului în bara de căutare și să găsiți informații despre acesta.

Managerul de activități încorporat în Windows, desigur, vă permite să dezactivați procesele, dar, din păcate, oferă foarte puține informații despre acestea și, prin urmare, este destul de dificil de înțeles dacă un proces este viral. Programul Starter este mult mai util în acest sens.

Deci, pentru a găsi și elimina un proces de virus de pe computer, procedați în felul următor::

1. Lansați programul și accesați fila „Procese”.
2. Găsim un proces care ne face să fim suspicioși. Faceți clic dreapta pe el și selectați „Proprietăți fișier”. De exemplu, am ales fișierul svchost.exe. În fereastra care se deschide uită-te la firma producătoare din această aplicație:
Adevărul este că practic orice proces este semnat de dezvoltatorul său. Dar aplicațiile antivirus de obicei nu sunt semnate.
In cazul meu dosarul svchost.exe semnat de firma Microsoft Corporationși prin urmare putem avea încredere în el.
3. Dacă procesul selectat se dovedește a nu fi semnat de nimeni sau semnat de o companie ciudată, faceți din nou clic dreapta pe numele acestui proces și selectați „Căutare pe Internet” - „Google” (Internetul pe computer trebuie conectat).
4. Dacă site-urile sugerate de Google confirmă că acest proces este un virus, atunci trebuie să mergeți la folderul acestui proces (pentru a face acest lucru, în Starter, în meniul contextual, selectați elementul „Explorer pentru a procesa folderul”) . Apoi, după finalizarea procesului, ștergeți fișierul de aici acest proces.
Dacă încă vă îndoiți dacă este un virus sau nu (poate că nu ați reușit să căutați informații despre acesta pe Google din cauza lipsei de internet), atunci puteți pur și simplu să schimbați extensia acestui fișier (de exemplu, de la .exe la .txt) și mutați-l într-un alt folder.

Asta e tot. Astăzi am aflat ce sunt procesele Windows și ce utilități pot fi folosite pentru a le gestiona. În plus, acum știm cum să scăpăm de virușii mascați în diferite procese.

Ca prevederile cheie ale teoriei reflexe a lui P.K. Anokhin a subliniat următoarele:

1. exclusivitatea stimulului declanșator ca factor determinant a acțiunii care este cauza acestuia;

2. finalizarea unui act comportamental cu o acţiune reflexă, răspuns;

3. mișcarea înainte a excitației de-a lungul arcului reflex.

Toate aceste prevederi sunt respinse atunci când se analizează comportamentul din perspectiva TPS [Anokhin, 1978].

Prezența unui stimul declanșator nu este suficientă pentru apariția unui comportament adecvat. Apare: a) după antrenament, i.e. dacă este disponibil material de memorie adecvat; b) în prezenţa unei motivaţii adecvate şi c) în mediul adecvat. Aceste componente au fost, desigur, considerate de alți autori, dar numai ca modulatori sau condiții în care un anumit stimul provoacă o anumită reacție asociată acestuia. PC. Anokhin a remarcat că atunci când apare un anumit stimul și condițiile se schimbă, un animal poate obține rezultatul comportamentului într-o varietate de moduri care nu au fost niciodată asociate cu acest stimul. De exemplu, în loc să se apropie de alimentator, poate înota până la el dacă apa devine brusc un obstacol.

Potrivit TFS, integrarea tuturor acestor componente se realizează în cadrul unui mecanism sistemic special de sinteză aferentă, în timpul căruia, pe baza motivației, luând în considerare situația și experiența trecută, se creează condiții pentru eliminarea excesului de grade de libertate. - luarea de decizii cu privire la ce, cum și când să faceți astfel încât să obțineți un rezultat adaptativ util. Luarea deciziilor se termină cu formarea unui acceptor al rezultatelor acțiunii, care este un aparat pentru prezicerea parametrilor rezultatelor viitoare: etapă și finală, și compararea acestora cu parametrii rezultatelor efectiv obținute în timpul implementării programului de acțiune. În comparație cu parametrii rezultatelor etapei obținute, se dezvăluie conformitatea progresului programului cu cel planificat (pentru mai multe detalii, vezi [Batuev, 1978; Pashina, Shvyrkov, 1978]) în comparație cu parametrii finali - corespondenţa relaţiei realizate între organism şi mediu cu cel pentru care s-a format sistemul. Aceste mecanisme de sistem constituie arhitectura operațională a oricărui sistem funcțional (Fig. 14.1). Introducerea lor în schema conceptuală este al doilea cel mai important avantaj și caracteristică care distinge TFS de alte opțiuni pentru abordarea sistemelor.

Formarea în TPS a ideii că integrarea proceselor fiziologice elementare se realizează în cadrul unor procese specifice sistemului calitativ diferite a fost de o importanță fundamentală pentru dezvoltarea unei abordări psihofiziologice a analizei comportamentului și activității, precum și a unei abordări sistemice. rezolvarea unei probleme psihofiziologice (vezi paragraful 5). Dezvoltarea ideilor despre specificul calitativ al proceselor de integrare a fost descoperirea unui nou tip de procese în întregul organism - procese sistemice care organizează anumite procese fiziologice, dar nu sunt reductibile la acestea din urmă.

Descoperirea proceselor sistemice a făcut posibil, spre deosebire de considerarea relațiilor material-energetice dintre impactul local și reacția ca bază a comportamentului, să se trateze comportamentul ca un schimb de organizare, sau de informații, între organism și mediu, desfășurat în cadrul cadrul acestor procese informaţionale. În același timp, a fost fundamentată poziția că categoriile de sistem ale TPS descriu simultan atât organizarea activității elementelor corpului, cât și legătura acesteia cu organizarea mediului extern [Shvyrkov, 1995].

În condiții stabile, de exemplu într-un experiment de laborator, stimulul de declanșare implementează integrarea pre-lansare gata făcută, care poate fi caracterizată ca pregătirea sistemelor pentru comportamentul viitor, format în procesul de efectuare a celui precedent. Este îndreptată spre viitor, dar stabilitatea situației face evidentă legătura stimul-răspuns. Cu toate acestea, analiza activității neuronale în comportament arată clar că organizarea acestuia din urmă este determinată de rezultatul obținut în acest comportament, în timp ce stimulul doar „lansează”, „permite” implementarea. În cazurile în care același stimul din punct de vedere al parametrilor fizici „declanșează” diferite acte comportamentale (de exemplu, procurarea alimentelor sau defensive), nu numai caracteristicile activității neuronale se dovedesc a fi diferite în aceste acte, ci chiar și setul de celulele implicate, inclusiv în zonele „specifice stimulului” ale creierului (de exemplu, în cortexul vizual când este prezentat un stimul vizual; vezi [Shvyrkova, 1979; Aleksandrov, 1989]).

Orez. 14.1. Sistem funcțional și continuum comportamental

Arhitectonica operațională a unui sistem funcțional conform P.K. Anokhin (mai sus). Pentru informații despre mecanismele sistemice care alcătuiesc arhitectura operațională, vezi paragraful 2. Săgețile de la „motivație dominantă” la „memorie” demonstrează că natura informațiilor preluate din memorie este determinată de motivația dominantă. Diagrama ilustrează, de asemenea, ideea că acceptorul rezultatelor acțiunii conține modele ale rezultatelor etapei împreună cu rezultatul final și că modelul acestuia din urmă este reprezentat nu de o singură caracteristică, ci de un complex de parametri.

Continuum comportamental (de jos). Р n’, Р n+1 – rezultatele actelor comportamentale; p1,2,3,– rezultate de reper; T- procesele de transformare (vezi paragraful 2). Pentru seturile de sisteme care asigură implementarea actelor succesive ale continuumului (fiecare set are propriul tip de umbrire) și pentru implicarea în procese de transformare a sistemelor care nu sunt implicate în implementarea actelor, a căror înlocuire prin aceste procese este asigurată (aceste sisteme sunt indicate prin ovale neumbrite), vezi paragraful 7

A doua pozitie a teoriei reflexelor, care este respinsa de TFS, este evaluarea actiunii ca etapa finala a unui act comportamental. Din perspectiva TFS, etapa finală a implementării actului este o comparație a parametrilor prevăzuți în acceptor cu parametrii rezultatului obținut efectiv. Dacă parametrii corespund celor prevăzuți, atunci individul implementează următorul act comportamental; dacă nu, atunci apare o nepotrivire în aparatul acceptor, ceea ce duce la o restructurare a programelor pentru obținerea rezultatelor.

În cele din urmă, TFS respinge propunerea că excitația progresează de-a lungul arcului reflex. În conformitate cu această poziție, implementarea comportamentului este asigurată de activarea structurilor cerebrale care sunt implicate secvențial în reacție: mai întâi, structurile senzoriale care procesează informațiile senzoriale, apoi structurile efectoare care formează excitația care activează glandele, mușchii etc. Totuși, numeroase experimente au arătat că în timpul implementării unui act comportamental nu are loc o activare secvențială a structurilor aferente și eferente, ci o activare sincronă a neuronilor localizați în diferite zone ale creierului. Modelul de activare a neuronilor în aceste structuri se dovedește a fi general și are un caracter general cerebral. Componentele acestui model - faze succesive de activare - corespund secvenței de desfășurare a mecanismelor de sistem descrise anterior (vezi [Shvyrkov, 1978, 1995]). Rezultatele experimentale care confirmă datele privind sincronia activării neuronilor în comportament continuă să se acumuleze în ultima vreme și li se acordă o importanță crescândă în înțelegerea nu numai a organizării comportamentului definitiv, ci și a învățării.

Astfel, implicarea neuronilor din diferite regiuni ale creierului în procesele sistemului are loc sincron. Aceste procese sunt cerebrale generale și nu pot fi localizate în nicio zonă a creierului. În diferite zone ale creierului, comportamentul nu este aferent sau eferent local, ci aceleași procese sistemice cerebrale generale de organizare a activității neuronale într-un sistem care nu este senzorial sau motor, ci funcțional. Activitatea neuronilor în aceste zone nu reflectă prelucrarea informaţiei senzoriale sau procesele de reglare a mişcării, ci implicarea neuronilor în anumite faze de organizare (sinteza aferentă şi luarea deciziilor) şi implementarea sistemului. Activitatea oricărei structuri corespunde simultan atât anumitor proprietăți ale mediului, cât și naturii activității motorii.

Un singur model de activare și sincronicitatea implicării neuronilor în diferite regiuni ale creierului în procesele generale ale sistemului cerebral nu înseamnă echipotențialitate (echivalență) structurilor creierului; contribuția acestor structuri la asigurarea comportamentului depinde de specificul proiecției experienței individuale asupra lor (a se vedea paragraful 8).