Projet système d'exploitation semestre 1 master 1 université d'Artois

Loquicom 85a885afc2 :fire: Suppr fichier inutile 5 年之前
.gitignore 0fe5043d0d MaJ gitignore 5 年之前
README.md a40085b12b Correction orthographe 5 年之前
color.h 9cfe29b14d addcolor 5 年之前
command.c b6232f33f4 Ajout myps en commande interne mysh 5 年之前
command.h 17cd429b0d :bug: Debug compilation 5 年之前
constante.h fc243f7e3e Ajout création et suppression ipc 5 年之前
error.c be18178fd5 :bug: Debuf redirection all 5 年之前
error.h be18178fd5 :bug: Debuf redirection all 5 年之前
execute.c 585c70792b Meilleur affichage commande introuvable 5 年之前
execute.h ef906d7d05 Documentation execute 5 年之前
expreg.c dd922fd081 Debug postion fin 5 年之前
expreg.h 5ba016ad22 Ajout documentation 5 年之前
ipc.c 59219854df Ajout comportement par defaut set et setenv 5 年之前
ipc.h 82d480f3d7 Ajout documentation 5 年之前
makefile e76940f507 Utilisation constante couleur 5 年之前
myls.c d2d487a982 Amélioration affichage jour 5 年之前
myps.c fe8540c1dd Modif myps 5 年之前
mysh.c a0642748c1 Amélioration affichage 5 年之前
mysh.h 17cd429b0d :bug: Debug compilation 5 年之前
parser.c 1ff4e023df Amélioration gestion memoire string nom fichier redir 5 年之前
parser.h 65aa236221 Fin commande en fond 5 年之前
sem.c a188331297 :bug:Debug semaphore 5 年之前
sem.h a188331297 :bug:Debug semaphore 5 年之前
shm.c fc243f7e3e Ajout création et suppression ipc 5 年之前
shm.h a3f9d34da9 Ajout shm 5 年之前
str.c 6f207d9d59 :bug: Correction presence char indésirable 5 年之前
str.h 6a428a0652 Ajout doucmentation execute 5 年之前
subdiv.c 66f50e3ee6 Correction faute de frappe 5 年之前
subdiv.h b9285d5e01 :bug: Retrait pointeur subdiv 5 年之前
variable.c 59219854df Ajout comportement par defaut set et setenv 5 年之前
variable.h 59219854df Ajout comportement par defaut set et setenv 5 年之前
wildcard.c c6b58bf38c :bug: Debug wildcard 5 年之前
wildcard.h c6b58bf38c :bug: Debug wildcard 5 年之前

README.md

Projet SEC (MySh) Master 1 Artois 2018-2019

Brandao Arthur (60%) & Maxence Bacquet (40%)

Utilisation

La compilation du programme s'effectue avec la commande make dans le dossier du projet. Il est possible de recréer les dépendances avec la commande make depend, et de supprimer les logs d'erreurs avec make rm-log. Pour lancer le programme il suffit d'exécuter le fichier ./mysh.

Les commandes externes (myls et myps) sont exécutables sans passer par le programme mysh, mais sont aussi utilisables comme des commandes internes de ce dernier. Il suffit juste de taper le nom de la commande dans un terminal mysh pour l'exécuter.

Fonctionnalités

Présentes :

  • Exécution de commandes
  • Séquencement
  • Wildcards
  • Changement de répertoire
  • Sortie du shell (commande exit et Ctrl+C)
  • Code de retoure d'un processus (commande status)
  • Lister le contenue d'un répertoire (commande myls)
  • Etat des processus en cours (commande myps)
  • Les tubes
  • Les redirections d'entrées et de sorties vers des fichiers
  • Premier et arrière plans
  • Commande myjobs
  • Variables locales et d'environnements

Absentes :

  • Commandes myfg, mybg et gestion du Ctrl+Z

Bugs / Fonctionnalités partiels

Certaines wildcars complexe ne sont pas interprétées (par exemple [A-Z.]*[^~]).

Il manque 3 champs dans la commande myps : %CPU, %MEM, TIME. De plus le champ TTY est sous la forme d'un nombre et non d'un texte comme dans la commande ps -aux.

Blagounette

Comment appelle-t-on un combat entre un petit pois et une carotte ?

Un bon duel !