|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() antoine sans Inscription : mars 2012 Messages : 4 ![]() |
Bonjour, je voudrais installer mon bios sur une une carte sd pour obtenir ça :
j'allume, la rom bios du pc lance le bios sur une carte sd, puis mbr etc... Mais dans un premier temps pour ne pas prendre de risque, je récupère le bios de la rom, je la mets sur une carte sd et me boot dessus, le bios se lance 2 fois en fait, pour voir si ça marche. Une idée ? |
|
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() ![]() François conception mécanique Inscription : janvier 2005 Messages : 330 ![]() |
Bien... Le BIOS est utilisé pour la gestion des disques, donc c'est lui
qui permet de booter sur une carte SD, une clé USB, un disque dur..etc... Tu veux faire quoi avec ton BIOS sur support amovible ? |
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() antoine sans Inscription : mars 2012 Messages : 4 ![]() |
Citation:
j'ai récupérer le bios de mon portable sur internet, est-ce que je peux le désasembler avec nasm pour en voir le contenu sous forme compréhensible puis modifier certaines parties, assembler le bios modifié le mettre sur une carte SD et me booter dessus ? Dans un premier temps Et est-ce que le bios est en binaire x86 16 bits ? Est-ce que je peux récupérer le bios 512 kos, je sais que des softs sous windows le permettent, mais sous ubuntu avec la commande DD ? |
|
|
|
00
|
|
|
#4 |
![]() ![]() Chercheur d'emploi Inscription : septembre 2007 Messages : 4 614 ![]() |
Le BIOS est un micro-système d'exploitation qui se trouve en mémoire morte ou dans une mémoire Flash. Il est donc « pré-chargé » puisque, par définition, c'est lui qui contient le minimum vital pour pouvoir lire un disque.
Si tu veux récupérer le BIOS de ta machine, il faut aller lire directement la mémoire au bon endroit (et disposer des privilèges nécessaires sur ton système d'exploitation pour pouvoir le faire). Si tu as récupéré le BIOS de ta machine via Internet, c'est en fait une mise à jour. Ça veut dire que ce que tu as récupéré contient bien le code du BIOS entier, mais encapsulé dans un exécutable qui va aller modifier la mémoire Flash de ta carte-mère. Tu peux effectivement essayer de le désassembler, mais il faudra faire le tri des deux. Ensuite, « booter » sur un BIOS, c'est possible dans l'absolu mais il est fort probable que le code soit dépendant de sa position. Ça veut dire qu'il faudrait charger ton BIOS à l'endroit exact où se trouve l'original, donc en mémoire morte. Enfin, si tu veux embrayer sur un BIOS pour que ton système d'exploitation en tire bénéfice, ça ne fonctionnera pas car il sera écrasé par le chargement de ce dernier. Et l'O.S. est de toutes façons conçu pour continuer à appeler le BIOS original. Tout ça pour dire que, dans l'absolu, si tu veux utiliser un BIOS maison, c'est possible, mais à condition de flasher ta carte-mère avec ta propre version, ce qui est très risqué. |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() antoine sans Inscription : mars 2012 Messages : 4 ![]() |
oui je comprends bien tout ça, le bios que j'ai télécharger fait 512 kos et doit être flash avec un logiciel, je pense donc qu'il est complet. Pour ce qui est de le mettre dans le mbr, je pensais faire quelques modif pour justement éviter les bugs de mauvaises directions et autres (avec un debugger c'est ça ? ), le but étant qu'une fois décompilé, m'approprié petit à petit le code en le modifiant.
|
|
|
00
|
|
|
#6 |
![]() ![]() Chercheur d'emploi Inscription : septembre 2007 Messages : 4 614 ![]() |
Explorer le BIOS de son PC est un très bon exercice, mais c'est très difficile ! Et très long. À titre d'exemple, j'avais désassemblé 32 Ko des ROMs de mon TO8D (un huit bit de 1987) et obtenu 20.000 lignes d'assembleur bien tassé. Même s'il y a de fortes chances pour que les BIOS d'aujourd'hui soient écrits en C, il n'en reste pas moins que leur désassemblage est une tâche considérable, surtout si tu débutes.
En outre, reloger le code ne se fait pas avec un simple débogueur. Il faut modifier le code à la main et c'est quasi-infaisable si tu ne disposes pas des sources et si le code n'est pas fait pour. Heureusement, la plupart du code est fait pour être relogeable par défaut. Sache également, si tu veux vraiment refaire un BIOS maison, que celui-ci n'a pas seulement pour fonction de proposer un micro-système d'exploitation pour démarrer dans de bonnes conditions, mais que c'est aussi lui qui est chargé de mener à bien tous les test à l'allumage et d'initialiser les principaux périphériques. Si tu bootes sur ton BIOS après avoir fait un premier passage, tu risques d'avoir des comportements inattendus. Ensuite, une fois que ton BIOS aura pris la main, il va la passer au programme qu'il doit charger… et celui-ci va ensuite appeler les fonctions du BIOS original. Et bien sûr, il faut faire attention à l'endroit où tu charges ton BIOS, pour qu'il ne soit pas ensuite écrasé par le logiciel qu'il charge. |
|
|
00
|
|
|
#7 |
|
Membre chevronné
![]() être humain Inscription : décembre 2007 Messages : 471 ![]() |
il est possible de lancer un autre "BIOS" avec le bootloader du mbr.
le vrai bios est dans une rom figée, le cpu pointe sur cette rom au reset dont les premières instructions copient la rom en ram puis debranche la rom avant de plonger dans la ram (comme le mbr qui doit se relocaliser avant de pouvoir exploiter les partitions), le bootloader peut charger des données d'un disque et lancer l'execution des données. si tu mets un bios en guise de données, tu auras un nouveau bios, et si tu execute ton nouveau bios, ça fera comme si la machine faisait un reset, elle reinitialisera le materiel, et chargera un mbr sur un disque, si le mbr est le meme à chaque fois, tu auras une boucle sans fin de demarrage du pc. ça peut etre fun. tu peux aussi très bien faire une surcouche du bios, ou meme une extension de bios avec une carte sur bus isa ou pci comme ici http://board.flatassembler.net/topic...=124922#124922 |
|
|
00
|
|
|
#8 | ||
![]() ![]() Chercheur d'emploi Inscription : septembre 2007 Messages : 4 614 ![]() |
Citation:
Citation:
|
||
|
|
00
|
|
|
#9 |
|
Membre chevronné
![]() être humain Inscription : décembre 2007 Messages : 471 ![]() |
ces nuances sont là parce qu'à froid, rien n'est initialisé. mais à chaud, on peut réinitialiser, ça ne pose pas de problème de faire un reset en appuyant sur le bouton reset
après, c'est sur que rien ne garanti qu'un bios rechargé depuis la ram fonctionne sur tout les pc. et tout les bios ne permettent peut etre pas de jouer avec, à cause du materiel sur la carte mère. ça c'est sur. http://stanislavs.org/helppc/cold_boot.html faut tester de toutes façon pour être sur que ça fonctionne comme voulu sur la machine de destination. le boot se relocalise pour pouvoir recharger un secteur de boot. relocaliser le bios serait en fait une copie du fichier bios depuis la ram, dans la zone de bios, et un saut dans cette zone, en désactivant les interruptions of course. la ram ici ferait comme la rom, et serait chargée de la copie. pour l'initialisation, on peut toujours sauter par dessus si on ne veux pas l'exécuter et se contenter de booter avec int19h. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com