PDF de programación - Indice - Prácticas de Arquitectura de Computadores y Sistemas Operativos

Imágen de pdf Indice - Prácticas de Arquitectura de Computadores y Sistemas Operativos

Indice - Prácticas de Arquitectura de Computadores y Sistemas Operativosgráfica de visualizaciones

Publicado el 29 de Marzo del 2018
143 visualizaciones desde el 29 de Marzo del 2018
481,8 KB
10 paginas
Creado hace 9a (07/09/2010)
Prácticas de

Arquitectura de Computadores

y Sistemas Operativos

Rubén Usamentiaga Fernández

Julio Molleda Meré

Joaquín Entrialgo Castaño
Juan Carlos Granda Candás

Resumen de contenidos

1. Introducción a las herramientas y al entorno de trabajo

2. Programación de la API Win32 en lenguaje C

3. Procesos e hilos

4. Planificación de procesos e hilos

5. Sincronización de procesos e hilos

6. Gestión de memoria

7. Interfaz con el usuario

8. Interfaz gráfica

9. Programación con sockets

10. Servidores multihilo

11. Ficheros mapeados en memoria

12. Operaciones sobre archivos y directorios

13. Relojes y temporizadores. Tareas de tiempo real

A. Preguntas frecuentes

B. La biblioteca LibAC

III

1

17

31

43

49

71

81

103

117

155

173

179

195

207

211

IV

Resumen de contenidos

Índice general

1. Introducción a las herramientas y al entorno de trabajo

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.
.
.
.

.
1.1. Objetivo .
1.2. Conocimientos necesarios .
.
1.3.
.

1
1
. . . . . . . . . . . . . . . . . . . . . . .
.
1
. . . . . . . . . . . . . . . . . . . . . . .
.
1
. . . . . . . . . . . . . . . . . . . . . . .
.
Introducción .
.
1
. . . . . . . . . . . . . . . . . . . . . . .
.
1.3.1. Sistema operativo .
2
1.3.2. Entorno de desarrollo .
. . . . . . . . . . . . . . . . . . . . . . .
3
1.3.3. Lenguaje de programación . . . . . . . . . . . . . . . . . . . . .
3
1.4. Creación de un programa simple desde la línea de comandos . . . . . .
4
1.5. Trabajando desde el entorno de desarrollo . . . . . . . . . . . . . . . . .
4
1.5.1. Creación de un nuevo proyecto . . . . . . . . . . . . . . . . . . .
6
1.5.2. Soluciones y proyectos .
. . . . . . . . . . . . . . . . . . . . . .
7
1.5.3. Añadiendo ficheros al proyecto . . . . . . . . . . . . . . . . . . .
7
1.5.4. Compilando y ejecutando . . . . . . . . . . . . . . . . . . . . . .
8
1.5.5. Depurando el programa paso a paso . . . . . . . . . . . . . . . .
1.5.6. Creando un proyecto para las prácticas . . . . . . . . . . . . . .
9
1.5.7. Cabeceras precompiladas . . . . . . . . . . . . . . . . . . . . . . 10
1.5.8. Modelo de programación UNICODE . . . . . . . . . . . . . . . 11
. . . . . . . . . . . . . . . . . . . . . . . 12
.
. . . . . . . . . . . . . . . . . . . . . . . 13
1.6.1. Objetos del Kernel
1.6.2. Ejemplo del uso de funciones de la API Win32 . . . . . . . . . . 13
. . . . . . . . . . . . . . . . . . . . . . . 15
. . . . . . . . . . . . . . . . . . . . . . . 15

1.6. La API de Windows .

.
.

.
.

.
.

.
.

.

1.7. Autoevaluación .

.
1.7.1. Ejercicios propuestos .

.

.

.

.

.

.

.

.

V

VI

Índice general

2. Programación de la API Win32 en lenguaje C

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Introducción .

2.1. Objetivo .
.
2.2. Conocimientos necesarios .
2.3.
.
2.4. Conceptos del lenguaje C .
2.4.1. Salida por pantalla .
.
2.4.2. Variables .
.
2.4.3. Constantes .
.
.
.
2.4.4. Tipos .
.
.
.
2.4.5. Punteros .
2.4.6. Cadenas .
.
.
.
.
2.5. Ejercicios .
.
2.6. Autoevaluación .
.
.

