Platformăde e-learning și curriculăe-content pentru învățământul superior tehnic Sisteme de operare 13. Planificarea proceselor

Documente similare
Microsoft Word - 2 ES RO.doc

Slide 1

Laborator 04: Apeluri de funcții

Microsoft Word - CarteC.doc

Paradigme de Programare

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai

PPSD

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011

Object Oriented Programming

Paradigme de programare

Analiză statică Analiza fluxului de date 23 octombrie 2014

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Slide 1

Ingineria Sistemelor de Programare

PowerPoint Presentation

Microsoft PowerPoint - Curs_SDA_4_RO_2019_v2.pptx

Slide 1

Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012

Tipuri de date abstracte 30 noiembrie 2005 Programarea calculatoarelor 2. Curs 9 Marius Minea

Top

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa

PowerPoint Presentation

SUBPROGRAME

Concepte de bază ale Tehnologiei Informației

Analiză de flux de date 29 octombrie 2012

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx

Lucrarea nr. 2 Aplicaţii de tip client Mihai IVANOVICI 6 martie 2006 Scopul acestei lucrări este de a vă familiariza cu modulul Python socket şi cu mo

Slide 1

Microsoft Word - O problema cu bits.doc

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De

FIŞA DISCIPLINEI ANEXA nr. 3 la metodologie 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Politehnica din Bucureşti 1.2 F

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx

Microsoft PowerPoint - SD7-RO.ppt

Advance CAD 2016 SP1 Acest document descrie îmbunătățirile pentru Advance CAD 2016 Service Pack 1. Notă: Advance CAD 2016 Service Pack 1 este compatib

A TANTÁRGY ADATLAPJA

Creational design patterns

Microsoft PowerPoint - IOC-21.ppt [Compatibility Mode]

Metode de programare Proiectarea algoritmilor

Lucrarea 10

REVISAL Versiunea: Data release: 15 martie 2016 IMPORTANT! Distribuţia curentă (v6.0.4) a aplicaţiei Revisal conţine nomenclatorul COR ISCO 08 î

Capitole Speciale de Informatică Curs 4: Calculul scorurilor în un sistem complet de extragere a informaţiilor 18 octombrie 2018 Reamintim că în cursu

Gestionarea I/E

Proceduri stocate Syntax: CREATE PROCEDURE <Name> type1,...] AS -- secventa de comenzi SQL GO O procedura stocata se ruleaza cu EXEC: EXEC <N

LUMINIŢA SCRIPCARIU

PowerPoint Presentation

Slide 1

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode]

Microsoft Word - grile.doc

L7

E_d_Informatica_sp_MI_2015_bar_02_LRO

Ingineria Sistemelor de Programare

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

PowerPoint-Präsentation

Carrier Pidgeon Protocol

Procesarea Imaginilor - Laborator 1: Introducere în utilizarea bibliotecii OpenCV 1 1. Introducere în utilizarea bibliotecii OpenCV 1.1. Introducere S

SistemeIncorporate Cursul 10 Dynamic Voltage Scaling

