Tout ce que l'on me dit, c'est que le SEULEMENT façon de faire du multitraitement dans le langage d'assemblage est d'utiliser les appels du système d'exploitation, ce qui rend impossible de le faire depuis le langage assembleur. Mais disons que je faisais mon propre système d'exploitation. Comment utiliser le langage d'assemblage pour utiliser plusieurs processeurs? Je sais que c'est possible sinon aucun ordinateur ne serait capable de le faire. Je ne sais pas comment le faire et je ne peux pas trouver de bonnes ressources pour cela.Comment implémenter le multitraitement dans la langue de l'assemblage?
Répondre
Fondamentalement, vous devez configurer un minuteur d'interruption, qui se déclenche chaque N intervalls. Dans ce cas, vous sauvegardez l'état du processeur, comme les registres et les indicateurs, chargez le nouvel ensemble à partir d'une tâche différente et laissez-le continuer. C'est la partie facile d'un planificateur. :)
Si vous voulez vraiment faire du multitraitement, en détail, alors vous devriez vraiment regarder dans les sources pour le noyau Linux.
J'aime cette réponse. Merci :) – Firstpick5
Je crois cependant que le noyau Linux est écrit dans le langage de programmation C ...:/Y a-t-il un moyen de changer le code C en Assemblage en le compilant? – Firstpick5
Bien sûr, vous pouvez le traduire en ASM. C'est ce que le compilateur fait aussi. :) Votre question est un peu vague, donc il est difficile de donner une réponse correcte. Si vous voulez juste faire des tâches, alors c'est plutôt facile. Je l'ai fait dans mes premiers jours sur la plate-forme DOS et même sur le C64. La partie la plus difficile est quand il s'agit de gérer les périphériques et de les faire se comporter correctement dans toutes les situations possibles, ou, en faisant un système d'exploitation, faire une bonne configuration en mode protégé. Un autre code pour regarder dans, pourrait être ReactOS. Je ne sais pas combien de montage il y a, mais pour le boostrapping c'est probable. – Devolus
- 1. Comment implémenter la langue bascule dans jsf?
- 2. Comment implémenter la traduction de la langue dans l'application iPhone?
- 3. Comment implémenter une fonctionnalité de sélection comme la sélection de la langue avec le SDK iPhone?
- 4. Impossible d'installer le multitraitement
- 5. Comment implémenter la fonction de traducteur de langue dans une application iphone?
- 6. Python, comment implémenter le processus parallèle
- 7. Comment utiliser le multitraitement en Python dans ce cas?
- 8. Comment utiliser le multitraitement en Python dans une classe
- 9. détection de la langue
- 10. Techniques de débogage multitraitement
- 11. Utilisation de jeux avec le module multitraitement
- 12. Le multitraitement Python n'attend pas
- 13. Erreur de débogage multitraitement
- 14. Langue de changement de langue de codeigniter dans la vue
- 15. Python multitraitement
- 16. Taille de BlockingQueue pendant le multitraitement
- 17. Comment changer la langue affichée dans le rapport de FindBugs
- 18. Problèmes de base avec le multitraitement Python
- 19. Comment quitter une boucle de multitraitement Python?
- 20. Comment activer la navigation dans la langue pour le contenu?
- 21. CherryPy: multitraitement
- 22. Comment implémenter le proxy inverse?
- 23. Comment retourner le texte pour la langue
- 24. RPC pour le multitraitement, les problèmes de conception
- 25. multitraitement Pool.imap cassé?
- 26. WX.Python et multitraitement
- 27. comment définir la langue
- 28. PicklingError lors de l'utilisation multitraitement
- 29. Le multitraitement Python get ne temporise pas
- 30. pourquoi la langue est le changement de l'anglais dans la barre de langue en C#
Il se trouve dans Intel Manuel 3A chapitre 8 – harold
Y a-t-il des exemples d'assemblage que je peux examiner qui implémente cela? Ce serait un grand salut :) Et merci pour ce manuel. Je ne savais pas qu'Intel avait ces ressources: S lol – Firstpick5
Je ne connais aucun exemple montrant cela, mais je suppose que vous pourriez regarder un noyau open source – harold