bonjour,
j'ai fais un programme d'ordonnancement des processus en c++ et je veux tracer le chronogrammes comment je peux faire ça?
merci d'avance
Version imprimable
bonjour,
j'ai fais un programme d'ordonnancement des processus en c++ et je veux tracer le chronogrammes comment je peux faire ça?
merci d'avance
Cela dépend : tu veux quoi, réellement ? Une application graphique avec un chronogramme tracé en temps réel, ou une image à inclure dans un rapport d'analyse ?
Si tu veux pouvoir le faire quels que soient les programmes / threads à monitorer, tu es à priori mal parti : c'est non seulement spécifique à chaque système d'exploitation, mais en plus, je n'ai déjà vu d'outils de ce genre QUE sur des OS temps réel, et/ou avec un prix faisant blanchir les cheveux... Notamment pour ceux qui exigent une sonde matérielle sur le CPU pour fonctionner.
Si par contre tu as un minimum de maîtrise de ton ordonnancement, et que tu veux simplement pouvoir le montrer de façon graphique en fonction de ce que tes processus t'envoient comme information, alors il te faudra programmer tout ça à la main... Ce qui implique donc de préciser sur quel OS tu travailles, et avec quel framework graphique tu désires travailler (ou demander lesquels sont conseillés sur l'OS en question).
Je ne connais pas d'application "toute faite" faisant cela, tout simplement parce que cela dépend du moniteur système utilisé... qui est en général totalement spécifique à l'OS ciblé, et qui entre en général dans la première catégorie précitée (comprendre "cher").
Pour le reste, si tu as réellement écrit un programme d'ordonnancement des processus, tu devrais :
- Avoir la maîtrise complète du scheduling, ou au moins un hook total dessus, et donc pouvoir informer un moniteur de chaque changement de contexte.
- Expliquer (enfin, détailler) un peu mieux ton problème afin de pouvoir t'aider plus efficacement, parce que là, c'est quand même un peu brut de fonderie comme question... ;)
Tu ne détailles pas si c'est une analyse offline ou en temps réel, en distant ou en local, si tu dois compenser le coût CPU de l'outil ou pas, par quelle méthode tu vas acquérir les informations du chronogramme, etc. Comprends qu'il est difficile de te conseiller précisément si tu es aussi vague dans tes demandes.
A moins que l'étiquette "débutante" ne soit falsifié, je pense que la question porte plutôt sur un simulateur d'ordonnancement (parce qu'un scheduler en C++, déjà, j'ai des doutes)
Non parce que bon, un chronogramme sur des thread en temps réel, à moins d'être sur du microprocesseur 5Hz, ça pique les yeux >< !
Et si c'est pas du temps réel, à moins de prendre sur 5µs, même un jpeg tiendrait pas dans un mail >< !
Je pense que y a moyen de faire quelque chose de pas trop moche sans trop forcer en QT, que se soit en TR (XD) ou en rapport.
A titre informatif, j'en avais déjà écrit un, en C++ principalement, et ASM pour le context switch lui-même... Ce n'est pas vraiment le langage C++ qui me gêne sur ce coup, même s'il est vrai que ce n'est pas non plus le cas le plus courant.
Tu peux écrire du C++ tout à fait correct et valide sans utiliser de mécanismes pénalisants pour un élément critique, ne serait-ce qu'en utilisant des classes totalement statiques.
Effectivement ! Bon, c'était HS, mais merci quand même ><...