Microsoft PowerPoint - TDRC_II-10-TCP.ppt

Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (ve

09. Informatica 2 - MM 1

LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL Aspecte generale Programarea neliniară are o foart

7. Alinierea robustă a densităţilor de puncte 3D Măsurarea distanţei dintre diferite forme geometrice 3D Estimarea rotaţiei şi a translaţiei optime în

Microsoft Word - lab4.doc

Microsoft Word - intro_msp430.doc

Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Test

brosura PF_iunie 2016_web

-

Ministerul Educaţiei al Republicii Moldova Universitatea de Stat Alecu Russo din Bălţi Facultatea de Științe Reale, Economice și ale Mediului Catedra

Slide 1

Lucrarea nr

Microsoft PowerPoint - 11_USO_curs_08.ppt [Compatibility Mode]

PowerPoint-Präsentation

Școala: Clasa a V-a Nr. ore pe săptămână: 4 Profesor: MATEMATICĂ Clasa a V-a Aviz director PLANIFICARE CALENDARISTICĂ ORIENTATIVĂ Nr. crt. Unitatea de

Introducere

Investeşte în oameni Proiect cofinanţat din Fondul Social European prin Programul Operaţional Sectorial pentru Dezvoltarea Resurselor Umane

Programarea şi utilizarea calculatoarelor

Biomedical Wi-Fi data transmissons

Fiecare model GPSS este format din entitati, caracterizate de o serie de atribute care descriu starea la un moment dat

PROCESOARE NUMERICE DE SEMNAL

PowerPoint Presentation

Slide 1

E_d_Informatica_sp_SN_2014_bar_10_LRO

Diapositive 1

Generarea semnalelor standard 1 Scopul lucrării Familiarizarea cu modul de generare şi reprezentare în mediul Matlab a semnalelor de test, considerate

Sisteme de calcul în timp real

Microsoft Word - 5_ _Eval_ ETC_master_ESI_AnI-II_completat.doc

Slide 1

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

Microsoft PowerPoint - Curs_SDA_3_RO_2019_v2.pptx

PowerPoint Presentation

Laborator 2 - Încapsularea Programare Orientată pe Obiecte Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema

Microsoft PowerPoint - TDRC_II-03-Ethernet.ppt

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. SYLLABUS / FIȘA DISC

1. ARHITECTURA MICROPROCESOARELOR 1.1. Microprocesorul. Noțiuni generale Progresele tehnologice și electronice, înregistrate în ultimele decenii, au d

Microsoft Word - tcad_l6.doc

Unitatea: Școala Gimnazială Disciplina: Informatică și TIC Programa școlară aprobată cu OMEN nr.3393 din Profesor: prof. Clasa: a V-a A, B

C++ Probleme

Facultatea de Automatică și Calculatoare

Microsoft PowerPoint - SD6-RO.ppt

Microsoft Word - 11_Evaluare ETC_master_Master_ESI.doc

Transcriere:

Platformăde e-learning și curriculăe-content pentru Sisteme de operare 13. Planificarea proceselor

Suport curs OSC MOS Capitolul 5 CPU Scheduling Capitolul 2 Processes and Threads Secțiunea 5 Scheduling 2

Cuprins Spațiul de adresă al unui proces Tipuri/criterii/algoritmi de planificare Planificare pentru sisteme batch Planificare pentru sisteme interactive Planificare pentru sisteme real-time Planificarea execuției în Windows Planificarea execuției în Linux 3

Spațiul de adresă al unui proces Zona de date Heap Stiva.data -variabile globale inițializate cu valori nenule.bss -variabile globale neinițializate sau inițializate cu zero.rodata - read-only(constante) regiune dinamică controlată de programator regiune dinamică controlată de compilator 4

Stiva int a(int b, int c){ int d=3; int e=4; int f=5; int g=6; return b+c+d+e+f+g; } int main(){ return a(1,2); } 5

main: pushl %ebp movl %esp, %ebp subl $8, %esp movl $2, 4(%esp) movl $1, (%esp) call a leave ret Stiva(2) Vechiul Frame pointer 2 1 Adresa de return 6

a: pushl %ebp movl %esp, %ebp subl $16, %esp movl $3, -4(%ebp) movl $4, -8(%ebp) movl $5, -12(%ebp) movl $6, -16(%ebp) movl 12(%ebp), %eax movl 8(%ebp), %edx leal %edx(%eax), %eax add -4(%ebp), %eax add -8(%ebp), %eax add -12(%ebp), %eax add -16(%ebp), %eax leave ret Stiva(3) Vechiul frame pointer 2 1 Adresa de return Vechiul frame pointer 6 5 4 3 7

Recapitulare stările unui proces READY gata de execuție RUNNING rulează WAITING așteaptă încheierea unei operații de I/E 8

Planificarea proceselor (CPU/Process) Scheduling alocarea proceselor pe procesor/procesoare Suportul pentru multitasking Scheduler subsistem al SO algoritmi de planificare 9

Comportarea proceselor 10

Comportarea proceselor (a) procese CPU-bound (b) procese IO-bound 11

De ce planificarea execuției? Eficiență optimizare acces la procesor un proces este executat până când așteaptă un eveniment blocant sau îi expiră cuanta SO (scheduler-ul) alege alt proces pentru execuție (planifică) după un procedeu (algoritm de planificare) Interactivitate și corectitudine (fairness) procesele pot fi întrerupte pentru rularea altor procese cu prioritate mai mare toate procesele au șanse egale de obținere a a procesorului în cazul planificării cu priorități, unele procese sunt mai egale 12

Tipuri de planificare a execuției Cooperativă se face planificare doar atunci când procesul se blochează, se termină sau cedează de bună voie procesorul Preemptivă procesele rulează un interval maxim de timp (cuantă) procesul este suspendat și se planifică altul este necesară o întrerupere de ceas 13

Când se apelează planificatorul? Crearea unui proces Terminarea unui proces Blocarea unui proces operații de I/E operații de sincronizare cu alte procese Terminarea unei operații de I/E Expirarea cuantei de timp alocate unui proces Existența unui proces cu prioritate mai mare 14

În ce constă planificarea execuției? Selecția unui proces/thread pentru rulare algoritm de selecție se parcurge coada READY [1] coada poate fi arbore, heap, listă, cozi multiple Schimbarea de context [2] se salvează contextul procesului curent se încarcă procesul selectat 15

Criterii de planificare (2) Timpul de așteptare cât timp se așteaptă în coada READY Timpul de răspuns timpul scurs de la crearea unui proces până la începerea execuției, sau cât durează o tranziție WAITING->RUNNING Echitate/corectitudine (fairness) procesele cu aceeași prioritate trebuie tratate similar 16

Criterii de planificare Criterii de selecție a procesului [3] Utilizarea procesorului gradul de ocupare a procesorului Productivitate (throughput) câte procese sunt încheiate în unitatea de timp Turnaround time timpul scurs de la crearea unui proces până la terminarea lui 17

Criterii de planificare (3) Algoritmii de planificare urmăresc maximizarea utilizării procesorului maximizarea productivității minimizarea turnaround time minimizarea timpului de așteptare minimizarea timpului de răspuns (interactivitate) 18

Notații TT turnaround time TTM turnaround time mediu J1, J2,..., J# -jobul 1, 2,...,#(batch) P1, P2,..., P# -procesul 1, 2,...,# 19

Planificare pentru sisteme batch Criterii importante throughput turnaround time utilizarea procesorului Algoritmi de planificare First-Come, First-Served Shortest Job First Shortest remaining time next Planificarea pe trei niveluri 20