Sommaire
Transcription
Sommaire
ALSI Notion d’OS 1ère Année Sommaire 1. Notion de Système d’Exploitation ......................................................................... 1 1.1. Définitions.......................................................................................................... 1 1.2. Caractéristiques .................................................................................................. 1 1.3. Rôle .................................................................................................................... 1 1.3.1. Démarrage de l’ordinateur ......................................................................... 1 1.3.2. Gestion des ressources ............................................................................... 1 1.3.3. Fournir des services d’accès aux ressources .............................................. 2 1.3.4. Gérer le dialogue avec les utilisateurs........................................................ 3 2. L’état du marché des OS ........................................................................................ 4 2.1. MS-DOS et Consorts (IBM-DOS, DR-DOS, …) .............................................. 4 2.2. Microsoft Windows............................................................................................ 4 2.2.1. Windows 3.1 et 3.11 for Workgroup.......................................................... 4 2.2.2. Windows 95, 98, Millennium (Me)............................................................ 4 2.2.3. Windows NT .............................................................................................. 5 2.2.4. Windows 2000 Server / 2000 Professionnal .............................................. 6 2.2.5. Windows 2003 Server / XP........................................................................ 6 2.2.6. Windows XP .............................................................................................. 6 2.2.7. Windows Server 2008 (Longhorn)............................................................. 6 2.2.8. Généralités.................................................................................................. 6 2.3. UNIX et LINUX................................................................................................. 7 2.3.1. UNIX.......................................................................................................... 7 2.3.2. Linux .......................................................................................................... 7 2.4. Novell NetWare.................................................................................................. 7 2.5. MacOS................................................................................................................ 8 3. Démarrage d’un ordinateur sous Windows 2003 server ........................................ 9 3.1. Le BIOS.............................................................................................................. 9 3.2. Le POST............................................................................................................. 9 3.3. Le MBR.............................................................................................................. 9 3.4. Le NTLDR ......................................................................................................... 9 3.5. Le BOOT.INI ................................................................................................... 10 3.6. NTDETECT.COM ........................................................................................... 10 3.7. Amorçage du système ...................................................................................... 10 4. Annexes................................................................................................................ 11 4.1. Les bip de démarrage sur PC............................................................................ 11 4.1.1. BIOS AMI ................................................................................................ 11 4.1.2. BIOS AWARD......................................................................................... 11 4.1.3. BIOS PHOENIX PLUS ........................................................................... 11 4.1.4. BIOS PHOENIX 4.0 ................................................................................ 12 4.2. Débloquer les mots de passe des BIOS........................................................... 12 4.2.1. BIOS AWARD......................................................................................... 12 4.2.2. BIOS AMI ................................................................................................ 12 4.2.3. Autres BIOS ............................................................................................. 12 4.3. Le fichier BOOT.INI........................................................................................ 12 ALSI Notion d’OS 1ère Année 1. Notion de Système d’Exploitation 1.1. Définitions Un Système d’exploitation (‘SE’ ou ‘OS’ pour Operating System), est un ensemble structuré de programmes dont le rôle est d’assurer la gestion des divers composants d’un ordinateur afin de permettre l’utilisation de ses ressources. Il sert d’interface entre l’homme et la machine. 1.2. Caractéristiques On distingue plusieurs types d’OS, les mono-utilisateurs, les multi-utilisateurs, monotâches et multitâches. Un système est dit mono-utilisateur lorsqu’il ne gère qu’un utilisateur pour le poste de travail concerné. Il est dit multi-utilisateurs s’il est capable de gérer plusieurs utilisateurs différents sur un même poste de travail. Un système est dit mono-tâche s’il ne permet l’exécution que d’un seul programme, et multitâches si plusieurs programmes s’exécutent simultanément. Le multitâche suppose que la mémoire et les périphériques puissent être partagés pour être utilisés par les programmes. 1.3. Rôle 1.3.1. Démarrage de l’ordinateur Entre la mise sous tension de l’ordinateur et la mise à disposition de l’utilisateur des ressources de l’ordinateur, l’OS prépare les périphériques pour les rendre opérationnels. Cette phase de démarrage est aussi connue sous le vocable anglo-saxon de ‘boot’. C’est pendant cette phase, par exemple, que les périphériques PnP (Plug and Play, littéralement Branchez et Jouez, en fait se sont des périphériques qui sont capables de déterminer eux même leurs paramètres de fonctionnement) sont initialisés. 1.3.2. Gestion des ressources Apres les phases préparatoires et d’activation des périphériques, le système passe en phase de gestion des ressources. Il doit alors affecter ces ressources en fonction des besoins des applications et des quantités disponibles. Parmi les ressources, on trouve les processeurs, la mémoire centrale, les mémoires de stockage, les périphériques. On parle de ressources d’entrée/sortie dés lors qu’il s’agit d’échanger des informations avec l’extérieur. Parmi les principales ressources d’E/S on trouve notamment : les claviers, les souris, les tablettes graphiques, les écrans, les imprimantes, les traceurs, les supports de stockage et de sauvegarde, … Avec un système multitâche, l’OS doit répartir le temps processeur entre les différents processeurs et les différentes tâches du système. Par exemple, lorsque l’utilisateur demande l’exécution d’un programme, il va saisir une commande qui va être interprétée par l’OS. Dans la plupart des cas, cette commande va demander l’exécution d’un programme externe qui est présent sur le disque. L’OS va alors lire sur le disque le fichier programme qui doit être exécuté afin de le transférer en mémoire centrale. (La gestion de l’occupation du disque est assurée par l’OS) Ensuite, l’OS va demander l’exécution du programme par un des processeurs de l’ordinateur. 1/13 novembre 2007 ALSI Notion d’OS 1ère Année Le programme prend alors le nom de processus. Le processus est décomposé en unités d’exécution (un morceau de programme) : le thread. Dans le cas d’un système monotâche, le processus prend tout le temps processeur. Les périphériques (clavier, etc.) sont gérés par les processus d’interruptions (IRQ). Dans le cas d’un système multitâche c’est l’OS qui partage le temps processeur entre les différents processus. Il existe deux types de multitâche. Le multitâche coopératif et le multitâche préemptif. Dans un multitâche coopératif, les applications se chargent elles même de la répartition du temps processeur. C’est l’application qui libère les ressources lorsqu’elle n’en à plus besoin. Si une application se fige, elle perturbe le fonctionnement global de l’ordinateur. Dans ce mode de fonctionnement, les applications se partagent l’espace mémoire, sans protection. Cette implémentation est présente dans les systèmes Windows 16 bits. Dans multitâche préemptif, c’est l’OS qui met les ressources à la disposition des applications, pour un temps donné. Si une application fige, elle perturbe peu le système et dans beaucoup de cas il reste possible de terminer la tâche manuellement. Dans ce mode les applications sont exécutées dans des contextes séparés, dans des zones mémoires protégées. De même, chaque processus en cours d’exécution occupe une partie de la mémoire centrale. L’OS est chargé de maintenir à jour et de gérer en temps réel une carte de l’occupation mémoire. Le système d’exploitation gère les threads. Le multithreading est une architecture logicielle permettant d’effectuer plusieurs tâches en pseudo parallèle. Les threads au sein d’un processus partagent le même espace mémoire. Une machine monoprocesseur supportant cette technologie est gérée comme un véritable environnement multiprocesseur. Le multiprocessing : est l’aptitude du système d’exploitation à gérer plusieurs processeurs présents sur une même machine en répartissant le traitement des processus du système d’exploitation et des applications. On distingue 2 types de multiprocessing : Dans le cas du multiprocessing asymétrique (ASMP) : un processeur est réservé pour le système tandis que les autres sont consacrés aux applications. Dans le cas du multiprocessing symétrique (SMP) : le système d’exploitation et les applications voient leur requêtes d’exécution réparties sur les différents processeurs, mais le système dispose toujours d’un pourcentage minimum pour son exécution. 1.3.3. Fournir des services d’accès aux ressources Le but principal de l’OS est de permettre l’exécution d’autres logiciels (logiciels applicatifs ou applications) qui sont utilisés par les utilisateurs du système informatique. Pour répondre à ce besoin, l’OS est donc constitué de 2 grandes parties : • Une interface externe : l’interface utilisateur, • Une interface interne : l’interface avec les applications. L’interface externe (Interface Homme-Machine ou IHM) peut être non graphique ou mode caractère ou texte (Unix, Linux, MS-DOS, CP/M) ou graphique (Mac OS, Windows, OS/2, …). L’interface interne permet aux applications d’accéder aux différentes ressources de l’ordinateur. Cette interface porte le nom d’API (Application Programming Interface). Elle est très dépendante de l’OS considéré. L’API se présente, en général, sous la forme d’un ensemble de fonctions qui sont invoquées par les programmes. Ces fonctions peuvent être spécifiques à un OS. Dans ce cas, les applications qui les utilisent ne seront pas ‘portables’. 2/13 novembre 2007 ALSI Notion d’OS 1ère Année Une application est ‘portable’ si son code est prévu pour être compilable sur un autre OS. Les applications de ce type sont relativement rares du fait de la diversité des machines et des OS. Cependant, les systèmes ouverts, comme Linux, Free BSD, permettent le développement de telles applications. Beaucoup des applications issues du monde UNIX fonctionnent sur Linux, avec peu ou pas de modifications du code source. 1.3.4. Gérer le dialogue avec les utilisateurs Immédiatement après la mise en place des différentes ressources, l’OS va activer l’interface utilisateur. L’interface la plus simple, en mode caractère, permet à l’utilisateur de saisir des commandes au clavier et d’obtenir les comptes rendus d’exécutions de ces commandes sur le terminal de sortie (en général l’écran). Cette interface simple est présente sur presque tous les OS (par exemple, MacOS en est dépourvu), elle est aussi connue sous le nom ‘d’interface ligne de commande’. L’autre interface que peut présenter l’OS est très répandue de nos jours. C’est une interface graphique. Elle est définie par un espace de travail, généralement appelé ‘Bureau’, sur lequel sont disposés des objets graphiques représentant les applications utilisables. Ces objets graphiques sont appelés ‘Icones’. Pour manipuler ces objets, on peut, évidemment utiliser le clavier, mais celui ci devient vite mal pratique. On utilise donc de préférence un périphérique graphique comme une souris ou une tablette à digitaliser ou un stylet. Les fonctions ou les applications sont exécutées dans des fenêtres, qui peuvent occuper tout ou partie de l’espace de travail. On peut noter que les OS graphiques sont, en général, toujours multitâches. Les comptes rendus d’exécution des fonctions et des applications sont retournés à l’utilisateur dans des fenêtres d’état. 3/13 novembre 2007 ALSI 1ère Année Notion d’OS 2. L’état du marché des OS Cette partie, très datée, présente un panorama rapide des principaux acteurs du marché des OS. Cet état des lieux ne se veut pas une liste exhaustive des différents systèmes existants, et les descriptions qui en sont faites sont sujettes à des modifications et des évolutions constantes par leurs éditeurs ou équipes de développement. 2.1. MS-DOS et Consorts (IBM-DOS, DR-DOS, …) Cet OS est né en 1981, lors du lancement par IBM des premiers micro-ordinateurs de type PC (Personal Computer). Il est dérivé de CP/M un OS modulaire crée en 1974 par la société Digital Research. Ces ordinateurs étaient architecturés autour des processeurs INTEL 8088/8086 dont le mode de fonctionnement (dit Réel) ne peut gérer que 1Mo de mémoire vive. Malheureusement, le microprocesseur utilise le haut de la mémoire (juste au-dessous de 1Mo) pour y stocker et exécuter le BIOS, et IBM a utilisé l’espace mémoire situé encore en dessous de la ROM pour y implanter les espaces d’échanges avec les cartes périphériques (Par exemple, les zones d’adresses de segment $B000-$B7FF, $B800-$BFFF et $A000-$A7FF sont utilisées par les cartes graphiques, la zone $D000-$DFFF était utilisée par les cartes d’extension de mémoire paginée). Au final, la mémoire totale maximale disponible pour le système était réduite à 640 Mo. Cette limite s’applique encore à MS-DOS. Malgré les évolutions successives, MS-DOS est resté très limité par le besoin de compatibilité avec les anciennes versions des applications. La dernière version ‘pure MS-DOS’ est la version 6.22. Bien qu’il s’agisse d’une interface caractère, MS-DOS a servi de support aux premières versions de Microsoft Windows. A partir de Windows 95, MS-DOS, dans sa version 7, n’est plus qu’un accessoire de Windows. Il disparaîtra en tant qu’OS à partir de Windows 98. 2.2. Microsoft Windows 2.2.1. Windows 3.1 et 3.11 for Workgroup Il s’agit des premières interfaces graphiques non dépendantes d’une application pour PC. Ces 2 versions sont des applications MS-DOS, mais elles sont perçues comme un OS graphique par leurs applications filles. En réalité Windows 3.X n’est qu’une interface graphique pour MS DOS. Elles enrichissent MS-DOS d’une gestion plus complète et performante de la mémoire, en permettant d’utiliser le mode protégé de l’architecture x86. Ce mode donne au processeur un accès direct à la totalité de la mémoire installée ainsi que la capacité à contrôler la mémoire virtuelle, dépassant ainsi la limite de 1 Mo imposée par MS-DOS. De plus, Windows gère un pseudo multitâche, en fait une gestion en temps partagé du microprocesseur. La version 3.1 diffère de la version 3.11 l’implémentation des API de gestion de réseau, permettant ainsi aux utilisateurs de partager leurs ressources (espace disque, imprimantes, etc.) et d’utiliser les ressources partagées des autres utilisateurs du réseau local de l’entreprise. Les API développées dans ces interfaces (appelées Windows 3.X) le sont au format 16 bits. C’est un mode de fonctionnement du microprocesseur d’Intel. Ces API 16 bits sont appelées Win16. 2.2.2. Windows 95, 98, Millennium (Me) A partir de Windows 95, on peut considérer que Windows est un OS à part entière, le DOS disparaissant peu à peu derrière l’interface graphique. 4/13 novembre 2007 ALSI Notion d’OS 1ère Année Au vu des similitudes de ces 3 systèmes, on les considère généralement comme équivalent sous le nom générique de Windows 9X. Les API de Windows 9X utilisent le mode 32 bits des processeurs x86, c’est pourquoi on parle d’API Win32. Malgré cela, Windows 9X reste compatible avec les API Win16 de la génération précédente. Le mode 32 bits permet de tirer pleinement parti des possibilités des processeurs les plus récents (à partir du 80386 et jusqu’au derniers Pentium). Dans les fonctions spécifiques apparues avec Windows 95, on note l’apparition de la technologie PnP qui permet la prise en compte avec un minimum d’interventions des périphériques compatibles. L’interface utilisateur est 100% graphique et permet de paramétrer le système d’exploitation sans utiliser la ligne de commande. Même si, avec les dernières versions Windows 98 SE et Windows Me, le DOS a complètement disparu (en tant qu’OS), il reste le langage de commande en mode texte de Windows 9X. Le système est capable de générer une disquette d’amorçage purement DOS avec tous les outils nécessaires au redémarrage d’un système défaillant. Cette disparition permet à Windows 9X de devenir multitâche, et d’avoir des capacités multiutilisateur. Windows 9X dispose d’un multitâche préemptif, mais comme certaines d’application sont en encore basées sur un multitâche coopératif, le risque de blocage de la machine par une application défaillante reste important. 2.2.3. Windows NT Cette version de Windows, destinée aux entreprises, n’a rien à voir avec les précédentes. Elle a toujours été développée comme un OS et bénéficie donc d’une meilleure stabilité, d’une meilleure gestion de la mémoire et du multitâche. Les lettres NT signifient New Technologie pour marquer la différence avec les autres Windows. Elle se décline en 2 produits : • Windows NT SERVER : c’est un OS destiné aux fournir des services partagés sur un réseau local d’entreprise. Il est capable de gérer des utilisateurs, d’assurer la sécurité des données qui lui sont confiées, tant au niveau physique qu’au niveau de leur diffusion. Il peut fédérer plusieurs serveur et stations de travail au sein de groupes de travail ou de domaines. • Windows NT Workstation c’est un OS destiné aux utilisateurs de services réseau, il s’intègre parfaitement dans les structures sécurisées de réseau gérées par Windows NT SERVER. Il peut néanmoins fonctionner en autonomie ou partager ses ressources avec d’autres stations de travail. Il est important de noter que Windows NT n’assure pas la compatibilité avec DOS. Il est, en effet, impossible d’exécuter certaines applications DOS qui utilisent directement (sans passer par les API du système) les périphériques. Windows NT existe sur les architectures I386 (il ne peut pas fonctionner avec les processeurs antérieurs au 80386), mais aussi sur des architectures RISC (à base de processeurs ALPHA de DEC). Il est donc multi-plate-forme. Contrairement à Windows 9X, il est capable de gérer les systèmes multiprocesseurs (ou SMP pour Symetric Multi Processing). 5/13 novembre 2007 ALSI Notion d’OS 1ère Année Afin d’assurer la sécurité et la confidentialité des données, Windows NT dispose de son propre système de gestion de fichiers appelé NTFS (New Technologie File System). Ce système de fichier est plus fiable et plus performant que les systèmes développés pour DOS (FAT) ou Windows 9X (VFAT). Windows NT, en tant que station de travail, est multi-utilisateurs, et il est impossible d’accéder à une session de travail sans s’être identifié. 2.2.4. Windows 2000 Server / 2000 Professionnal C’est la dernière version des produits professionnels de Microsoft. Elle est sortie courant 2000 et se décline, comme Windows NT, en deux produits • Windows 2000 Server : qui remplace Windows NT Server, mais ne reprend pas les structures de sécurité de ce dernier. Cette version voit, en effet, arriver la notion de répertoire de sécurité avec les structures Active Directory. • Windows 2000 Professionnal : qui remplace Windows NT Workstation, et s’intègre parfaitement dans les nouvelles structures Active Directory. Les API de Windows 2000 sont compatibles avec Win32, la compatibilité ascendante est donc assurée sans problèmes majeurs. 2.2.5. Windows 2003 Server / XP C’est la dernière version des produits professionnels de Microsoft. Elle est sortie courant 2000 et se décline, comme Windows NT, en deux produits • Windows 2003 Server : qui remplace Windows 2000 Server. Quatre éditions sont disponibles : la Web Edition, la Standard Edition, la Server Edition et la DataCenter • Windows XP pro : remplace Windows 2000 Pro. Il existe également une version XP Family. Les API de Windows XP sont compatibles avec Win32, la compatibilité ascendante est donc assurée sans problèmes majeurs. Windows 2003 est un système d’exploitation 32 bits (et existe aussi avec un noyau 64 bits) qui utilise le multitâche préemptif et multithread ainsi qu’une architecture SMP. 2.2.6. Windows XP Windows XP est fourni en version ‘familiale’ et ‘professionnelle’. En version familiale, cette version remplace Windows Millenium. Elle s’appuie sur la technologie NT et rompt définitivement avec MS-DOS. Les applications purement MS-DOS, qui fonctionnent en mode réel, ne sont plus maintenues, la compatibilité n’est plus assurée. La version Windows XP Server date de fin 2002. 2.2.7. Windows Server 2008 (Longhorn) La particularité de Windows Server 2008 sera de pouvoir virtualiser des serveurs sur une machine (Windows Server (WSv)). Ceci permettra une meilleure sécurité des services, la capacité des machines étant devenue très importante, une bonne partie du processeur n’était pas utilisée dans les versions précédentes, avec cette version elle permettra d’héberger plusieurs serveurs. 2.2.8. Généralités La programmation des applications faisant appel aux API Win32 permet de rendre ces programmes portables par recompilation sur toutes les plates-formes qui peuvent exécuter Windows. 6/13 novembre 2007 ALSI 1ère Année Notion d’OS Les fonctionnalités de sécurité présentes sur Windows NT/2000 en font des produits professionnels, alors que Windows 9X reste un produit familial et grand public. Windows Millenium va disparaître au profit de ‘Windows XP Family Edition’. Alors que Windows 9X est mono utilisateur à la base, Windows NT est Multi utilisateurs. Tout comme Windows NT, Windows 2000/2003/XP est multi utilisateurs. Sur les plates-formes Windows NT/2000/2003, l’OS est capable de gérer des restrictions aux ressources internes et partagées du système en fonction de l’utilisateur. Ces restrictions peuvent être centralisées (utilisation des versions Server avec la gestion des domaines sous NT et d’Active Directory sur 2000/2003) 2.3. UNIX et LINUX 2.3.1. UNIX Unix est un OS mixte qui peut se trouver aussi bien sur un serveur que sur une station de travail. C’est un environnement multitâche basé sur un noyau. La gestion du multitâche est de type préemptif et Unix est réputé pour sa très grande stabilité. Contrairement à Windows, Unix ne comporte pas d’interface graphique d’administration intégrée. Il se gère et se paramètre à l’aide de fichiers texte, ce qui en fait un système très souple, mais aussi très complexe. Sur les stations de travail, on trouve diverses interfaces graphiques qui sont toutes basées sur une même norme appelée Xwindows. Ces interfaces graphiques fonctionnent sur la base du client serveur et on peut donc travailler à distance en mode graphique sur une station comme si on s’y trouvait physiquement. 2.3.2. Linux Linux est un OS construit sur la même base qu’Unix. Il adopte les même principes et modes de fonctionnement, mais contrairement à son ‘grand frère’, il peut fonctionner sur des stations de travail de type PC. Son principal avantage est son prix, … il est gratuit car il bénéficie d’un mode particulier de diffusion : la licence Open Source. Le système Linux n’est pas protégé et son code source, écrit en langage C est public. Tous les développeurs peuvent apporter leur contribution à l’évolution de Linux, il n’existe pas de société ou d’entreprise propriétaire du système Linux. Cet avantage est aussi un inconvénient et un frein à sa diffusion dans les entreprises car la maintenance est effectuée par une communauté hétérogène et non clairement identifiée. Pour favoriser le développement de Linux et des logiciels libres qui en découlent, diverses sociétés se sont créées pour fournir ce qui manque aux entreprises : le Service. Elles proposent donc des Distributions dont la diffusion est libre et gratuite, mais elles peuvent facturer divers services comme une Hot-line, la fourniture de documentation écrite, de pilotes, … Les systèmes Unix et Linux sont sécurisés au niveau Utilisateur, c’est à dire que se sont des OS multi-utilisateur capable de sécuriser l’accès aux ressources internes et partagées du système. 2.4. Novell NetWare Novell Netware est un OS réseau concurrent direct de Windows NT/2000 Serveur. Contrairement aux OS cités précédemment, il ne fournit pas d’OS pour les stations de travail mais uniquement des services réseaux. Les clients qui se connectent aux serveurs peuvent être des stations Unix, des stations DOS, des stations Windows 9X, Windows NT/2000 Professionnel/Serveur, … Pour chaque système d’exploitation client il suffit d’avoir le client de connexion qui assurera l’ouverture de session et la gestion de la sécurité d’accès aux ressources. Novell NetWare est, par définition, un système multi-utilisateur. 7/13 novembre 2007 ALSI Notion d’OS 1ère Année 2.5. MacOS C’est le ‘modèle’ des interfaces graphiques sur micro-ordinateur. Il est apparu en 1984. C’est le système d’exploitation propriétaire par excellence. Il ne fonctionne que sur les platesformes Apple. 8/13 novembre 2007 ALSI Notion d’OS 1ère Année 3. Démarrage d’un ordinateur sous Windows 2003 server Voici les principales étapes qui jalonnent le parcours de démarrage (boot) d'un ordinateur. 3.1. Le BIOS Dès la mise sous tension, le processeur exécute un jeu d’instructions de base situé en mémoire morte (ROM -Read Only Memory). Ce jeu d’instructions se nomme BIOS (Basic Input-Output System), il est propre à chaque constructeur et assure l'initialisation des composants matériels. La première tâche du BIOS consiste à tester l'environnement matériel (bus, horloge interne, carte vidéo, mémoire RAM, clavier, disques). Cette étape s'appelle POST -Power On Self Test). 3.2. Le POST La configuration trouvée est comparée au contenu de la mémoire CMOS (Complementary Metal Oxide Semiconductor) qui est permanente mais modifiable. Cette mémoire contient la dernière configuration connue, informations conservées dans un petit espace mémoire (64 octets) alimentée par une pile. Aujourd’hui il n'y a plus de piles sur les cartes mères des ordinateurs, mais un accumulateur. L'accumulateur est rechargé chaque fois que l'ordinateur est mis en marche. En cas de différence entre la configuration détectée et la configuration mémorisée, une erreur est signalée. Si le BIOS utilise la technologie Plug and Play, les changements matériels peuvent être automatiquement pris en compte et la configuration mémorisée être ajustée. En cas d'erreur lors du POST, qui peuvent être signalée par une séquence de bips (voir annexe), un programme de configuration matérielle appelé Setup peut être exécuté, il permet à l'utilisateur de définir les caractéristiques physiques des composants installés (type de disque et de disquette, clavier, date et heure, capacité mémoire,...), il permet aussi de choisir certains paramètres de fonctionnement (niveau des tests mémoire, vitesse du processeur, mot de passe...). Les programmes Setup récents disposent d'une documentation en ligne (le plus souvent en anglais) mais l'intervention doit rester très prudente, la moindre erreur peut troubler voire empêcher le démarrage de la machine. Le programme Setup peut être appelé au démarrage par une séquence de touche (de type Ctrl-Echap, Del, F2, F10 …). C'est une bonne idée de noter les paramètres que contient le Setup alors que le poste de travail fonctionne correctement, ceci permettra de rétablir ces paramètres plus tard en cas de difficulté. Une fois cette étape terminée, certain BIOS affichent à l'écran la configuration détectée et émettent un bip sonore pour annoncer le démarrage du système d'exploitation proprement dit. 3.3. Le MBR Le BIOS cherche à lire ensuite un secteur de démarrage (boot sector). Sur disquette d'abord, puis, s'il n'y a pas de disquette dans le lecteur sur CD ou sur disque dur (cette séquence est modifiable dans le setup). L'ordre est important, il explique qu'il est possible de démarrer un ordinateur compatible PC à l'aide d'une disquette ou d’un CD si le disque dur est inaccessible. Le BIOS lit le MBR (Master Boot Record) qui est le premier secteur du disque dur et le charge en mémoire. Le MBR recherche le 1er secteur de la partition amorçable, ce premier secteur charge et exécute le fichier NTLDR. 3.4. Le NTLDR Le Ntldr (bootstrap loader) est chargé en mémoire et initialisé. Ntldr fait passer le processeur du mode réel au mode mémoire linéaire 32 bits (mode protégé). Ntldr démarre les pilotes du système de fichiers approprié (FAT ou NTFS) pour lire le fichier BOOT.ini. 9/13 novembre 2007 ALSI Notion d’OS 1ère Année 3.5. Le BOOT.INI Le fichier BOOT.INI est lu et interprété. Si la machine peut démarrer avec plusieurs systèmes d'exploitation une liste de choix est affichée. L'utilisateur choisit le système avec lequel il souhaite démarrer. Dans la suite, nous supposons que le démarrage avec Windows 2003 a été choisi ou bien, qu'il est seul présent sur la machine. 3.6. NTDETECT.COM Ntldr charge l'OS sélectionné. Si Windows 2003 est sélectionné, Ntldr lance NTDETECT.COM pour découvrir le matériel présent. Ntdetect.com détecte les périphériques matériels installés. A ce moment, il est possible d'utiliser la touche F8 pour demander l'affichage d'un menu de démarrage spécifique à Windows (démarrage normal, avec ou sans pilote, en mode sans échec, avec ou sans réseau etc.). 3.7. Amorçage du système Ntldr charge Ntoskrnl.exe et le fichier Hal.dll. NTLDR va lire la ruche SYSTEM du registre en mémoire et va sélectionner la configuration matérielle et le control set qui sera utilisé pour ce démarrage. Il va aussi créer la ruche HARDWARE dans le registre en utilisant les informations collectées précédemment par ntdetect.com. Ntoskrnl.exe va ensuite initialiser les pilotes de périphériques chargés précédemment. Lorsque la barre devient pleine, alors le système passe d'un mode texte à un mode graphique et l'écran Windows 2003 Server apparaît. Ensuite commence le chargement du processus Session Manager (smss.exe) et le chargement des services. Les services doivent être lancés dans une certain ordre, en fonction de leurs dépendances vis à vis d'autres services. Parallèlement au démarrage des services la fenêtre Winlogon s’affiche permettant une connexion locale à la station de travail. 10/13 novembre 2007 ALSI Notion d’OS 1ère Année 4. Annexes 4.1. Les bip de démarrage sur PC 4.1.1. BIOS AMI o o o o o o o o o o o o o o o o Bips .................................... Erreur 1 Bip court......................... Erreur rafraîchissement RAM 2 Bips court ....................... Erreur de parité RAM 3 Bips court ....................... Erreur dans les premiers 64k de la mémoire 4 Bips court ....................... Erreur dans le module d'horloge 5 Bips court ....................... Erreur d'accès au processeur 6 Bips court ....................... Erreur du processeur lors du test du mode protégé (erreur du Gate20 ou contrôleur du clavier) 7 Bips court ....................... Erreur du processeur 8 Bips court ....................... Erreur d'accès à la mémoire graphique 9 Bips court ....................... La somme de contrôle du BIOS est erronée 10 Bips court ..................... Erreur de la lecture/écriture de la RAM CMOS 11 Bips court ..................... Erreur dans la cache de niveau 2 1 Bip court, 3 Bips long.... Erreur lors du test du DOS et de la mémoire étendue 1 Bip long, 2 Bips court.... Carte graphique absente 1 Bip long, 3 Bips court.... Moniteur absent 1 Bip long, 8 Bips court.... Erreur lors de l'accès à la mémoire graphique 4.1.2. BIOS AWARD Bip...................................... Erreur 1 Bip court......................... Fonctionnement normal 2 Bips court ....................... Erreur normalement signalée à l'écran. Le processus de boot continue en appuyant sur F1 o 1 Bip long, 2 Bips court.... Erreur d'accès à la carte graphique o 1 Bip long, 3 Bips court.... Erreur d'accès au contrôleur clavier o o o 4.1.3. BIOS PHOENIX PLUS o o o o o o o o o o o o o o o o Bips .................................... Erreur 1-1-3 ................................... Erreur dans le CMOS 1-1-4 ................................... Erreur de la somme de contrôle du BIOS 1-2-1 ou 4-2-1 ou 4-3-2 ..... Erreur dans la module d'horloge 1-2-2 ................................... Problème lors de l'initialisation du contrôleur DMA 1-2-3 ................................... Erreur lors de l'écriture de la lecture des pages DMA 1-3-1 ................................... Erreur de rafraîchissement de la RAM 1-3-3 ou 1-3-4 ou 1-4-1 ..... Erreurs dans les premiers 64ko de la RAM 1-4-2 ................................... Erreur de parité dans les premiers 64ko de la RAM 3-1-1 ou 3-1-2 .................... Erreur dans le contrôleur DMA 3-1-3 ou 3-1-4 .................... Erreur dans le contrôleur d'interruption 3-2-4 ................................... Erreur de contrôleur du clavier 3-3-4 ou 3-4-1 .................... Erreur d'accès à la carte graphique 3-4-2 ................................... Erreur lors du test "pilotage de l'écran" 4-2-2 ................................... Test "Shutdown/Restart" 4-2-3 ou 4-2-4 .................... Erreur lors du test du mode protégé 11/13 novembre 2007 ALSI o o o o o 1ère Année Notion d’OS 4-3-1 ................................... Erreur au-delà des 64 premiers ko de mémoire 4-3-4 ................................... Erreur dans l'horloge temps réel 4-4-1 ................................... Erreur lors du test de l'interface série 4-4-2 ................................... Erreur lors du test de l'interface parallèle 4-4-3 ................................... Erreur lors du test du coprocesseur 4.1.4. BIOS PHOENIX 4.0 o o o o o o o Bips .................................... Erreur 1-2-2-3................................ Erreur de la somme de contrôle du BIOS 1-2-3-1................................ Erreur dans la module d'horloge 1-2-3-3................................ Erreur du contrôleur DMA 1-3-1-1................................ Erreur de rafraîchissement de la RAM 1-3-3-1................................ Erreur de la RAM 1-4-2-1................................ Erreur dans le CMOS 4.2. Débloquer les mots de passe des BIOS 4.2.1. BIOS AWARD Pour outrepasser le mot de passe du BIOS AWARD sans démonter le PC, on peut essayer d’utiliser la back door installée. Le password utiliser est ‘AWARD_SW’. 4.2.2. BIOS AMI Pour outrepasser le mot de passe du BIOS AMI sans démonter le PC, on peut essayer d’utiliser la back door installée. Le password utiliser est ‘AMI_SW’. 4.2.3. Autres BIOS Si les 2 méthodes ci-dessus ne fonctionnent pas il reste une autre méthode, qui utilise les ports d’entrée sortie affectés à la mémoire CMOS. Démarrer sous DOS et lancer l’utilitaire ‘debug’. A l’invite saisir : o 70 20 o 71 66 et quitter avec q les commandes vont écrire la valeur 0x20 dans le port d’I/O 0x70 puis 0x66 dans le port 0x71. 4.3. Le fichier BOOT.INI [boot loader] Timeout = 30 Default = multi (0) disk (0) rdisk (0) partition (1) \ WINDOWS [operating systems] multi (0) disk (0) rdisk (0) partition (1) \ WINDOWS=”Windows server 2003”, enterprise” /noexecute=optout /fastdetect DEFAULT spécifie le système d'exploitation par défaut. DISK (y) = spécifie l'unité logique utilisée il correspond pour les adaptateurs SCSI multibus au numéro de bus. Il vaut toujours zéro pour les contrôleurs MULTI. 12/13 novembre 2007 ALSI Notion d’OS 1ère Année /FASTDETECT à NTDETECT.COM d'ignorer la détection des périphériques plug and play. Si vous omettez /FASTDETECT, NTDETECT.COM recherche les ports série. NOEXECUTE la prévention de l'exécution des données est activée. Cela empêche l'exécution de code dans les zones de la mémoire "protégées". Cela permet d'éviter les attaques provoquées par ses virus et autres qui peuvent exécuter des lignes de code à partir d'emplacements mémoire réservés au système d'exploitation et aux programmes "sûrs". PARTITION(n) = n indique le numéro de la partition où est installé le système d’exploitation, de 1 à n sur le disque. RDISK (z) = z indique le numéro de disque physique sur l’adaptateur pour les composants multi. Il vaut zéro pour les disques SCSI. TIMEOUT spécifie le temps d'attente avant que le système d'exploitation par défaut démarre. Dans notre exemple, le temps d'attente est de 30 secondes. SCSI (x) ou MULTI(x) = La valeur x désigne le numéro de contrôleur matériel SCSI dans l’ordre d’initialisation. On notera que certains disque SCSI apparaissent sous l’appellation MULTI (ceux dont le BIOS du contrôleur SCSI n’a pas été désactivé), suivant le mode de gestion du BIOS. 13/13 novembre 2007