IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation d'OS Assembleur Discussion :

Comment éteindre l'ordinateur en Assembleur avec l'ACPI


Sujet :

Programmation d'OS Assembleur

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 13
    Points : 18
    Points
    18
    Par défaut Comment éteindre l'ordinateur en Assembleur avec l'ACPI
    Bonjour à tous,

    Je suis en train de créer un mini OS, pour arrêter l'ordinateur on peut utiliser deux normes d'alimentation :
    • soit l'APM (Advanced Power Management).
    • soit l'ACPI (Advanced Configuration and Power Interface).


    Je sais utiliser seulement l'APM mais comme c'est une norme ancienne, il ne peut être utilisé que dans très peu de PC.

    Est-ce que quelqu'un saurait utiliser l'ACPI ou éteindre l'ordinateur d'une autre manière (ex : via les ports, via une adresse mémoire, ...) ?

    Merci !

  2. #2
    Membre confirmé Avatar de bifur
    passe le balais et l'aspirateur
    Inscrit en
    Mars 2008
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : passe le balais et l'aspirateur

    Informations forums :
    Inscription : Mars 2008
    Messages : 314
    Points : 550
    Points
    550
    Par défaut
    est ce que tu peut décrire la méthode par apm SVP?
    ça m'interresse

    merci d'avance

  3. #3
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 372
    Points : 23 628
    Points
    23 628
    Par défaut
    Bonjour,

    Citation Envoyé par Euquigam Voir le message
    Est-ce que quelqu'un saurait utiliser l'ACPI ou éteindre l'ordinateur d'une autre manière (ex : via les ports, via une adresse mémoire, ...) ?
    C'est assez chiant. Je suis dedans en ce moment, et n'en suis qu'au début. Apparemment, il faut tout initialiser avant de pouvoir s'en servir, fût-ce simplement pour éteindre la machine.

    Citation Envoyé par bifur Voir le message
    est ce que tu peut décrire la méthode par apm SVP?
    ça m'interresse
    On en parlait dans ces deux fils :

    http://www.developpez.net/forums/d94...-off-sous-dos/
    http://www.developpez.net/forums/d60...own-pc-ms-dos/

  4. #4
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Acpi
    Personne n'a une idée pour l'arrêt en mode dos via ACPI ... à moins de passer via un mini OS qui shutdown le pc à la fin , merci de votre aide ^^

  5. #5
    Membre éclairé
    Avatar de edfed
    Profil pro
    être humain
    Inscrit en
    Décembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : être humain

    Informations forums :
    Inscription : Décembre 2007
    Messages : 476
    Points : 701
    Points
    701
    Billets dans le blog
    1
    Par défaut
    j'ai peut être un élément de réponse, mais il est en C, j'y comprend rien alors je te fille le lien directement, et si tu as la chance d'y comprendre quelque chose, fais le savoir en postant un exemple en assembleur.

    http://forum.osdev.org/viewtopic.php?t=16990

    globalement, l'acpi, c'est un périphérique système qui passe le CPU en mode SMM via NMI, afin d'effectuer les taches de gestion de la carte mère., en fouillant dans la doc de ce périphérique, tu devrais arriver à faire quelque chose.

    www.acpi.info/DOWNLOADS/ACPIspec10b.pdf

    ça doit pas être plus compliqué qu'une simple succession de mov.

    bonne chance, car comme toujours, l'anglais est de mise.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 13
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par --1-- Voir le message
    j'ai peut être un élément de réponse, mais il est en C, j'y comprend rien alors je te fille le lien directement, et si tu as la chance d'y comprendre quelque chose, fais le savoir en postant un exemple en assembleur.

    http://forum.osdev.org/viewtopic.php?t=16990
    Le code du lien est très intéressant, cependant il va être assez ch.ant à transformer en Assembleur car il est long et comporte de nombreuses boucles et tests (typiques de l'utilisation de l'ACPI ).
    Je posterai à nouveau lorsque j'aurai réussi à tout transformer en Assembleur (délai : 1-2 mois).

Discussions similaires

  1. [C#] Comment éteindre l'ordinateur par programmation ?
    Par hobotalker dans le forum Windows Forms
    Réponses: 10
    Dernier message: 10/04/2018, 13h25
  2. Comment obtenir l'heure du serveur avec flash ?
    Par Michaël dans le forum Flash
    Réponses: 9
    Dernier message: 23/12/2003, 17h50
  3. Réponses: 2
    Dernier message: 04/11/2003, 12h50
  4. Comment réaliser des modèles de documentations avec XML ?
    Par Dams76 dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 29/08/2003, 02h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo