Rechercher : dans
Par :

Mini projet systéme d'exploitation en c++

Dernière réponse le 27 fév 2009 à 15:52:06 bilel87, le 21 jan 2008 à 11:14:17 
 Signaler ce message aux modérateurs

Il s'agit de réaliser à travers l'utilisation de l'approche oreintée objet,la simulation du fonctionnement du noyau d'un systéme d'exploitation qui soit capable d'exécuter les différentes tâches qui se présentent au systéme.
pour chaque tâches présentée, un processus est crée.il est identifié par son code unique,son nom,l'instant de son arrivée,son état(actif ou enattente),sa priorité,le temps d'exécution demandé et le temps d'exécution consomme.
plusieurs types d'ordonnancements sont possibles(fifo,lifo,par priorité, par quantum de temps,etc.).pour chacun de ces types, on peut associer un objet ordononceur qui simule l'execution des processus selon l'algorithme approprié.
1 concevoir une classe processus en imaginant tous les services possibles de creation, affichage, modification...
2 concevoir une classe ordonnanceur intégrant les services permettant de simuler l'exécution selon l'algorithme choisi.
3 proposer un programme permettant de stimuler l'exécution d'une liste de processus selon un algorithme choisi d'ordonnancement et afficher à chaque instant l'évolution de l'exécution.
svp aidez moi

Configuration: Windows XP
Internet Explorer 6.0

Meilleures réponses pour « mini projet systéme d'exploitation en c++ » dans :
[S-ATA] Disque dur SATA non reconnu VoirLes disques Serial ATA ne sont pas toujours reconnus nativement par le système comme c'est le cas avec les disques IDE. Il est généralement nécessaire d'installer les pilotes Serial-ATA fournis avec votre carte-mère afin que le système...
Supprimer la liste des systèmes d'exploitation au démarrage VoirPour diverses raisons, il se peut que vous ayez le choix entre plusieurs systèmes d'exploitation au démarrage du PC. Si cela a été réglé sciemment par l'utilisateur (par exemple, faute de compatibilité avec les anciens jeux, on a installé deux...
[BSD] Les divers systèmes BSD VoirLes systèmes d'exploitations BSD 1 - Les membres de la famille BSD 1.1 - Groupe de développeurs volontaires 1.2 - Système BSD développé par une société commerciale 2 - Différences entre systèmes 2.1 - Les systèmes BSD entre eux 2.2 -...
Système d'exploitation VoirDescription du système d'exploitation Pour qu'un ordinateur soit capable de faire fonctionner un programme informatique (appelé parfois application ou logiciel), la machine doit être en mesure d'effectuer un certain nombre d'opérations...
Introduction au système d'exploitation MS-Dos VoirLa création du DOS Le DOS est le système d'exploitation le plus connu, sa version la plus commercialisée est celle de Microsoft, baptisée MS-DOS (il en existe d'autres comme DR-DOS). MS-DOS a vu le jour en 1981 lors de son utilisation sur un IBM...

1

juju, le 15 mar 2008 à 07:30:13
  • +1

Il existe un bon site tu connait le site bosokernel il est tres tres bien pour toi

Répondre à juju

2

BASSOUDILUS, le 28 sep 2008 à 15:30:56
  • +2

Slt bolbol
ben je pe taider pour lordenancement des processus avec ceci et il est simple a comprendre
# include< stdio.h >
#define max 100
// declaration des variables
struct process /* structure des processus */
{
int da,tex;
int pid;
}p[1000];
int main ()
{
//npr : nombre de processus //
//da : date d'arrivée //
//tex :temps d"execution//
// p processus
//tmt
int npr,minda,aux,tmt[max];
int k=1,j=0,i=0;
minda=0;
printf("SVP introduire le nombre de processus \n ");
scanf("%d",&npr);
printf("\n****information sur les processus**** \n");
// cette partie permet d introduire le nombre des procesuss anisi que leurs temps d execution , le PID ,et la date d arriver de
puts("ordonnancement avec SJF(shortest job first");
puts("*********************************************************");
for (i=1;i<=npr;i++)
{
puts(">>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<");
printf ("***les donnees de la processus numero %i*** \n",i);
printf ("le P____I____D de P[%i]=",i);
scanf("%i",&p[i].pid);
printf("la date d arriver de P[%i]=",i);
scanf("%d",&p[i].da);
if (p[i].da>minda)
minda =p[i].da;
printf("temps d execution de P[%d]=",i);
scanf("%d",&p[i].tex);
puts("<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>");
}
puts("********************************************************");
// traitement du programme principal

//partie de trie du tableau qui va ordonner les processus selon leurs dates d execution


for(i=npr;i>=1;i--)
{
for(j=0;j<i;j++)
{
if(p[j].tex>p[j+1].tex)
{
aux=p[j+1].tex;
p[j+1].tex=p[j].tex;
p[j].tex=aux;
tmt[i]
}
}
}
for (i=1;i<=npr;i++)
{
printf("%i ",p[i].tex);

}

// partie affichage des diagramme de GANTT
// la partie de l execution

puts ("diagramme");

k=minda;
for(i=1;i<=npr;i++)
{

for(j=1;j<=p[i].tex;j++)
{
printf("%i",k);
printf("E %d\n",i);
k++;

}

}
puts ("\nfin de programmes \n ");
return 0;
}

Répondre à BASSOUDILUS

3

 saad, le 27 fév 2009 à 15:52:06
  • +2

Peux tu m'expliquer la gestion par priorité ?? je pourrai par la suite te filer des codes qui peuvent etre utiles pour ton mini projet

Répondre à saad