Por favor, use este identificador para citar o enlazar este ítem: https://hdl.handle.net/10259/11914
Título
Simulador del microprocesador 80386: un enfoque orientado a docencia
Director
Fecha de publicación
2026-05
Resumen
El objetivo de este trabajo es la concepción y posterior desarrollo
de un simulador del microprocesador 80386 desarrollado por Intel.
Dicho procesador, también conocido como i386, es un procesador de
32 bits. La finalidad del simulador reside en ser utilizado para docencia en varias asignaturas de la titulación de Ingeniería Informática
de la Universidad de Burgos u otras universidades. Algunos ejemplos
de estas asignaturas podrían ser Fundamentos de Computadores o
Ciberseguridad.
La idea principal del simulador, es ofrecer una interfaz clara y sencilla
al usuario, que permita seguir y comprender la ejecución de programas
en ensamblador paso a paso, tanto para aprender cómo funcionan
los microprocesadores y su programación, como para entender la
explotación de programas vulnerables con CWE conocidos. Esto se
consigue a través de la consecución de que el simulador pueda ejecutar
ficheros ejecutables compilados para el i386 (o bien ELF32 o bien
bytecode ejecutable sin cabeceras).
Esta herramienta está concebida para ser ejecutada en un entorno
Linux, a través de la línea de comandos. Este entorno resulta ideal
por su facilidad para escribir scripts, compilar ejecutables, efectuar
redirecciones a descriptores de ficheros, la utilización de tuberías,
desensamblar programas en hexadecimal, y sobre todo, para la ejecución de syscalls o llamadas al sistema de Linux usando la ABI del i386.
De manera adicional, se ha desarrollado, como otra rama del mismo
proyecto, una interfaz gráfica que permite ejecutar el simulador desde
el sistema operativo Windows. Esta rama está orientada a la docencia
de Fundamentos de Computadores, ya que algunas funcionalidades
avanzadas han sido recortadas por su incompatibilidad en Windows.
Para ello, el software se implementa como una librería multiplataforma que pueda ser compilada y utilizada de igual manera en
distintos sistemas operativos, donde lo único que varía es la interfaz
gráfica o la manera en la que se compila el programa final. The aim of this project is the conception and subsequent development of an Intel 80386 microprocessor simulator. This microprocessor,
widely known as the i386, is a 32-bit CPU. The main goal of the
simulator is to serve as a teaching resource for several subjects within
the Computer Engineering Degree at the University of Burgos (or
any other university), including Cybersecurity and Computer Fundamentals.
The main idea of the simulator is to provide a clean and intuitive interface to the user, that allows them to follow and comprehend
the execution of assembly programs step by step. This makes it possible to learn how microprocessors work (and their programming) while
also demonstrating how vulnerable programs, with known CWEs, can
be exploited. This is achieved by enabling the simulator to execute
both ELF32 and assembly programs.
This tool is designed to be run in a Linux environment, through
the command line. Such environment is particularly suitable due
to its capacity to run scripts, compile object files, use pipes and
redirections, disassemble programs to hexadecimal code, and above
all, to execute system calls using the Linux i386 ABI.
In addition, a Graphical User Interface (GUI) has been developed
as another branch of the same project, allowing the simulator to be
executed under the Windows operating system. This branch is mainly
focused on teaching Computer Fundamentals, since some advanced
functionalities have been removed due to their incompatibility with
Windows.
To achieve this, the software has been implemented as a cross-platform
library that can be compiled and used in the same way across different
operating systems, where only the graphical interface or the method
used to compile the final program varies.
Palabras clave
Simulador
Ensamblador
i386
Ciberseguridad
Compilador
Llamadas al sistema
ABI
Compilación estática
ELF-32
CWE
Exploits
32-bit
Docencia
Simulator
Assembly
Cybersecurity
Compiler
System calls
Static Compiling
Teaching
Materia
Intel 80386 (Microprocesador)
Intel 80386 (Microprocessor)
Simulación por ordenador
Computer simulation
Aparece en las colecciones
Documento(s) sujeto(s) a una licencia Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 Internacional
Ficheros en este ítem
Tamaño:
1.181Mb
Formato:
Adobe PDF
Descripción:
Anexos









