Pocket OS

English version of text


Présentation:

Pocket OS est un sytème d'exploitation dans l'esprit de DOS.

DOS a l'avantage d'être simple et d'avoir une prise en main rapide. Le but poursuivi par Pocket OS et de retrouver ces avantages et d'en supprimer certains inconvénients.

Ainsi Pocket OS a les carractéristiques suivantes:

Pocket OS n'est pas destiné à remplacer un système d'exploitation pour un environnement de bureau, mais est destiné à faire fonctionner une seule application à la fois. Il est principalement destiné à l'embarqué, et permet de développer facilement une application qui fonctionnera sur clé usb ou carte SD.

Test sous Qemu:

Installation sur clé usb (ou autre périphérique amovible) :

Pour installer Pocket OS il faut:

1/ Première étape:

Le programme d'installation n'accepte d'installer que sur un disque de type amovible, ne comprenant qu'une seule partition de type FAT (ou FAT32) et dont le nom de volume est 'Pocket OS'. Il faut donc préparer la clé usb avant l'installation en utilisant l'explorateur Windows. (click droit sur le volume, sélectionner formatter, définit type FAT et nom de volume POCKET OS)

Toutes les données présente sur la clé seront effacées.

2/ seconde étape:

Exemple:

 

Notes:

Une fois que le PC ou émulateur a booté sous pocket OS, les commandes sont:

Développement:

Le développement d'application pour pocket OS peut se fait avec visual studio 6/Express sous windows, ou éventuellement avec le compilateur intégré (TCC). Cependant avec TCC il n'y actuellement pas de débugger. GCC sous windows (mingw) peut aussi être utilisé mais il n'y a pas de débugger non plus.

Pour commencer télécharger l'archive PocketOSdev.zip et la décompresser dans un répertoire (sous windows). Elle contiens des programmes d'exemple avec les fichier projets pour visual 6 et Express.

notes:

  • Chaque exemple de programme est situé dans un répertoire différent. Chaque répertoire contiens les fichiers projets pour visual 6 et visual studio express. Attention, avec visual express, charger le fichier projet .vcproj et non le fichier .dsw (la convertion automatique de projet .dsw en .vcproj ne fixe pas toutes les options nécessaires)
  • Voir le fichier Readme.txt dans l'archive PocketOSdev.zip pour plus d'informations

Informations:

  • Modes graphiques: Le kernel réserve de la mémoire au boot pour le frame buffer et le gestionnaire de fenêtres. Ainsi 28 mo de mémoire sont réservés pour autoriser un mode graphique en 1920*1200*32 bits. Si la machine posséde moins de mémoires, certains modes graphiques ne seront pas disponnibles. Actuellement il n'y a pas de vérification que le moniteurs peut gérer le mode graphique, pour ceux qui utilisent encores des moniteurs CRT, attention de ne pas initialiser un mode qui pourrait endommager l'écran (sur de trés vieux moniteurs)
  • Bios: Pocket OS repasse en mode 16 bits pour acceder au bios dans les cas suivants:
    • Initialiser un mode vidéo en utilisant le bios vesa. (pour éviter les problèmes de pilotes vidéo.)
    • Accés au disque usb. Cela n'est pas très rapide mais résoud les problèmes de pilotes
  • Souris/Clavier: Pocket OS ne gére dans cette version que les claviers/souris en PS2. Si la machine utilise un clavier ou souris en USB il est généralement possible d'émuler le mode PS2 en activant cette option dans le bios du PC. Cependant les émulations BIOS n'émulent généralement pas la roue de la souris, (whell mouse), et certains bios n'émulent que le clavier. Dans le cas ou la souris est absente en mode fenêtré, il est possible de quitter avec les touches ALT+F4

Ce qu'il reste à faire sur la version Beta:

  • Documentations.
  • Programmes d'exemples supplémentaires.
  • Définir l'api pour la programmation d'applications fenêtrées. Ajout des raccourcis clavier pour l'acces aux menus.
  • Initialisation registres MTRR.

Développement futurs:

  • Acfile://C:\hPos\Web\eindex.htmces à la mémoire située au dessus des 4GO. (peut être passage en mode 64 bits)
  • Activer la protection mémoire (paramétrable)
  • Drivers son (en priorité), puis réseau, port série (USB ?).
  • Portage sur processeur ARM

 Bugs: merci de m'envoyer un mail, je ferais une liste et la correction lors de mise à jour.

Documentation:

Téléchargements:

Copie d'écrans:

 console:

Mode fenêtré:


Copyright (c) 2011 Pierre Leroy

Contact: pierrel5@free.fr