<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="static/style.xsl"?><OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd"><responseDate>2026-07-16T01:16:06Z</responseDate><request verb="GetRecord" identifier="oai:riubu.ubu.es:10259/11914" metadataPrefix="marc">https://riubu.ubu.es/oai/request</request><GetRecord><record><header><identifier>oai:riubu.ubu.es:10259/11914</identifier><datestamp>2026-07-15T00:05:23Z</datestamp><setSpec>com_10259_9416</setSpec><setSpec>com_10259_5087</setSpec><setSpec>com_10259_2728</setSpec><setSpec>col_10259_9417</setSpec></header><metadata><record xmlns="http://www.loc.gov/MARC21/slim" xmlns:doc="http://www.lyncode.com/xoai" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd">
<leader>00925njm 22002777a 4500</leader>
<datafield tag="042" ind1=" " ind2=" ">
<subfield code="a">dc</subfield>
</datafield>
<datafield tag="720" ind1=" " ind2=" ">
<subfield code="a">González Pampliega, Miguel</subfield>
<subfield code="e">author</subfield>
</datafield>
<datafield tag="260" ind1=" " ind2=" ">
<subfield code="c">2026-05</subfield>
</datafield>
<datafield tag="520" ind1=" " ind2=" ">
<subfield code="a">El objetivo de este trabajo es la concepción y posterior desarrollo&#xd;
de un simulador del microprocesador 80386 desarrollado por Intel.&#xd;
Dicho procesador, también conocido como i386, es un procesador de&#xd;
32 bits. La finalidad del simulador reside en ser utilizado para docencia en varias asignaturas de la titulación de Ingeniería Informática&#xd;
de la Universidad de Burgos u otras universidades. Algunos ejemplos&#xd;
de estas asignaturas podrían ser Fundamentos de Computadores o&#xd;
Ciberseguridad.&#xd;
La idea principal del simulador, es ofrecer una interfaz clara y sencilla&#xd;
al usuario, que permita seguir y comprender la ejecución de programas&#xd;
en ensamblador paso a paso, tanto para aprender cómo funcionan&#xd;
los microprocesadores y su programación, como para entender la&#xd;
explotación de programas vulnerables con CWE conocidos. Esto se&#xd;
consigue a través de la consecución de que el simulador pueda ejecutar&#xd;
ficheros ejecutables compilados para el i386 (o bien ELF32 o bien&#xd;
bytecode ejecutable sin cabeceras).&#xd;
Esta herramienta está concebida para ser ejecutada en un entorno&#xd;
Linux, a través de la línea de comandos. Este entorno resulta ideal&#xd;
por su facilidad para escribir scripts, compilar ejecutables, efectuar&#xd;
redirecciones a descriptores de ficheros, la utilización de tuberías,&#xd;
desensamblar programas en hexadecimal, y sobre todo, para la ejecución de syscalls o llamadas al sistema de Linux usando la ABI del i386.&#xd;
De manera adicional, se ha desarrollado, como otra rama del mismo&#xd;
proyecto, una interfaz gráfica que permite ejecutar el simulador desde&#xd;
el sistema operativo Windows. Esta rama está orientada a la docencia&#xd;
de Fundamentos de Computadores, ya que algunas funcionalidades&#xd;
avanzadas han sido recortadas por su incompatibilidad en Windows.&#xd;
Para ello, el software se implementa como una librería multiplataforma que pueda ser compilada y utilizada de igual manera en&#xd;
distintos sistemas operativos, donde lo único que varía es la interfaz&#xd;
gráfica o la manera en la que se compila el programa final.</subfield>
</datafield>
<datafield tag="520" ind1=" " ind2=" ">
<subfield code="a">The aim of this project is the conception and subsequent development of an Intel 80386 microprocessor simulator. This microprocessor,&#xd;
widely known as the i386, is a 32-bit CPU. The main goal of the&#xd;
simulator is to serve as a teaching resource for several subjects within&#xd;
the Computer Engineering Degree at the University of Burgos (or&#xd;
any other university), including Cybersecurity and Computer Fundamentals.&#xd;
The main idea of the simulator is to provide a clean and intuitive interface to the user, that allows them to follow and comprehend&#xd;
the execution of assembly programs step by step. This makes it possible to learn how microprocessors work (and their programming) while&#xd;
also demonstrating how vulnerable programs, with known CWEs, can&#xd;
be exploited. This is achieved by enabling the simulator to execute&#xd;
both ELF32 and assembly programs.&#xd;
This tool is designed to be run in a Linux environment, through&#xd;
the command line. Such environment is particularly suitable due&#xd;
to its capacity to run scripts, compile object files, use pipes and&#xd;
redirections, disassemble programs to hexadecimal code, and above&#xd;
all, to execute system calls using the Linux i386 ABI.&#xd;
In addition, a Graphical User Interface (GUI) has been developed&#xd;
as another branch of the same project, allowing the simulator to be&#xd;
executed under the Windows operating system. This branch is mainly&#xd;
focused on teaching Computer Fundamentals, since some advanced&#xd;
functionalities have been removed due to their incompatibility with&#xd;
Windows.&#xd;
To achieve this, the software has been implemented as a cross-platform&#xd;
library that can be compiled and used in the same way across different&#xd;
operating systems, where only the graphical interface or the method&#xd;
used to compile the final program varies.</subfield>
</datafield>
<datafield tag="024" ind2=" " ind1="8">
<subfield code="a">https://hdl.handle.net/10259/11914</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Simulador</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Ensamblador</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">i386</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Ciberseguridad</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Compilador</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Llamadas al sistema</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">ABI</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Compilación estática</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">ELF-32</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">CWE</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Exploits</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">32-bit</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Docencia</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Simulator</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Assembly</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Cybersecurity</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Compiler</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">System calls</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Static Compiling</subfield>
</datafield>
<datafield ind1=" " ind2=" " tag="653">
<subfield code="a">Teaching</subfield>
</datafield>
<datafield tag="245" ind1="0" ind2="0">
<subfield code="a">Simulador del microprocesador 80386: un enfoque orientado a docencia</subfield>
</datafield>
</record></metadata></record></GetRecord></OAI-PMH>