| dc.contributor.advisor | Sánchez Ortega, Pedro L. | |
| dc.contributor.author | González Pampliega, Miguel | |
| dc.contributor.other | Universidad de Burgos. Escuela Politécnica Superior | es |
| dc.date.accessioned | 2026-07-14T07:41:47Z | |
| dc.date.available | 2026-07-14T07:41:47Z | |
| dc.date.issued | 2026-05 | |
| dc.identifier.uri | https://hdl.handle.net/10259/11914 | |
| dc.description.abstract | 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. | es |
| dc.description.abstract | 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. | en |
| dc.format.mimetype | application/pdf | |
| dc.language.iso | spa | es |
| dc.rights | Attribution-NonCommercial-NoDerivatives 4.0 Internacional | * |
| dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/4.0/ | * |
| dc.subject | Simulador | es |
| dc.subject | Ensamblador | es |
| dc.subject | i386 | es |
| dc.subject | Ciberseguridad | es |
| dc.subject | Compilador | es |
| dc.subject | Llamadas al sistema | es |
| dc.subject | ABI | es |
| dc.subject | Compilación estática | es |
| dc.subject | ELF-32 | es |
| dc.subject | CWE | es |
| dc.subject | Exploits | es |
| dc.subject | 32-bit | es |
| dc.subject | Docencia | es |
| dc.subject | Simulator | en |
| dc.subject | Assembly | en |
| dc.subject | Cybersecurity | en |
| dc.subject | Compiler | en |
| dc.subject | System calls | en |
| dc.subject | Static Compiling | en |
| dc.subject | Teaching | en |
| dc.subject.other | Intel 80386 (Microprocesador) | es |
| dc.subject.other | Intel 80386 (Microprocessor) | en |
| dc.subject.other | Simulación por ordenador | es |
| dc.subject.other | Computer simulation | en |
| dc.title | Simulador del microprocesador 80386: un enfoque orientado a docencia | es |
| dc.type | info:eu-repo/semantics/bachelorThesis | es |
| dc.rights.accessRights | info:eu-repo/semantics/openAccess | es |
| dc.type.hasVersion | info:eu-repo/semantics/acceptedVersion | es |
Navegar
Todo o repositórioComunidades e ColeçõesPor data do documentoAutoresTítulosAssuntosEsta coleçãoPor data do documentoAutoresTítulosAssuntos




