diff --git a/docs/doxygen/html/compte__rendu__1_8md.html b/docs/doxygen/html/compte__rendu__1_8md.html new file mode 100644 index 0000000..c90a884 --- /dev/null +++ b/docs/doxygen/html/compte__rendu__1_8md.html @@ -0,0 +1,81 @@ + + +
+ + + + +|
+ Seyshell
+
+ |
+
| #define MAX_INODE_NAME 30 | +
|
+ Seyshell
+
+ |
+
+Directories | |
| compte_rendus | |
|
+ Seyshell
+
+ |
+

Functions | |
| int | init_inode_in_disk (disk *d, int inode_index, int filetype, unsigned short perms, int owned_bloc) |
| disk | create_disk () |
| Créer un fichier "disk" de taille MAX_BYTES_PER_BLOC * MAX_BLOCS, renvoi ce disque. | |
| disk | open_disk (char *filename) |
| Si un fichier filename existe, alors on le lit et le stocke en mémoire. | |
| int | find_free_bloc (disk *d) |
| int | find_offset_in_parent_bloc (bloc *parent_bloc) |
| void | create_directory (disk *disk, inode *parent, char *dirname) |
| void | create_file (disk *disk, inode *parent, char *filename) |
| void | create_inode (disk *disk, inode *parent, char inode_type, char *name) |
| void create_directory | +( | +disk * | +disk, | +
| + | + | inode * | +parent, | +
| + | + | char * | +dirname | +
| + | ) | ++ |
Créer un fichier "disk" de taille MAX_BYTES_PER_BLOC * MAX_BLOCS, renvoi ce disque.
| void create_file | +( | +disk * | +disk, | +
| + | + | inode * | +parent, | +
| + | + | char * | +filename | +
| + | ) | ++ |
| void create_inode | +( | +disk * | +disk, | +
| + | + | inode * | +parent, | +
| + | + | char | +inode_type, | +
| + | + | char * | +name | +
| + | ) | ++ |
| int find_free_bloc | +( | +disk * | +d | ) | ++ |
| int find_offset_in_parent_bloc | +( | +bloc * | +parent_bloc | ) | ++ |
| int init_inode_in_disk | +( | +disk * | +d, | +
| + | + | int | +inode_index, | +
| + | + | int | +filetype, | +
| + | + | unsigned short | +perms, | +
| + | + | int | +owned_bloc | +
| + | ) | ++ |
Tout ce qui est en rapport avec les intéractions du disque disk.c
Tout ce qui est en rapport avec les commandes du shell exec.c
diff --git a/docs/doxygen/html/main_8c__incl.dot b/docs/doxygen/html/main_8c__incl.dot index b90cdc0..139922a 100644 --- a/docs/doxygen/html/main_8c__incl.dot +++ b/docs/doxygen/html/main_8c__incl.dot @@ -14,13 +14,15 @@ digraph "src/main.c" Node2 -> Node5 [id="edge4_Node000002_Node000005",color="steelblue1",style="solid",tooltip=" "]; Node5 [id="Node000005",label="struct.h",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; Node5 -> Node4 [id="edge5_Node000005_Node000004",color="steelblue1",style="solid",tooltip=" "]; - Node1 -> Node6 [id="edge6_Node000001_Node000006",color="steelblue1",style="solid",tooltip=" "]; - Node6 [id="Node000006",label="parsing.h",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$parsing_8h.html",tooltip=" "]; - Node6 -> Node3 [id="edge7_Node000006_Node000003",color="steelblue1",style="solid",tooltip=" "]; - Node6 -> Node7 [id="edge8_Node000006_Node000007",color="steelblue1",style="solid",tooltip=" "]; - Node7 [id="Node000007",label="stdlib.h",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "]; - Node6 -> Node8 [id="edge9_Node000006_Node000008",color="steelblue1",style="solid",tooltip=" "]; - Node8 [id="Node000008",label="unistd.h",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "]; - Node1 -> Node3 [id="edge10_Node000001_Node000003",color="steelblue1",style="solid",tooltip=" "]; - Node1 -> Node7 [id="edge11_Node000001_Node000007",color="steelblue1",style="solid",tooltip=" "]; + Node2 -> Node6 [id="edge6_Node000002_Node000006",color="steelblue1",style="solid",tooltip=" "]; + Node6 [id="Node000006",label="string.h",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "]; + Node1 -> Node7 [id="edge7_Node000001_Node000007",color="steelblue1",style="solid",tooltip=" "]; + Node7 [id="Node000007",label="parsing.h",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$parsing_8h.html",tooltip=" "]; + Node7 -> Node3 [id="edge8_Node000007_Node000003",color="steelblue1",style="solid",tooltip=" "]; + Node7 -> Node8 [id="edge9_Node000007_Node000008",color="steelblue1",style="solid",tooltip=" "]; + Node8 [id="Node000008",label="stdlib.h",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "]; + Node7 -> Node9 [id="edge10_Node000007_Node000009",color="steelblue1",style="solid",tooltip=" "]; + Node9 [id="Node000009",label="unistd.h",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "]; + Node1 -> Node3 [id="edge11_Node000001_Node000003",color="steelblue1",style="solid",tooltip=" "]; + Node1 -> Node8 [id="edge12_Node000001_Node000008",color="steelblue1",style="solid",tooltip=" "]; } diff --git a/docs/doxygen/html/md_docs_2compte__rendus_2compte__rendu__1.html b/docs/doxygen/html/md_docs_2compte__rendus_2compte__rendu__1.html new file mode 100644 index 0000000..0f2194e --- /dev/null +++ b/docs/doxygen/html/md_docs_2compte__rendus_2compte__rendu__1.html @@ -0,0 +1,256 @@ + + + + + + + +|
+ Seyshell
+
+ |
+
Membres de l’équipe :
Encadrante : ABOUDA Dhekra
+ Date de remise : 20 avril 2026
Le programme doit permettre à un utilisateur de :
Le système simule une partition de disque dur à travers un fichier. Il s'articule autour de trois couches:
ls, mkdir, etc.) et appelle les primitives.myopen, myread) qui font le lien avec la structure interne.
| Fonctionnalité | Description |
|---|---|
| Shell | Gère les commandes ls, mkdir, rmdir, cat, cp, rm, mv. |
| Gestion Inodes | Attribution et libération d'i-nodes pour fichiers et répertoires. |
| Gestion Blocs | Allocation de blocs de données (contigus ou non) pour le stockage. |
| Arborescence | Gestion des répertoires comme des fichiers spéciaux listant des i-nodes. |
| Persistance | Sauvegarde de l'état complet du disque virtuel dans un fichier binaire. |
| Superbloc (df) | Fournit les infos sur les blocs/inodes libres et l'espace disque. |
grep et find.Le SGF utilise des structures à taille fixe pour simuler la partition .
+int mycreat(char *nom, int mode)** : Crée un fichier et retourne son inode.int myread(int inode, char *buffer, int nombre)** : Lit n octets depuis l'inode.do_ls()** : Lit le répertoire actuel et affiche les noms et inodes associés.do_mkdir(char *nom)** : Crée un i-node de type répertoire et initialise les entrées . et ..L'équipe est divisée en groupe pour assurer l'intégration finale.
+| Phase | Description | Échéance |
|---|---|---|
| Phase 1 | Analyse des besoins et structures de données | 20 avril 2026 |
| Phase 2 | Conception des algorithmes principaux | 2 mai 2026 |
| Phase 3 | Développement du SGF et des primitives | Mai 2026 |
| Phase 4 | Finalisation du Shell et tests de validation | 28 mai 2026 |
| Phase 5 | Soutenance et remise du code source | 29 mai 2026 |
Ce rapport constitue le socle de développement de notre Mini SGF. En respectant une séparation nette entre le stockage, les primitives et l'interpréteur, nous visons une architecture robuste conforme aux attentes. La prochaine étape sera la validation des algorithmes de lecture/écriture.
+|
+ Seyshell
+
+ |
+
| compte_rendu_1 |
Data Fields | |
| char | owned_blocs [MAX_BLOCS] |
| inode | inodes [MAX_INODE] |
| bloc | blocs [MAX_BLOCS] |
| char disk::owned_blocs[MAX_BLOCS] | +