2 dépôts
The core processor loop of retrieving, decoding, and executing machine instructions.
Distinct from Instruction Fetch Units: Shortlist candidates focused on hardware front-ends or software simulation models rather than the architectural cycle itself.
Explore 2 awesome GitHub repositories matching operating systems & systems programming · Fetch-Execute Cycles. Refine with filters or upvote what's useful.
Ce projet est une collection de documentation technique et de guides conçus comme un explicateur d'architecture informatique. Il fournit des ressources éducatives sur la façon dont les processeurs et les systèmes d'exploitation exécutent les programmes, en se concentrant sur le cycle fetch-execute et la relation fondamentale entre le matériel et le noyau (kernel). La documentation couvre un large éventail d'opérations système de bas niveau, incluant des guides détaillés sur le format binaire exécutable et liable (ELF), la gestion de la mémoire virtuelle et les opérations au niveau du noyau. Elle explore spécifiquement la mécanique de l'ordonnancement CPU, le multitâche préemptif et l'utilisation d'interruptions de minuterie pour gérer l'exécution des processus. Le matériel explique plus en détail les flux de travail de gestion de la mémoire tels que la traduction d'adresses, la pagination à la demande et le partage de pages copy-on-write. Il couvre également la sécurité et le contrôle d'accès via la gestion des privilèges du processeur et l'application des permissions de pages mémoire, ainsi que l'interface d'appels système utilisée par les programmes en espace utilisateur pour demander des opérations privilégiées au noyau. Les guides détaillent également le cycle de vie de l'exécution des programmes, de la séquence de démarrage initiale et du chargement binaire au remplacement de processus et au bootstrapping des processus userland.
Explains the fundamental processor loop that retrieves machine code from memory and updates hardware registers.
Ce projet est un environnement éducatif basé sur le web conçu pour simuler l'architecture de processeur 8 bits et l'exécution en langage assembleur. Il fonctionne comme une machine virtuelle qui traduit le code assembleur symbolique en instructions machine, permettant aux utilisateurs d'observer le cycle fetch-decode-execute et son impact sur l'état du système en temps réel. Le simulateur se distingue par une interface réactive qui lie les affichages visuels des registres et de la mémoire directement à l'état du processeur sous-jacent. Il incorpore un assembleur en deux passes qui gère la résolution des étiquettes symboliques et le mappage des adresses mémoire, fournissant un moyen structuré d'organiser et de naviguer dans les programmes assembleur. Les utilisateurs peuvent contrôler la fréquence d'horloge du processeur virtuel, leur permettant de rythmer l'exécution des instructions pour une observation et un débogage détaillés. L'application fournit une suite complète d'outils pour surveiller les drapeaux internes du processeur, les valeurs des registres et le contenu de la mémoire. Elle prend en charge un formatage de données flexible pour la mémoire et les registres, permettant aux valeurs d'être visualisées en notation hexadécimale ou décimale. L'environnement est construit comme une application basée sur navigateur, facilitant l'étude des concepts informatiques de bas niveau et de la logique des systèmes embarqués sans nécessiter de matériel externe.
Implements a fetch-decode-execute loop to simulate the core operation of a processor.