.
.
.
.
.
.
.
.
.
.
.
.
2.6.1. Ejercicios propuestos .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.

.

.

.

.
.
.
.
.
.
.
.
.
.
.
.
.

.

.

.

.

.

.

.

.

.

.

.

.

Introducción .

3. Procesos e hilos
3.1. Objetivo .
.
3.2. Conocimientos necesarios .
.
3.3.
.
.
3.4. Gestión de procesos .
.
.
3.5. Gestión de hilos .
3.6. Autoevaluación .
.
.

.
.
.
.
.
.
3.6.1. Ejercicios propuestos .
.

.
.
.
.
.
.
.
.
3.7.1. SynchronizationObject .
.
3.7.2. Runnable
3.7.3. Thread .
.

3.7. Encapsulación en clases

.
.
.
.

.
.
.
.

.
.
.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.

.

.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

17
. . . . . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . 17
. . . . . . . . . . . . . . . . . . . . 19
. . . . . . . . . . . . . . . . . . . . 20
. . . . . . . . . . . . . . . . . . . 21
.
. . . . . . . . . . . . . . . . . . . 22
.
.
. . . . . . . . . . . . . . . . . . . 27
. . . . . . . . . . . . . . . . . . . . 29
. . . . . . . . . . . . . . . . . . . . 30
.
. . . . . . . . . . . . . . . . . . 30

.

31
.
. . . . . . . . . . . . . . . . . . . 31
. . . . . . . . . . . . . . . . . . . . 31
. . . . . . . . . . . . . . . . . . . . 31
. . . . . . . . . . . . . . . . . . . . 32
. . . . . . . . . . . . . . . . . . . . 35
. . . . . . . . . . . . . . . . . . . . 37
.
. . . . . . . . . . . . . . . . . . 38
. . . . . . . . . . . . . . . . . . . . 38
. . . . . . . . . . . . . . . . . . . . 38
. . . . . . . . . . . . . . . . . . . . 39
.
. . . . . . . . . . . . . . . . . . . 40

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

Introducción .

43
4. Planificación de procesos e hilos
.
. . . . . . . . . . . . . . . . . . . 43
4.1. Objetivo .
.
. . . . . . . . . . . . . . . . . . . . 43
4.2. Conocimientos necesarios .
. . . . . . . . . . . . . . . . . . . . 43
.
4.3.
.
4.4. Planificación de hilos .
. . . . . . . . . . . . . . . . . . . 44
.
.
4.5. Establecimiento de la clase de prioridad del proceso . . . . . . . . . . . 44
4.5.1. Establecimiento de la prioridad relativa de un hilo . . . . . . . . 45
Incremento automático de los niveles de prioridad (boosting) . . 46
4.5.2.
.
4.5.3. Ejercicio .
. . . . . . . . . . . . . . . . . . . 47
. . . . . . . . . . . . . . . . . . . . 48
4.6. Autoevaluación .
. . . . . . . . . . . . . . . . . . . . 48

.
.
4.6.1. Ejercicios propuestos .

.
.
.

.
.
.

.
.
.

.
.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

Índice general

VII

49

5. Sincronización de procesos e hilos

5.1. Objetivo .

.

.

.

.

.

.

.

.

.

.

5.2. Conocimientos necesarios .

5.3.

Introducción .

.

.

.

.

.

.

.

.

.

.

.

5.4. Elementos de sincronización .

5.4.1.

Introducción .

5.4.2. Semáforos .

5.4.3. Mutex .

.

.

.

.

.

.

.

.

.

.

.

.

.

5.4.4. Secciones críticas .

5.5. Ejercicio .

.

.

.

.

5.6. Autoevaluación .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

5.6.1. Ejercicios propuestos .

5.7. Encapsulación en clases

5.7.1. CriticalSection .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

. . . . . . . . . . . . . . . . . . . . . . . 49

. . . . . . . . . . . . . . . . . . . . . . . 49

. . . . . . . . . . . . . . . . . . . . . . . 49

. . . . . . . . . . . . . . . . . . . . . . . 51

. . . . . . . . . . . . . . . . . . . . . . . 51

