Projet de programmation
Bonjour à tous.
Informaticien, je n'ai guère le temps de développer mes propres
logiciels mais
voilà, à force de dépanner les amis et casser Windows
à chaque fois que l'on
fait quelque chose qui ne lui plaît pas, j'ai eu l'idée de
développer ce petit
logiciel :
SOS-Disk
Vous trouverez ci-dessous la décomposition de ce projet.
Pour que celà soit bien et que le projet puisse se faire avec des
consommations de temps personnel minimum, il faudrait être 8
à 10 développeurs et 1 chef de projet (pour l'occasion moi ;-).
Une solution beaucoup moins intéreressante pourrait se baser sur 3
développeurs dont un qui ferait aussi office de chef de projet.
Cette solution utiliserait alors le logiciel Kermit (
sous réserve
).
Une fois terminé, le logiciel sortirait sous licence GPL que je vous
invite à
lire avant même de coder, car il est nécessaire d'ajouter une
entête à chaque
fichier.
Attention, si comme moi, vous êtes dans le métier, il est
nécessaire pour
mettre votre nom sur le logiciel en GPL de demander à votre employeur ou
école
"une renonciation à droit d'auteur"
GPL
dixit.
Je vous laisse lire, si vous êtes intéressé pour prendre
part à ce petit projet,
écrivez-moi
(en indiquant la partie qui vous intéresse).
Quand commencera ce projet ?
Dès qu'il y aura assez de monde ...
Introduction
SOS-Disk sera un logiciel sous licence GPL qui permettra la sauvegarde de
données d'un
disque dur sur un autre (d'une machine sur une autre) sans que pour cela l'un
des deux
systèmes soit opérationnel. Ce logiciel permettra notamment de
sauver les
données lorsque votre Win9x a décidé de se mettre
en carafe.
Principe
Un noyau Linux permet de reconnaître n'importe quel disque quel que soit
la
structure utilisé (FAT16 FAT32 NTFS
). L'idée est de booter
sur une disquette
ou sur un CD-Rom avec un noyau Linux puis à l'aide d'une interface
semi-graphique (Curses) de permettre le transfert de données d'une
machine à
une autre via le port
série le port parallèle ou à l'étude le
réseau.
Mise en fonction & études
Les études suivantes sont nécessaires :
-
Linux embarqué, recompilation du noyau
-
Utilisation de Kermit
-
Dialogue avec le port série
-
Dialogue avec le port parallèle
-
Implémentation du protocole PPP
-
Recherche d'autres protocoles plus simple ?
-
Catalogue de fichiers et de répertoires
-
Lecture de fichiers sur un disque (droits & autre)
-
Interface graphique :
-
Arborescence du disque
-
Choix de fichiers
-
Saisie des paramètres nécessaires au transfert
Langage
Le langage utilisé sera le C++ qui permet une encapsulation de tous les
modules très rapide et propre.
Pour le semi-graphique, la bibliothèque utilisée sera nCurses.