Publicado el 20 de Enero del 2019
953 visualizaciones desde el 20 de Enero del 2019
2,6 MB
41 paginas
Creado hace 11a (18/09/2013)
© Universitat Oberta de Catalunya
Entorno de trabajo
Miquel Albert
Gerard Enrique
© Universitat Oberta de Catalunya
Índice
2
Índice ......................................................................................................................... 2
Introducción .............................................................................................................. 3
1. Instalación de las herramientas ........................................................................... 5
1.1. Instalación de VirtualBox .................................................................................... 5
1.2. Instalación del VirtualBox Extension Pack ......................................................... 6
1.3. Añadir un usuario al grupo de VirtualBox (Linux) .............................................. 7
1.4. Instalación de una máquina virtual ...................................................................... 7
1.5. Instalar las Guest Additions de VirtualBox ....................................................... 17
1.6. Carpetas compartidas ......................................................................................... 19
1.7. Porta-papeles compartido y arrastrar archivos ................................................... 20
1.8. Acceder a un dispositivo USB ........................................................................... 21
1.9. Instalación de las herramientas .......................................................................... 21
2. Utilización de las herramientas.......................................................................... 24
2.1. Editor de texto: geany ........................................................................................ 24
2.2. Ensamblador: yasm ............................................................................................ 25
2.3. Enlazador: gcc(ld) .............................................................................................. 26
2.4. Compilador de C: gcc ........................................................................................ 26
2.5. Depurador : kdbg (gdb)...................................................................................... 27
2.6. Ejecución ........................................................................................................... 28
3. Proceso de desarrollo en ensamblador .............................................................. 29
3.1. Edición del código fuente .................................................................................. 29
3.2. Ensamblaje del código fuente ............................................................................ 30
3.3. Enlazado del código objeto y generación del ejecutable ................................... 31
3.4. Ejecución del programa ..................................................................................... 31
3.5. Depuración del programa con KDbg (gdb) ........................................................ 31
4. Proceso de desarrollo en C y ensamblador ....................................................... 38
4.1. Edición del código fuente ensamblador ............................................................. 38
4.2. Ensamblaje del código fuente ensamblador ....................................................... 39
4.3. Edición del código fuente C ............................................................................... 39
4.4. Compilación del código fuente C, ensamblaje con del código objeto
ensamblador y generación del ejecutable ................................................... 39
4.5. Ejecución del programa ..................................................................................... 40
4.6. Depuración del programa con KDbg ................................................................. 40
© Universitat Oberta de Catalunya
3
Introducción
El entorno de trabajo que utilizaremos para desarrollar los problemas y las prácticas de
programación será un PC basado en procesadores x86-64 (Intel64 o AMD64) sobre el
cual se ejecutará un sistema operativo Linux de 64 bits, la versión Linux que
proponemos es Linux Mint de 64 bits (basada en Ubuntu), pero se pueden utilizar otras
versiones Linux de 64 bits.
Para la instalación de Linux Mint, como se explica más adelante, tendréis que descargar
un archivo con una imagen ISO desde el sitio web de Linux Mint. El archivo ISO
permite hacer una instalación del sistema en una máquina virtual, de VirtualBox por
ejemplo, y también permite hacer la instalación de forma nativa.
Los lenguajes de programación que utilizaremos para escribir el código fuente de los
Herramientas propuestas
Editor: geany
Ensamblador: yasm
Enlazador: gcc (internamente llama al
enlazador ld)
Compilador de C: gcc
Entorno a depuración: kdbg que utiliza
gdb
Más adelante en este documento se
explica cómo instalar y utilizar estas
herramientas.
problemas y de las prácticas de programación de la asignatura serán el lenguaje C para
diseñar el programa principal y las operaciones de E/S y el lenguaje ensamblador x86-64
para implementar funciones concretas y ver cómo trabaja esta arquitectura a bajo nivel.
Proceso de desarrollo de un programa escrito en lenguaje ensamblador:
1. Edición del código fuente ensamblador (geany).
2. Ensamblaje del código fuente ensamblador y generación del código objeto
(yasm).
3. Enlazado del código objeto y generación del código ejecutable (gcc).
4. Depuración del código ejecutable para la corrección de errores (kdbg).
5. Ejecución del programa.
Proceso de desarrollo de un programa escrito en lenguaje C:
1. Edición del código fuente C (geany).
2. Compilación y enlazado del código fuente C y generación del código ejecutable
(gcc).
3. Ejecución del programa.
Proceso de desarrollo de un programa escrito en lenguaje C que utiliza subrutinas hechas
en ensamblador:
1. Edición del código fuente ensamblador, incluir la definición de las subrutinas
necesarias cómo globales (geany).
2. Ensamblaje del código fuente ensamblador y generación del código objeto
(yasm).
3. Edición del código fuente C, incluidas las definiciones y las llamadas a
subrutinas en ensamblador (geany).
4. Compilación y enlazado del código fuente C con el código objeto generado del
ensamblador y generación del código ejecutable (gcc).
5. Depuración del código ejecutable para la corrección de errores (kdbg).
6. Ejecución del programa.
Cuando en uno de estos procesos se detectan errores, hay que volver al inicio del
proceso, modificar el código fuente para corregir los errores y repetir el proceso
© Universitat Oberta de Catalunya
4
cíclicamente hasta obtener un programa ejecutable libre de errores y que tenga la
funcionalidad deseada.
Proceso de desarrollo
geany
Código fuente
Ensamblador
Editor de texto
Código fuente
‘C’
yasm
Ensamblador
Código objeto
gcc (ld)
gcc
Compilador ‘C’
Errores
Código objeto
Enlazador
Enlazador
kdbg (gdb)
Código ejecutable
Depurador
Código ejecutable
Si se utiliza el archivo ISO para crear una máquina virtual dentro del entorno de
virtualización VirtualBox, o se instala de forma nativa el sistema utilizando este archivo
ISO no es necesario instalar las herramientas.
Si se quiere trabajar con otro sistema operativo Linux de 64bits, será necesario instalar
todas las herramientas del entorno de trabajo.
© Universitat Oberta de Catalunya
5
1. Instalación de las herramientas
En este apartado se explica cómo instalar y configurar las herramientas del entorno de
trabajo.
1.1. Instalación de VirtualBox
En primer lugar tenéis que comprobar si vuestro ordenador permite ejecutar una máquina
virtual con un sistema operativo de 64 bits.
Para hacer la comprobación, en Windows, podéis ejecutar el programa “securable” que
encontraréis en el siguiente enlace web:
http://www.grc.com/files/securable.exe
Al ejecutar este programa aparecen dos informaciones importantes: si el procesador es de
64 bits y si dispone de soporte para virtualización, las dos características son necesarias
para poder ejecutar una máquina virtual con un sistema operativo de 64 bits dentro de
VirtualBox.
En Linux, podéis comprobar si vuestro procesador es de 64 bits y si tiene soporte para
virtualización, con el comando lscpu.
Abrid un terminal de Linux y ejecutad el comando:
$ lscpu
Si entre la información que aparece, se muestra la información siguiente:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
...
Virtualization: VT-x
Significa que sí tenéis soporte para virtualización. Si tenéis un procesador AMD, en la
información sobre virtualización aparecerá AMD-V.
Si vuestro ordenador tiene un procesador de 64 bits pero no tiene soporte de
virtualización por hardware, tendréis que instalar Linux de 64 bits en una partición del
disco, o en un disco externo o memoria USB.
Si no sabéis como hacerlo contactad con el consultor de vuestra aula que os podrá
ayudar.
1.1.1. Obtención e instalación del software de VirtualBox
Se puede obtener la última versión del software de VirtualBox a través de la página web
siguiente:
https://www.virtualbox.org/wiki/Downloads
Encontrareis versiones para Windows, Mac (OS X) y Linux. En el caso de Windows y
OS X hay una única versión, en el caso de Linux
Comentarios de: Entorno de trabajo (0)
No hay comentarios