pdfextract
This commit is contained in:
59
docs/notes/cadrage-ft-linux-en-attente.md
Normal file
59
docs/notes/cadrage-ft-linux-en-attente.md
Normal file
@@ -0,0 +1,59 @@
|
||||
# Note figée — cadrage ft_linux (non exécuté)
|
||||
|
||||
Statut : **en attente**. Rédigée le 23 octobre 2026, avant toute arborescence de rendu.
|
||||
On y revient après l’alignement avec le binôme (QEMU déjà choisi de son côté, puis KFS-1 et KFS-2 en duo).
|
||||
|
||||
Le lot décrit ci-dessous n’a pas été créé. Les sujets, eux, sont extraits dans `docs/sujets/`.
|
||||
|
||||
Point déjà périmé dans ce texte : le choix « VirtualBox + image `.vdi` ». Le binôme est parti sur QEMU. KFS suggère KVM. Ce choix se retranchera avec le questionnaire, pas avec cette note.
|
||||
|
||||
---
|
||||
|
||||
## Texte figé de la proposition initiale
|
||||
|
||||
Le sujet est **ft_linux** (version 3.6) : construire une distribution Linux minimale, dans une machine virtuelle, qui servira de base aux projets noyau. Le lot ci-dessous est le cadrage seulement.
|
||||
|
||||
### Ce que le PDF impose
|
||||
|
||||
Objectifs : compiler un noyau, installer les binaires listés, une hiérarchie de fichiers conforme aux standards, et un accès à Internet.
|
||||
|
||||
Contraintes notables :
|
||||
|
||||
- VM obligatoire (VirtualBox ou VMware). Le dépôt école reçoit un **checksum** de l’image disque (`shasum < disk.vdi`), pas la VM.
|
||||
- Noyau **≥ 4.0**, sources dans `/usr/src/kernel-$(version)`.
|
||||
- Au moins trois partitions : racine, `/boot`, swap.
|
||||
- Chargeur de modules (exemple du sujet : udev).
|
||||
- Version du noyau contenant le login : `Linux kernel 4.1.2-<login>`.
|
||||
- Hostname = login étudiant.
|
||||
- 32 ou 64 bits, au choix.
|
||||
- Gestion du système type SysV ou systemd.
|
||||
- Bootloader (LILO ou GRUB). Binaire : `vmlinuz-<linux_version>-<login>`.
|
||||
- Liste de paquets du chapitre IV (Acl, Bash, GCC, Glibc, GRUB, Sysvinit, Vim, etc.). `vim`, `bash`, `grub` et `udev` sont des exemples remplaçables par un équivalent.
|
||||
- Pour l’évaluation : pouvoir télécharger des sources (curl, wget ou équivalent) et installer des paquets.
|
||||
- Bonus (X, gestionnaire de fenêtres, etc.) seulement si l’obligatoire est parfait.
|
||||
|
||||
Les liens du PDF pointent vers LFS stable (« The Bible »), le FHS 3.0, la LSB, POSIX et le manuel Automake. Pas de maquette ni de schéma technique : les images sont le visuel de couverture et le fond de page 42.
|
||||
|
||||
### Lot prévu après accord (toujours pas lancé)
|
||||
|
||||
**Dépôt de travail** (racine) : `README.md`, `.gitignore`, et `docs/` (méthode recopiée, sujet, pédagogie).
|
||||
|
||||
**Sujet** : le PDF dans `docs/sujets/originaux/ft_linux_subject.pdf`. Traduction dans `docs/sujets/ft_linux.md`.
|
||||
|
||||
**Cadrage** dans `docs/pedagogie/` : reprise, cahier des charges, architecture, feuille de route, protocole de test manuel. Pas de `ui.md`. Fiche dépôt et fiche orale plus tard.
|
||||
|
||||
**Paquet de rendu** `ft_linux/` : README école et `.gitignore`. Pas de `.env.example`.
|
||||
|
||||
Aucun script de build dans ce lot.
|
||||
|
||||
### Sept choix proposés, non validés
|
||||
|
||||
1. Paquet de rendu : `ft_linux/`.
|
||||
2. Git : forme A (dépôt imbriqué dans le paquet, au moment du rendu école).
|
||||
3. Cible : VirtualBox, image `.vdi` hors git, checksum seul dans le dépôt. **À revoir : le binôme utilise QEMU.**
|
||||
4. Chemin calé sur la liste de paquets : LFS en variante SysV, GRUB, eudev, x86_64, trois partitions (`/`, `/boot`, swap). **Le 64 bits est à revoir : KFS impose i386 pour le noyau écrit en duo.**
|
||||
5. Login pour le hostname et le suffixe noyau : `fgras-ca` (déduit du compte, à confirmer).
|
||||
6. Version du noyau non figée. Contrainte du sujet : ≥ 4.0. Numéro exact = celui du livre LFS au moment du build.
|
||||
7. Bonus (serveur X, bureau) hors périmètre tant que l’obligatoire n’est pas bouclé.
|
||||
|
||||
Feuille de route alors envisagée : VM et partitions, paquets dans l’ordre du livre, noyau nommé, GRUB, SysV et eudev, réseau, checklist d’évaluation.
|
||||
46
docs/notes/questionnaire-binome.md
Normal file
46
docs/notes/questionnaire-binome.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Questionnaire binôme — avant de figer ft_linux
|
||||
|
||||
Brouillon à envoyer. Chaque question vient d’un écart possible entre son ft_linux déjà commencé et les sujets d’après (Little Penguin solo, puis KFS-1 / KFS-2 ensemble).
|
||||
|
||||
Les réponses feront bouger la note [cadrage-ft-linux-en-attente.md](cadrage-ft-linux-en-attente.md), surtout les choix 3 (VirtualBox) et 4 (x86_64, SysV).
|
||||
|
||||
---
|
||||
|
||||
Salut, je démarre ft_linux. Tu es déjà parti sur QEMU. Comme on se retrouve sur KFS-1 et KFS-2, je préfère coller à ton environnement là où les sujets d’après nous l’imposent. Tu peux répondre court, même par morceaux.
|
||||
|
||||
## Où tu en es
|
||||
|
||||
1. Tu en es où sur ft_linux (partitions, paquets, noyau déjà booté, réseau) ?
|
||||
2. Quel login tu as mis en hostname, et dans le suffixe du noyau (`Linux kernel <version>-<login>`, fichier `vmlinuz-<version>-<login>`) ?
|
||||
3. Quelle version de noyau (>= 4.0), et les sources sont bien dans `/usr/src/kernel-$(version)` ?
|
||||
|
||||
## Machine virtuelle
|
||||
|
||||
4. Quelle commande QEMU tu lances (`qemu-system-i386` ou `qemu-system-x86_64`) ? KVM activé ou non ?
|
||||
5. Firmware : BIOS (SeaBIOS) ou UEFI (OVMF) ? KFS-2 déclare la GDT au BIOS, et KFS-1 demande GRUB + en-tête multiboot sur une petite image.
|
||||
6. Format du disque (qcow2, raw, autre) ? ft_linux demande un checksum de l’image, l’exemple du sujet est `shasum < disk.vdi`. Tu comptes rendre le checksum de quel fichier ?
|
||||
7. Taille du disque, et partitions exactes (au minimum `/`, `/boot`, swap) ?
|
||||
|
||||
## Bits et toolchain
|
||||
|
||||
8. Ta distro est en 32 ou en 64 bits ? ft_linux laisse le choix. Le noyau qu’on écrira en KFS doit être i386. Si tu es en 64 bits, est-ce que ta toolchain peut déjà produire de l’i386 (`gcc -m32`, binutils, nasm) ?
|
||||
9. Tu compiles avec quoi (gcc, clang, autre) ? L’auteur des sujets KFS dit utiliser gcc et nasm. Tu as déjà nasm, ou tu comptes un autre assembleur ?
|
||||
|
||||
## Boot et services
|
||||
|
||||
10. Bootloader : GRUB ou autre ? Installé en BIOS legacy ?
|
||||
11. Init : SysV (le sujet liste Sysvinit) ou systemd ? Chargeur de modules : eudev, autre udev, mdev ?
|
||||
12. Ta config noyau a les modules, l’USB et `CONFIG_DEBUG_FS` ? Little Penguin s’en sert (clavier USB, debugfs, `/proc`).
|
||||
|
||||
## Installer la suite
|
||||
|
||||
13. Comment tu ajoutes un paquet qui n’est pas dans la liste du sujet ? Git n’y est pas, et Little Penguin commence par un clone de l’arbre de Linus, puis linux-next.
|
||||
14. Tu as déjà curl ou wget, et un accès Internet depuis la VM ?
|
||||
|
||||
## Duo KFS
|
||||
|
||||
15. Pour KFS, tu vises quel langage ? Le sujet n’impose rien. Les exemples de doc sont en C, les flags cités sont ceux du C++ (`-fno-exception`, `-fno-rtti`, `-nostdlib`, etc.). Rust ou un autre langage, il faut le décider avant d’écrire KFS-1 : KFS-2 reprend ce code.
|
||||
16. Tu sépares déjà le gros disque de la distro et la future image de 10 MB max (code + Makefile + GRUB) que KFS demande de rendre ?
|
||||
17. Pour le dépôt du duo : un repo à deux, à partir de KFS-1 ? Tu as déjà un squelette (Makefile, script de lien, boot ASM) ?
|
||||
|
||||
Mon login côté hostname sera le mien, pas le tien. Les projets solo gardent chacun leur login (`/dev/fortytwo` en Little Penguin). On ne le grave pas dans le code KFS.
|
||||
Reference in New Issue
Block a user