. . . . . . . . . . . . . . . . . . . . . . . 52

. . . . . . . . . . . . . . . . . . . . . . . 53

. . . . . . . . . . . . . . . . . . . . . . . 53

. . . . . . . . . . . . . . . . . . . . . . . 54

. . . . . . . . . . . . . . . . . . . . . . . 55

. . . . . . . . . . . . . . . . . . . . . . . 56

. . . . . . . . . . . . . . . . . . . . . . . 56

. . . . . . . . . . . . . . . . . . . . . . . 56

5.7.2. ScopedCriticalSection .

. . . . . . . . . . . . . . . . . . . . . . . 57

5.7.3. Semaphore .

5.7.4. Event .

.

.

.

.

.

.

.

5.7.5. SharedQueue .

5.7.6. ThreadPool

.

.

.

.

.

.

.

.

.

.

.

.

.

.

6. Gestión de memoria

6.1. Objetivo .

.

.

.

.

.

.

.

.

.

.

6.2. Conocimientos necesarios .

6.3.

Introducción .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

. . . . . . . . . . . . . . . . . . . . . . . 59

. . . . . . . . . . . . . . . . . . . . . . . 62

. . . . . . . . . . . . . . . . . . . . . . . 64

. . . . . . . . . . . . . . . . . . . . . . . 67

71

. . . . . . . . . . . . . . . . . . . . . . . 71

. . . . . . . . . . . . . . . . . . . . . . . 71

. . . . . . . . . . . . . . . . . . . . . . . 71

6.4. Gestión de la memoria virtual .

. . . . . . . . . . . . . . . . . . . . . . . 72

6.4.1. Ejercicio .

6.5. Heap .

.

.

.

.

.

.

6.5.1. Ejercicio .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

. . . . . . . . . . . . . . . . . . . . . . . 73

. . . . . . . . . . . . . . . . . . . . . . . 77

. . . . . . . . . . . . . . . . . . . . . . . 78

6.6. Aplicabilidad de los métodos de gestión de memoria . . . . . . . . . . 78

6.7. Autoevaluación .

.

.

.

.

.

.

.

6.7.1. Ejercicios propuestos .

.

.

. . . . . . . . . . . . . . . . . . . . . . . 79

. . . . . . . . . . . . . . . . . . . . . . . 79

VIII

Índice general

7. Interfaz con el usuario

81

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

Introducción .

. . . . . . . . . . . . . . . . . . . . 81
7.1. Objetivo .
.
. . . . . . . . . . . . . . . . . . . . 81
7.2. Conocimientos necesarios .
. . . . . . . . . . . . . . . . . . . . 81
7.3.
.
7.4. Análisis de la estructura básica del programa mínimo en Windows . . 82
7.4.1. Punto de entrada del programa . . . . . . . . . . . . . . . . . . . 82
7.5. Esqueleto de aplicación en Windows . . . . . . . . . . . . . . . . . . . . 83
7.6. Uso de controles en la creación de interfaces
. . . . . . . . . . . . . . . 88
. . . . . . . . . . . . . . . . . . . . 89
.
7.7. Cuadros de diálogo .
. . . . . . . . . . . . . . . . . . . . 91
7.8. Menús y otros recursos .
. . . . . . . . . . . . . . . . . . . . 92
.
.
. . . . . . . . . . . . . . . . . . . . 93
. . . . . . . . . . . . . . . . . . . . 93
.
. . . . . . . . . . . . . . . . . . . . 93
. . . . . . . . . . . . . . . . . . . . 94
. . . . . . . . . . . . . . . . . . . . 94
.
. . . . . . . . . . . . . . . . . . . 98

.
.
.
.
.
7.10.1. Ejercicios propuestos .
.
.
.

7.11. Encapsulación en clases
.
.

7.8.1. Ejercicio .
.
7.9. Depuración .
7.10. Autoevaluación .

7.11.1. Window .
7.11.2. Dialog .
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.

.
.

.
.

.

8. Interfaz gráfica

103

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

Introducción .

8.5.
  • Links de descarga
http://lwp-l.com/pdf9983

Comentarios de: Indice - Prácticas de Arquitectura de Computadores y Sistemas Operativos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad