Publicité
Scheduler & SLA
Scheduler & SLA
Scheduler & SLA
Scheduler & SLA
Publicité
Scheduler & SLA
Prochain SlideShare
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Chargement dans ... 3
1 sur 5
Publicité

Contenu connexe

Publicité
Publicité

Scheduler & SLA

  1. Compte Rendu Scheduler & SLA UNIVERSITÉ ABDELAMLEK ESSADI FACULTE DES SCIENCES ET TECHNIQUES DE TANGER MASTER : « SYSTEMES INFORMATIQUES ET RESEAUX »  Réalisé par : - Encadré par : - Rouzi Ayoub Mr. M El amrani
  2. MASTER-SIR R a p p o r t | 2 AYOUB ROUZI - Politiques de scheduling Le schedulingde Linux fonctionne avecdesquantadynamiques Les processussontordonnéspar priorité La valeurindiqueauscheduleurquel processus exécuterenpriorité Les prioritéssontdynamiques Les processusqui n’ontpaseule CPU ont leurpriorité augmentée,etréciproquement Linux reconnaîtlesprocessustempsréel Mais aucune notionde batch vsinteractif Décisionprise avecune heuristique basée surle comportementantérieurduprocessus - Appelssystèmes  nice() :change la priorité statique d’unprocessus  getpriority():obtientlapropriété statique max d’ungroupe de  processus  setpriority() :  sched_getscheduler():obtientlapolitique de scheduling  sched_setscheduler()  sched_getparam() :obtientlapriorité tempsréel  sched_setparam()  sched_yield() :Rendle processeurvolontairement  sched_get_priority_min() :Obtientlapriorité tempsréel min  sched_get_priority_max()  sched_rr_get_interval() :valeurduquantum  sched_getaffinity():masque d’affinitéCPU  sched_setaffinity() Exemple :Si on estl’utilisateuruser1etqu’onexécute le programme mon_programme avecle bitSUID root activé, mon_programme s’exécuterasousl’identité effective de rootetdoncavec lesprivilègesde celui-ci.L’activationdu bitSUID se faitsur le programme généré aprèslacompilationaveclacommande ci-dessous: chmod u+s mon_programme #include <stdio.h> #include <stdlib.h> #include <sched.h> int main(){ struct sched_param parametres; parametres.sched_priority = 12; if(sched_setscheduler(getpid(),SCHED_RR,parametres)!=0){ fprintf(stdout,”Impossible de changer la politique d’ordonnancement n”); exit(EXIT_FAILURE) ; } while(1){ fprintf(stdout,”Je suis en plein execution n”);
  3. MASTER-SIR R a p p o r t | 3 AYOUB ROUZI } return EXIT_SUCCESS; } On compile avec la commande suivante : gcc –o mon_programme mon_programme.c Et on exécute avec: ./mon_programme A. Lescinqétats d'unprocessus Un processuspasse pendantsadurée de vie par cinqétats:  Ready : Cet étatcorrespondà un processusqui estprêtà s’exécutermaisne peutpasencore prendre possessionduprocesseurcarcelui-ci estdéjàprisparun autre processus.  Running : En état d’exécution,doncenpleine possessionduprocesseur.  Stopped: Le processusa reçu unsignal qui l’astoppé.  Sleeping:Endormi,enattente d’unévènement,comme lafind’une entréesortie (écriture surunterminal, …).  Zombie : Un processuspère crée des processusfilsàtraversun fork.Le processusfilstermine sonexécution, maisle père n’enai pas encore conscient.Le processusfilsse retrouve dansunétatzombie,inerte,mais occupe toujoursune place dansla table de processusdusystème. B. Les politiquesd'ordonnancement Le noyauLinux,spécialementle Scheduleradopte troispolitiquesd’ordonnancementpourgérerl’exécutiondes processusparle système : SCHED_FIFO : FIFOpour First In First Out, premierarrivé premierservit. Danscette politique,plusieursfilesd’attente de processussontcrééschacune avec une priorité différente.Le processeurestaffectéenpriorité aupremier processusqui le demande etne le relâcheraque lorsque : 1-Il aura fini de s’exécuter. 2-Stopper. 3-Endormi enattente d’unévènement.
  4. MASTER-SIR R a p p o r t | 4 AYOUB ROUZI Ce processusdoitévidemmentfairepartie de lafile d’attente de plushaute priorité.Lorsquele processusrelâche le processeur,celui-ci seraaffecté auprocessussuivantqui estàl’étatPrêtetdans la même file d’attentes’il y’enaun, sinonle Schedulerenchoisitunautre danslafile d’attente de priorité inférieur. SCHED_RR : Symétrique àSCHED_FIFOentoutpointsauf qu’ici chaque processusse voitattribuerune tranche de tempsd’exécutionqu’il ne pourrapasdépasser.A lafinde cette tranche de temps,il estrelégué àlafinde ça file d’attente etle processeurseraréquisitionnépourunautre processusqui està l’étatPrêtetde même priorité.Si un tel processusn’existe pas,unautre de priorité inférieurestsélectionné. SCHED_OTHER : Correspondàla politique pardéfautdunoyauLinux,lesprocessusse voitattribuerdèsleurs créationune priorité dite « statique » qui peutêtre modifié viadesappelssystèmes.Aveccette priorité statique et enprenantencompte plusieurs facteurs,une priorité « dynamique » estcalculée etenfonctionde cette dernière le schedulerchoisi unprocessusetlui attribue le processeurpouruntempsd’exécutionmaximal. SLA : Le service-level agreement(SLA) ou« accord de niveaude service » estundocumentqui définitla qualité de service,prestationprescrite entreunfournisseurde service etunclient.Autrementdit,il s'agitde clausesbaséessur un contrat définissantlesobjectifsprécisattendusetle niveaude service que souhaite obtenirunclientde lapartdu prestataire etfixe lesresponsabilités. Le SLA tendà devenirunoutil essentielaux clientssouhaitantbénéficierd'une sécurité infaillible surcertainsde leursniveaux de sécuritéde stockage ainsi que surla gestionde leursdonnéesàcaractère personnel.De nombreux indicateursdoiventêtre définis,analysésetcontrôlésafinque laperformance proposéeparle prestataire soit maximisée. Contenu du SLA Les composantsd’unbonaccord de niveaude service doit comprendre lesélémentssuivants :  Le type de service à fournir : il doitspécifierlestypesde servicesainsique touslesdétailsde cesderniers. Dans le cas d’une connectivitéréseauIP,lestypesde servicesdoiventdécrirelesfonctionscomme l’utilisationetlamaintenance deséquipementsréseau,lalargeurde bande de connexionàfournir,etc.  Le niveaude performance souhaité desservices,enparticulier sa fiabilité etsa réactivité : un service fiable estcelui qui souffre de perturbationsminimesdurantunespace de tempsspécifique,maiségalementcelui qui estdisponiblepresquetoutle temps.Unservice avecune bonne réactivitéréaliseralesactions rapidementauprèsdesclients.  Les étapesà suivre pour signalerlesproblèmesduservice : cette étape a pour butde spécifierles coordonnéesàsignaleretl’ordre danslequel lesdétailssurle problème doiventêtre communiqués.Le contrat doitégalementinformersurl’intervalle de tempsaucoursduquel le problème seraexaminé.  Le tempsde réponse etles solutionsaux problèmesexaminés :le tempsde réponse estlapériode de tempsau cours duquel le fournisseurde service valancersonenquête surle problème.Le tempsde résolutionduproblème estlapériode durantlaquelle le problème actuel duserviceserarésoluetcorrigé.
  5. MASTER-SIR R a p p o r t | 5 AYOUB ROUZI  Le suivi desprocessus etles rapports de niveaude service : ce composantdécritcommentlesniveaux de performance sontsupervisésetsurveillés.Ce processusimpliquelacollecte de différentstypesde statistiques, lafréquence àlaquelle cesstatistiquesserontcollectéesetlafaçondontces statistiquesseront accessiblesparlesclients.  Les répercussionspourle fournisseurde servicesqui ne respecte pas son engagement : si le fournisseur n'estpas enmesure de satisfaire aux exigencesénoncéesdansle SLA,ce dernierdevrafaire face aux conséquencespourcetéchec.Cesconséquencespeuventinclurele droitduclientde résilierle contratoude demanderunremboursementpourlespertessubiesparle clienten raisonde ladéfaillance duservice.
Publicité