Salut !
je me pose actuellement la question. Que pensez vous de l'aprentissage de la manipullation de la memoire en mode réel ? (B800, 13H ...)
Penseriez vous tous que ca n'a plus aucun intéret ? meme pédagogique ? conceptuel ?
++ Tix.
Salut !
je me pose actuellement la question. Que pensez vous de l'aprentissage de la manipullation de la memoire en mode réel ? (B800, 13H ...)
Penseriez vous tous que ca n'a plus aucun intéret ? meme pédagogique ? conceptuel ?
++ Tix.
resalut
Je pense qu'une petite explication de votre point de vue étofferait l'intéret de ce sujet .
merci, ++ Tix.
l'explication du mode reel 16 bits as tout a fait sa place dans un cour de systéme de nos jours.
c'est pédagogique, et ça peux se révéler utile selon ce qu'on as a coder
Je sais que l'on parle de plus en plus des langages de troisième génération, et qu'on a, pour certains, tendance à ne plus envisager que les langages OO... Mais...
Il n'empeche que, à mon sens, le mode reel garde toujours l'avantage de permettre de comprendre ce qui se cache derrière une fonction particulière, et que ce n'est pas sans intéret
Je trouve justement que c'est le plus grand problème de l'informatique ces temps ci.
Au départ, nous avions une vue très proche du hardware dans notre activité. Les outils était peu nombreux et c'était un peu à la sioux.
Je travaille depuis 5 ans dans l'informatique mais j'ai retrouvé dans une boite ou j'ai bossé des procédures de modifications en mémoire d'applications en assembleur! Aujourd'hui, ca n'existe plus.
Nous nous sommes éloignés de plus en plus du coeur du système pour avoir une couche supérieure.
Je ne nie pas les avantages, le developpement est plus rapide parce qu'une couche prépare et gère les interactions entre notre code et le coeur.
Je dirais même heureusement. Sinon les temps de developpement n'en serait que plus allongé.
Le revers de cet éloignement, c'est que je rencontre plein de developpeur, qui n'ont aucune idée de ce qu'il se passe derrière la barrière.
- Vas y, je fais mon code, j'appuye sur compiler, j'ai pas d'erreur, je lance et après j'appelle l'administrateur système pour qu'il pédale plus vite !
Pour prendre un exemple, c'est comme si un pilote de formule 1 ne savait pas comment fonctionne une voiture.
Donc oui, il est bon qu'on vous apprenne le mode réel et même plus généralement, tout ce qui passe à partir du moment ou on execute du code.
Je crois que l'on confond deux choses : le mode réel n'est en aucun cas plus proche de la machine ou de l'OS que ne l'est le mode protégé.
Le mode réel n'est qu'un mode de fonctionnement du processeur particulier garantissant la compatibilité avec les vieilles applications 16 bits de DOS. Rien de plus, rien de moins.
Sous Linux et la plupart des Unix, il est impossible de faire du mode réel... et c'est tant mieux. Sous windows, le mode réel est toujours disponible, signe que le spectre de DOS est toujours là, un peu plus caché, mais toujours là tout de même.
La pratique de l'assembleur en mode réel est en tous point dégoûtante et abjecte : le mode protégé est, pédagogiquement parlant, 1000 fois mieux. En réalité, je pense qu'il faudrait enseigner l'assembleur tel qu'il est de nos jours craché par les comilateurs (sans optimisations activées, tout de même) : c'est très carré. Je pense aussi qu'il est important de sensibiliser les programmeurs destinés à produie du code haute performance et multimédia sur l'intérêt du jeu d'instruction SSE 1, 2 et 3, la manipulation des registres XMMS, etc... car ce sont des choses que les compilateurs sont incapables d'engendrer de façon efficace et dynamique.
J'avais fait un test un jour : programmer en assembleur une addition de deux vecteurs simple précision à l'aide de SSE3, puis comparer avec du code C ultra optimisé faisant le même boulot, produit avec gcc en activant toutes les optimisations qui allaient bien. Le facteur de gain de performance était supérieur à 2 ! d'où le grand intérêt de ces possibilités vraiment mal exploitées de nos chers x86 d'aujourd'hui.
Ha, là, sans remettre en cause des choses qui me dépasses surement, je pense qu'il ya matiere a controverses. Je code en pure amateur depuis quelques années, j'ai commencé a touché au mode réel en basic, puis en C, et je pense que le mode réel est effectivement beaucoup plus proche du hardware. peu etre pas de l'OS certe.le mode réel n'est en aucun cas plus proche de la machine ou de l'OS que ne l'est le mode protégé.
voilivoilou merci a tous les participants
Bonjour,
C'était vrai sous Windows 9x, ça ne l'est plus sous les noyaux NT (NT / 2000 / XP / 2003).Sous windows, le mode réel est toujours disponible, signe que le spectre de DOS est toujours là, un peu plus caché, mais toujours là tout de même.
Les programmes 16 bits sont exécutés sous une machine virtuelle (NTVDM) et non directement (cette machine virtuelle a été supprimée sous Vista.) Il n'y a plus d'accès direct aux constituants matériels et les anneaux de protections (Ring) interdisent tout accès non autorisé.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager