Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Creer un catalogue d'objets pour un noyau d'application [ Archives / Au secours ] (rick_moins_moins)

mardi 3 mai 2005 à 12:06:10 | Creer un catalogue d'objets pour un noyau d'application

rick_moins_moins

Bonjour à tous, merci pour ceux qui pourront m'apporter leur aide. J'ai un projet c++ à faire et je n'arrive pas à le faire (il me reste qu'10 jours pour le finir). Le sujet est :

"lorsque 2 tâches communiquent à travers un objet commun une erreur grave consiste à utiliser cet objet avant sa création. 2 tâches utilisant un objet commun doivent pouvoir se transmettre l'identification de l'objet à travers un catalogue. Lors de sa création chaque objet reçoit un nom qui est placé dans un catalogue général. Une tâche peut récupérer un pointeur sur l'objet en fournissant son nom au noyau. Dans le cas où l'objet demandé serait absent du catalogue la tâche demandeuse doit être bloquée jusqu'à la création effective de l'objet. Pour améliorer le temps de recherche dans le catalogue il faudra organisé judicieusement la liste."

Dans le noyau d'application (ce n'est pas un noyau système) il y a les objets semaphores, boites aux lettres,  taches, drapeaux, reveil, file d'attente, ordonnanceur, ecran, clavier .... et d'autres encores. une premiere application de ce noyau a éte de creer le jeu des araignees dans lequel des araignees (qu'on a visualise par des etoiles *) qui sont des taches et ont la mission de manger des briques. Il y a des compteurs d'araignees et du temps... Le noyau ou son application doit être multitâches.

Voilà ce que j'ai fait pour mon sujet de catalogue:
j'ai crée les classes "catalogue de tâches" et "catalogue de semaphore" pour le moment. Dans ces classes on trouve une liste chainee de tâche ou de semaphore. Il y a aussi une methode pour cataloguer l'objet crée en passant le pointeur "this" en parametre, dans cette methode on fera appel a une methode de la liste chainee "list" pour inserer un element qui est le pointeur de notre objet.
C'est dans le constructeur de la classe tâche et semaphore que je catalogue les objets en faisant appel à la méthode de catalogage de la classe catalogue tâche ou semaphore. J'ai auparavant inclus le fichier d'en-tête (.h et.cpp) de mon fichier catalogue.
Voilà où j'en suis; je n'ai presque rien fait et je ne sais plus ou aller. J'ai donc plusieurs questions à poser (j'espere que ce ne sera pas une bouteille jetée à la mer)
-dans le cahier des charges du sujet, on récupère l'identifiant de l'objet en passant son nom      en parametre au noyau comment fait on cela ?

-Une fois que j'ai inserer un pointeur de l'objet dans la liste chainee, je ne saispas comment     recuperer cet identificateur, quelle methode utiliser ?

-En fait en supposant qu'une tâche 1 crée une boite aux lettres, et une tâche 2 veut communiquer avec la tâche 1, comment fait elle pour connaître le nom de la boite aux lettres de la tâche 1 ? ou alors il faut donner un nom arbitraire comme "Bal1" et que la tache 1 doit cataloguer en donnant le pointeur et le nom "Bal1" et ainsi la tache 2 saura que si elle veut communiquer avec la tâche 1 elle devra chercher une bal de nom "Bal1". Ce qui est arbitraire. Mais dans ce cas comment faire pour cataloguer le nom et le faire correspondre avec le pointeur de son objet. Et surtout comment recuperer l'objet ?

-On m'a dit de creer une classe abstraite mère des autres classes de catalogue et qui se catalogue aussi; je ne vois pas du tout comment faire  ? peut etre qu'il faut creer une classe abstraite mais qui soit mere des autres classes (boites, semaphore, taches...) et c'est celle-ci que l'on catalogue dans le constructeur. Ainsi toutes les classes filles qui font appel au constructeur de la classe mere seront catalogué. Est-ce bien cela ?

-Enfin, quelqu'un peut-il me proposer une idée de demo pour montrer que j'ai repondu au sujet, que les objets sont catalogues et qu'on est toujours multi-taches ?

Merci, à tous ceux qui auront la patience d'abord de lire et peut-etre de me repondre. J'ai vraiment besoin d'une aide.


 




Cette discussion est classé dans : objet, pointeur, tâche, catalogue, noyau


Répondre à ce message

Sujets en rapport avec ce message

problème de pointeur et d'objet pointé [ par leptit ] Bonjour, Je vous présente le problème en C:struct assoc { int l, *n ; }*n est un pointeur vers une alloc dynamique de memoirestyle tableau d'entier.Je Probleme de Débutant [ par Dorgendubal ] Hello à tous,j'ai déjà programmé en C++ et même avec des envirronements graphiques (comme QT sous linux) mais jamais avec Visual C++.Alors j'ai un pro PROB avec pointeur THIS [ par jfk20004 ] Salut,tout ce que je sais à propos du pointeur this:-c'est un pointeur sur l'adresse d'un objet-il permet des appels en cascade de fonctionsquelqu'un test du pointeur [ par jeltimed ] bonjour .en fait je suis débutant en c++ et je voulais juste savoir est ce que ya moyen d'appliquer la logique suivant en c++: si pointeur pointe déterminer dynamiquement le type d'un objet pointé [ par feanor11 ] Sachant qu'un pointeur est capable de pointer sur un objet d'un type dérivé à son type respectif (si A est dérivée de B, A* peut pointer sur un objet Disparition de pointeurs sur classes derivees [ par Natural M ] Bonjour a tous !Alors voilà, j'ai un petit probleme de pointeurs sur classes derivées qui disparaissent des la sortie de leur espace de construction.- Objet et pointeur, souci [ par TuxOnline ] Bonjour j'ai un petit souci pour l'envoie de l'adresse d'un pointeur.Voila j'ai donc une classe CMAnifestation. Dans cette classe se trouve un objet v Question simple, STL c++, ( indexation d'objet ) [ par Wiiip ] Bonjour, merci, Je suppose que ce n'est pas bien compliqué, et que l'on doit pouvoir faire cela facilement avec la stl. Je cherche à faire un index po Pointeur cast [ par gwenChina ] Bonjour a tous,J'ai en fait un petit probleme avec un message que le compilateur me renvoie: [Warning] assignment makes pointer from integer without a Communication avec une dll activeX et déclaration d'une database [ par julienbad ] Bonjour à tous j'ai un petit problème pour communiquer avec une dll activeX (COM),En fait j'ai une erreur de pointeur sur une database je pense, erreu


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,25 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.