You are on page 1of 14

Manual de supervivencia en Linux

1� edici�n, 2007
Dise�o de portada: Laura Uribe
�Universidad Nacional Aut�noma de M�xico,
Facultad de Ciencias
Circuito exterior. Ciudad Universitaria.
M�xico 04510
cse@fciencias.unam.mx
ISBN: 978-970-32-5040-0
Impreso y hecho en M�xico
�ndice general
Prefacio XII
1. Introducci�n a Unix 1
1.1. Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 1
1.1.1. Sistemas UNIX libres . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2. El proyecto GNU . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Sistemas de tiempo compartido . . . . . . . . . . . . . . . . . . . . . . . .
4
1.2.1. Los sistemas multiusuario . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Inicio de sesi�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 5
1.4.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.1. Introducci�n a Emacs . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.2. Emacs y t� . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2. Ambientes gr�ficos en Linux 9
2.1. Ambientes de
escritorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.
KDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.1. Configuraci�n de KDE . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.2. KDE en 1, 2, 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.3. Quemado de discos con K3b . . . . . . . . . . . . . . . . . . . . . 14
2.2.4. Amarok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4. Comenzando con Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3. Sistema de Archivos 23
3.1. El sistema de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 23
3.1.1. Rutas absolutas y relativas . . . . . . . . . . . . . . . . . . . . . . 26
3.2. Movi�ndose en el �rbol del sistema de archivos . . . . . . . . . . . . . . .
27
3.2.1. Permisos de archivos . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2.2. Archivos est�ndar y redireccionamiento . . . . . . . . . . . . . . . 34
3.3. Otros comandos de Unix . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.3.1. Sintaxis est�ndar de comandos . . . . . . . . . . . . . . . . . . . . 37
ii
3.4. Agrupando nombres de archivos . . . . . . . . . . . . . . . . . . . . . . . 44
3.5. Konqueror: administrador de archivos y algo m�s . . . . . . . . . . . . . . 45
3.5.1. Iniciando Konqueror . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.5.2. Konqueror como administrador de archivos . . . . . . . . . . . . . 46
3.5.3. Konqueror como un navegador web . . . . . . . . . . . . . . . . . 48
3.5.4. Konqueror como una aplicaci�n integrada . . . . . . . . . . . . . . 49
3.6.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.6.1. Ejecutando Emacs desde la l�nea de comandos . . . . . . . . . . . 50
3.6.2. Conceptos esenciales . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6.3. Dired . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.6.4. Ejecuci�n de comandos de Unix desde Emacs . . . . . . . . . . . . 54
4. Edici�n 55
4.1. La guerra de los editores de texto . . . . . . . . . . . . . . . . . . . . . .
. 55
4.1.1. Vieja guardia contra nueva guardia . . . . . . . . . . . . . . . . . . 56
4.2. Kate: un editor para programadores . . . . . . . . . . . . . . . . . . . . .
56
4.2.1. Introducci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.2. Empezando a utilizar Kate . . . . . . . . . . . . . . . . . . . . . . 57
4.2.3. Editando archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.3.1. Comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.3.2. Movimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.3.3. Matando y borrando . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.3.4. Reencarnaci�n de texto . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3.5. Regiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3.6. Rect�ngulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3.7. Registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.3.8. Archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.3.9. Buscar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.3.10. Reemplazar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.3.11. Guardar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.3.12. Ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.3.13. Marcos (frames) . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.3.14. Ayuda en l�nea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.3.15. Lista de buffers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.3.16. Anzuelos (Hooks), setq y otros . . . . . . . . . . . . . . . . . . . . 72
4.3.17. Ortograf�a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.18. Extendiendo Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . 74
iii
5. Internet 77
5.1. Redes de computadoras . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
5.1.1. Relaci�n cliente-servidor . . . . . . . . . . . . . . . . . . . . . . . 78
5.1.2. TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.2.
Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.3. Redes y
direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.3.1. Domicilios est�ndar en Internet . . . . . . . . . . . . . . . . . . . 81
5.3.2. Nomenclatura antigua e internacional . . . . . . . . . . . . . . . . 81
5.4. WWW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
82
5.4.1. URL: especificaci�n de objetos en Internet . . . . . . . . . . . . . 83
5.4.2. Navegadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.4.3. Google . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.4.4. Wikipedia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.5. Los programas de correo de Unix . . . . . . . . . . . . . . . . . . . . . . .
86
5.6.
Netiquete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.6.1. Algunos puntos del netiquete ... . . . . . . . . . . . . . . . . . . . 87
5.7. KMail: lector de correo
electr�nico . . . . . . . . . . . . . . . . . . . . . . 89
5.7.1. Introducci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.7.2. Utilizando KMail . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
5.8.
FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.8.1. �Qu� es un FTP an�nimo? . . . . . . . . . . . . . . . . . . . . . . 93
5.8.2. Comandos para FTP . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.9. SSH: Secure
Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
5.9.1. Accediendo a sistemas remotos . . . . . . . . . . . . . . . . . . . 96
5.9.2. Copiando archivos entre sistemas . . . . . . . . . . . . . . . . . . 96
5.10. PGP: Pretty Good Privacy . . . . . . . . . . . . . . . . . . . . . . . . . .
97
5.10.1. Funcionamiento de PGP . . . . . . . . . . . . . . . . . . . . . . . 98
5.11. RSS: sistema de
noticias . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.11.1. Introducci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.11.2. Akregator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.12. Mensajer�a
instant�nea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.12.1. Introducci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.12.2. Kopete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.12.3. Creando cuentas . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.12.4. Funciones b�sicas . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.12.5. Extensiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.13. Rdesktop: Remote Desktop Protocol Client . . . . . . . . . . . . . . . . .
106
5.13.1. Utilizando Rdesktop . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.14. Kontact, una suite de productividad en KDE . . . . . . . . . . . . . . . . .
106
5.14.1. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.14.2. Correo, KMail . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
iv
5.14.3. Contactos, KAddressBook . . . . . . . . . . . . . . . . . . . . . . 108
5.14.4. Calendario y pendientes con KOrganizer . . . . . . . . . . . . . . 112
5.15. Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 119
5.15.1. VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
5.15.2. BBDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
5.15.3. w3m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
5.15.4. ERC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.15.5. TRAMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.15.6. Diccionario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6. L
A T E X
143
6.1. Introducci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 143
6.2. Componentes de un texto . . . . . . . . . . . . . . . . . . . . . . . . . . .
144
6.3. Ambientes para formato . . . . . . . . . . . . . . . . . . . . . . . . . . .
145
6.3.1. Posibles errores . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.4. Formato general de un documento . . . . . . . . . . . . . . . . . . . . . .
149
6.4.1. Cartas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
6.5. Tipos y tama�os de
letras . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.6. Listas de enunciados o
p�rrafos . . . . . . . . . . . . . . . . . . . . . . . . 156
6.6.1. Numeraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
6.6.2. Listas marcadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
6.6.3. Descripciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
6.6.4. Listas m�s compactas . . . . . . . . . . . . . . . . . . . . . . . . . 163
6.7. Tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 164
6.7.1. Multicolumnas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
6.7.2. Separaci�n de renglones y columnas . . . . . . . . . . . . . . . . . 168
6.7.3. L�neas �incompletas� verticales y horizontales . . . . . . . . . . . 172
6.7.4. Espacio entre los renglones . . . . . . . . . . . . . . . . . . . . . . 173
6.8. Matem�ticas en L
A T E X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6.8.1. F�rmulas matem�ticas . . . . . . . . . . . . . . . . . . . . . . . . 176
6.9. Emacs y L
A T E X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
6.9.1. Anotaciones en los s�mbolos . . . . . . . . . . . . . . . . . . . . . 192
6.9.2. Arreglos de f�rmulas . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.10. Im�genes y
figuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
6.10.1. Tablas, figuras, etc. . . . . . . . . . . . . . . . . . . . . . . . . . .
197
6.10.2. Cortando figuras . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
6.10.3. Colores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.10.4. Dibujando objetos geom�tricos . . . . . . . . . . . . . . . . . . . . 207
6.10.5. L�neas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
207
6.10.6. Acomodando objetos . . . . . . . . . . . . . . . . . . . . . . . . . 226
6.11. Referencias e �ndices . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 231
v
6.11.1. Referencias bibliogr�ficas . . . . . . . . . . . . . . . . . . . . . . 231
6.11.2. �ndices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
6.12. Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 237
6.12.1. AUCT E X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
6.12.2. RefT E X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
241
6.12.3. Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7. Lenguajes de marcado 245
7.1. XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
246
7.2. HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
249
7.2.1. XHTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
7.3.
CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
7.3.1. Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
7.4.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
8. Herramientas para desarrollo 256
8.1. Control de versiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
256
8.1.1. subversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
8.1.2. Introducci�n a subversion . . . . . . . . . . . . . . . . . . . . . . 257
8.2.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
8.2.1. JDEE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
8.2.2. psvn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
9. Extendiendo tu ambiente 271
9.1. Programaci�n en
shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
9.1.1. Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
9.1.2. Preparaci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
9.1.3. Vigilando el espacio en disco . . . . . . . . . . . . . . . . . . . . . 273
9.1.4. Listado de directorios . . . . . . . . . . . . . . . . . . . . . . . . . 275
9.1.5. Recorridos recursivos . . . . . . . . . . . . . . . . . . . . . . . . . 278
9.1.6. Comparando archivos . . . . . . . . . . . . . . . . . . . . . . . . 283
9.1.7. Otra vez el problema de borrar la basura . . . . . . . . . . . . . . . 285
9.1.8. Para saber m�s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
9.2.
Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
9.2.1. La madre de todos los lenguajes . . . . . . . . . . . . . . . . . . . 289
9.2.2. LISP en 15 minutos . . . . . . . . . . . . . . . . . . . . . . . . . . 290
9.2.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
9.3. Evaluaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
299
9.3.1. Nombres de buffers . . . . . . . . . . . . . . . . . . . . . . . . . . 299
9.4. Definiciones de
funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
9.4.1. defun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
9.4.2. let . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
305
vi
9.4.3. La forma especial if . . . . . . . . . . . . . . . . . . . . . . . . . 306
9.4.4. save-excursion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
9.4.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
9.5. Funciones relacionadas con buffers . . . . . . . . . . . . . . . . . . . . . .
311
9.5.1. Definici�n (simplificada) de beginning-of-buffer . . . . . . . . . . 311
9.5.2. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
9.6. Funciones fundamentales . . . . . . . . . . . . . . . . . . . . . . . . . . .
314
9.6.1. car y cdr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
9.6.2. Cortando y guardando texto . . . . . . . . . . . . . . . . . . . . . 318
9.6.3. Inicializaci�n de variables: defvar . . . . . . . . . . . . . . . . . . 321
9.6.4. copy-region-as-kill . . . . . . . . . . . . . . . . . . . . . . . . . . 322
9.6.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
9.7. Lluvia de
funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
9.7.1. �Qui�n o qu� es ASCII? . . . . . . . . . . . . . . . . . . . . . . . 326
9.7.2. �C�mo numerar una regi�n de l�neas? . . . . . . . . . . . . . . . . 327
9.7.3. Borrado efectivo de espacios . . . . . . . . . . . . . . . . . . . . . 328
9.7.4. Un ejercicio totalmente in�til, o eso parece . . . . . . . . . . . . . 330
9.7.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
9.8. Para saber m�s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
333
A. Distribuciones de Linux 337
A.1. Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
337
A.1.1. Filosof�a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
A.1.2. Manejo de software . . . . . . . . . . . . . . . . . . . . . . . . . . 338
A.2. Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 340
A.2.1. Filosof�a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
A.2.2. Manejo de software . . . . . . . . . . . . . . . . . . . . . . . . . . 340
A.3. Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 340
A.3.1. Filosof�a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
A.3.2. Manejo de software . . . . . . . . . . . . . . . . . . . . . . . . . . 341
B. Compilando e instalando a pie 343
B.1. Aplicaciones no disponibles . . . . . . . . . . . . . . . . . . . . . . . . .
343
C. Emacs: archivos de configuraci�n 347
C.1. ~/.emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
347
C.2. ~/.vm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
349
C.3. ~/.emacs-w3m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
�ndice de figuras
1.1. Acceso al sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 5
1.2. Inicio de una sesi�n en un sistema UNIX. . . . . . . . . . . . . . . . . . . 6
1.3. Equivocaci�n al teclear la contrase�a. . . . . . . . . . . . . . . . . . . . .
6
2.1. KControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.2. Administraci�n de usuarios . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.3. Administraci�n de contrase�as . . . . . . . . . . . . . . . . . . . . . . . .
12
2.4. Disposici�n del
teclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5.
KDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.6.
K3b . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7. Quemado de un disco de datos . . . . . . . . . . . . . . . . . . . . . . . .
16
2.8. Quemado de un disco de audio . . . . . . . . . . . . . . . . . . . . . . . .
18
2.9. Amarok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
2.10. Emacs en el men� de KDE . . . . . . . . . . . . . . . . . . . . . . . . . .
20
3.1. Sistema de archivos en un sistema Unix . . . . . . . . . . . . . . . . . . .
25
3.2. Resultado de entubar ls -al con less . . . . . . . . . . . . . . . . . . . . .
29
3.3. Konqueror como un administrador de archivos . . . . . . . . . . . . . . . . 47
3.4. Konqueror con un emulador de terminal . . . . . . . . . . . . . . . . . . . 48
3.5. Konqueror como un navegador de Internet . . . . . . . . . . . . . . . . . . 49
3.6. Konqueror deplegando una imagen . . . . . . . . . . . . . . . . . . . . . . 49
3.7. Konqueror deplegando un documento postscrip. . . . . . . . . . . . . . . . 50
4.1. Kate en el men� de KDE . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
4.2. Ventana de inicio de
Kate . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.1. Ventana principal de KMail . . . . . . . . . . . . . . . . . . . . . . . . . .
89
5.2. Vista principal de Akregator . . . . . . . . . . . . . . . . . . . . . . . . .
100
5.3. Kopete en el men� de KDE . . . . . . . . . . . . . . . . . . . . . . . . . .
103
5.4. Vista principal de
kopete . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.5. Ventana inicial de Kontact . . . . . . . . . . . . . . . . . . . . . . . . . .
107
5.6. KAddressBook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
109
viii
5.7. Creando una nueva agenda . . . . . . . . . . . . . . . . . . . . . . . . . .
110
5.8. Creando una nuevo contacto . . . . . . . . . . . . . . . . . . . . . . . . .
110
5.9. Pesta�a de
detalles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.10. KAddressBook con algunos contactos . . . . . . . . . . . . . . . . . . . .
111
5.11.
KOrganizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5.12. Creando una nuevo evento . . . . . . . . . . . . . . . . . . . . . . . . . .
113
5.13. Ajustando la repetici�n de un
evento . . . . . . . . . . . . . . . . . . . . . 114
5.14. Agregando participantes en un evento . . . . . . . . . . . . . . . . . . . .
115
5.15. Ajustando la hora de la reuni�n . . . . . . . . . . . . . . . . . . . . . . .
. 116
5.16. Vista �Qu� es lo siguiente? . . . . . . . . . . . . . . . . . . . . . . . . .
. 116
5.17. Vista Lista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . 117
5.18. Vista D�a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 117
5.19. Vista Semana
laboral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.20. Vista
Semana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.21. Vista Tres d�as
siguientes . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.22. Vista Mes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 120
5.23. El diario dentro de Kontact . . . . . . . . . . . . . . . . . . . . . . . . .
. 120
6.1. Gr�fico introducido con includegraphics . . . . . . . . . . . . . . . 201
6.2. Escalando objetos con graphics. . . . . . . . . . . . . . . . . . . . . . . .
202
6.3. Rotaciones y reflejos con graphics . . . . . . . . . . . . . . . . . . . . 203
6.4. Tomando pedazos de figuras . . . . . . . . . . . . . . . . . . . . . . . . .
204
6.5. Ejemplo de opciones para dibujar . . . . . . . . . . . . . . . . . . . . . . .
213
6.6. Graficaci�n de funciones arbitrarias . . . . . . . . . . . . . . . . . . . . .
221
6.7. Impresi�n de la ret�cula . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 222
6.8. Colocaci�n de los ejes . . . . . . . . . . . . . . . . . . . . . . . . . . . .
222
6.9. Segunda forma de pintar la
ret�cula . . . . . . . . . . . . . . . . . . . . . . 223
6.10. Divertimento con s�lo trazo de l�neas . . . . . . . . . . . . . . . . . . . .
. 224
6.11. Dibujo de una gr�fica en L
A T E X . . . . . . . . . . . . . . . . . . . . . . . . 229
6.12. Actividad
6.52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
6.13. Ejemplo de L
A T E X usando B IB T E X
. . . . . . . . . . . 233
6.14. Salida de L
A T E X al ejecutar B IB T E X . . . . . . . . . . . . . . . . . . . . . . 234
6.15. Ejemplo de una base de datos B IB T E X . . . . . . . . . . . . . . . . . . .
. 235
6.16. Ejemplo usando los estilos B IB T E X . . . . . . . . . . . . . . . . . . . .
. . 236
6.17. Preview en acci�n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 243
7.1. P�gina sin hoja de
estilo . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.2. P�gina con hoja de
estilo . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
�ndice de tablas
1. Convenciones tipogr�ficas . . . . . . . . . . . . . . . . . . . . . . . . . .
XII
3.1. Comandos de Unix importantes . . . . . . . . . . . . . . . . . . . . . . . .
39
3.2. Emacs: opciones de inicio . . . . . . . . . . . . . . . . . . . . . . . . . .
51
3.3. Emacs: comandos del modo dired . . . . . . . . . . . . . . . . . . . . . . 53
4.1. Kate: enlaces de tecla para acceso
r�pido . . . . . . . . . . . . . . . . . . . 61
4.2. Kate: opciones para buscar y reemplazar . . . . . . . . . . . . . . . . . . .
63
4.3. Kate: sangrados disponibles . . . . . . . . . . . . . . . . . . . . . . . . .
64
4.4. Emacs: comandos de movimiento . . . . . . . . . . . . . . . . . . . . . . 66
4.5. Emacs: movimiento a lugares especiales . . . . . . . . . . . . . . . . . . .
67
4.6. Emacs: comandos para matar y borrar . . . . . . . . . . . . . . . . . . . . 67
4.7. Emacs: comandos para manejar rect�ngulos . . . . . . . . . . . . . . . . . 69
4.8. Emacs: comandos para manejar registros . . . . . . . . . . . . . . . . . . .
69
4.9. Emacs: comandos para revisar ortograf�a . . . . . . . . . . . . . . . . . . .
74
5.1. Dominios de jerarqu�a superior . . . . . . . . . . . . . . . . . . . . . . . .
82
5.2. Servicios comunes de Google . . . . . . . . . . . . . . . . . . . . . . . . .
85
5.3. Otros servicios de la
Wikipedia . . . . . . . . . . . . . . . . . . . . . . . . 86
5.4. Algunos comandos disponibles en el sistema . . . . . . . . . . . . . . . . 94
5.5. Emacs: comandos de selecci�n de VM . . . . . . . . . . . . . . . . . . . . 124
5.6. Emacs: comandos para componer correo en VM . . . . . . . . . . . . . . . 125
5.7. Emacs: comandos de Mail . . . . . . . . . . . . . . . . . . . . . . . . . .
126
5.8. Emacs: comandos para contestar correo en VM . . . . . . . . . . . . . . . 126
5.9. Emacs: comandos para adelantar mensajes de VM . . . . . . . . . . . . . . 127
5.10. Emacs: tipos v�lidos para campos BBDB . . . . . . . . . . . . . . . . . . 129
5.11. Emacs: comandos de BBDB . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.12. Emacs: iniciando w3m . . . . . . . . . . . . . . . . . . . . . . . . . . . .
131
5.13. Emacs: siguiendo ligas con w3m . . . . . . . . . . . . . . . . . . . . . . .
132
5.14. Emacs: navegando con w3m . . . . . . . . . . . . . . . . . . . . . . . . .
133
5.15. Emacs: puntos de inter�s en la p�gina ala w3m . . . . . . . . . . . . . . .
133
5.16. Emacs: movimiento entre p�ginas con w3m . . . . . . . . . . . . . . . . . 134
x
5.17. Emacs: manejo de im�genes en w3m . . . . . . . . . . . . . . . . . . . . .
135
5.18. Emacs: ligas favoritas en w3m . . . . . . . . . . . . . . . . . . . . . . . .
136
5.19. Emacs: comandos de ERC . . . . . . . . . . . . . . . . . . . . . . . . . .
137
5.20. Emacs: m�dulos para extender ERC . . . . . . . . . . . . . . . . . . . . .
138
5.21. Emacs: comandos de dictionary . . . . . . . . . . . . . . . . . . . . . . .
141
6.1. L
A T E X: ambientes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
6.2. L
A T E X: comandos para modificar espacios
. . . . . . . . . . . . . . . . . . 150
6.3. Tama�os disponibles para letras . . . . . . . . . . . . . . . . . . . . . . .
154
6.4. L
A T E X: comandos para cambios de tipo de letra . . . . . . . . . . . . . . . . 155
6.5. Modificadores para la definici�n de columnas . . . . . . . . . . . . . . . .
165
6.6.
Acentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.7. S�mbolos no ingleses . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
175
6.8. S�mbolos de puntuaci�n y especiales . . . . . . . . . . . . . . . . . . . . .
175
6.9. S�mbolos griegos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
179
6.10. S�mbolos con
flechas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.11. Operadores y s�mbolos relacionales . . . . . . . . . . . . . . . . . . . . .
180
6.12. S�mbolos varios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 182
6.13. Nombres de funciones comunes . . . . . . . . . . . . . . . . . . . . . . .
182
6.14. S�mbolos
agrandables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
6.15. Delimitadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 186
6.16. Tipos de letras en modo matem�tico . . . . . . . . . . . . . . . . . . . . .
187
6.17. Acentos en modo matem�tico . . . . . . . . . . . . . . . . . . . . . . . . .
192
6.18. Comandos de espacio en modo matem�tico . . . . . . . . . . . . . . . . . 196
6.19. Posiciones posibles para los
flotantes . . . . . . . . . . . . . . . . . . . . . 198
6.20. Conversi�n de grados Farenheit a Cent�grados . . . . . . . . . . . . . . . .
199
6.21. Conversi�n de Farenheit a Cent�grados . . . . . . . . . . . . . . . . . . . .
200
6.22. Representaciones num�ricas . . . . . . . . . . . . . . . . . . . . . . . . .
200
6.23. Comparaci�n de tama�os . . . . . . . . . . . . . . . . . . . . . . . . . . .
204
6.24. Paquetes de pgf para colores y
dibujos . . . . . . . . . . . . . . . . . . . . 205
6.25. Colores b�sicos con los que se cuenta . . . . . . . . . . . . . . . . . . . .
206
6.26. Modificadores para el trazo de l�neas y figuras . . . . . . . . . . . . . . .
. 212
6.27. Opciones de grosor y estilos de
l�neas . . . . . . . . . . . . . . . . . . . . 213
6.28. Ejemplos de figuras en TikZ . . . . . . . . . . . . . . . . . . . . . . . . .
214
6.29. L�neas dobles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 214
6.30. Tipos de puntas de flechas en
TikZ . . . . . . . . . . . . . . . . . . . . . . 215
6.31. Figuras geom�tricas que se pueden lograr en TikZ . . . . . . . . . . . . .
216
6.32. Graficaci�n de funciones comunes en TikZ . . . . . . . . . . . . . . . . .
218
6.33. S�mbolos para marcar curvas que se grafican . . . . . . . . . . . . . . . . .
219
6.34. Emacs: comandos de AUCT E X . . . . . . . . . . . . . . . . . . . . . . . .
239
8.1. subversion: comandos m�s importantes . . . . . . . . . . . . . . . . . . . 259
xi
8.2. JDEE: abreviaturas de estructuras de control . . . . . . . . . . . . . . . . .
263
8.3. JDEE: formas para completar campos y m�todos . . . . . . . . . . . . . . 264
8.4. JDEE: enunciados import . . . . . . . . . . . . . . . . . . . . . . . . . . .
264
8.5. JDEE: generadores de c�digo, wizards . . . . . . . . . . . . . . . . . . . .
265
8.6. Emacs: comandos de psvn . . . . . . . . . . . . . . . . . . . . . . . . . .
269
9.1. Programaci�n en shell: variables autom�ticas . . . . . . . . . . . . . . . .
275
Prefacio
Este libro presenta las aplicaciones y el enfoque que un estudiante de computaci�n
o un
futuro programador debe dominar para sacar el mayor provecho de su ense�anza
profesio-
nal en programaci�n y, en general, en las ciencias de la computaci�n. Hemos vertido
aqu�
la experiencia de media docena de a�os impartiendo cursos proped�uticos de
supervivencia
para estudiantes de la licenciatura en ciencias de la computaci�n de la Facultad de
Ciencias
de la Universidad Nacional Aut�noma de M�xico.
Convenciones tipogr�ficas
Tabla 1 Convenciones tipogr�ficas
Entidad Descripci�n
Enfatizado
Utilizamos este tipo de letra (font) para enfatizar o resaltar
palabras o frases.
it�licas
Las utilizamos para modismos, palabras o frases en ingl�s y
palabras utilizadas en el medio y cuya traducci�n o acepta-
ci�n en el idioma no es clara.
comando
Los comandos y opciones se muestran as�. Cuando encuen-
tres l�neas tales como:% comando, �stas representan co-
mandos que puedes teclear y ejecutar en una terminal. Por
convenci�n utilizaremos% para significar que debe ejecu-
tarse como un usuario no-priviligiado y $ cuando debe eje-
cutarse como s�per-usuario o root.
enunciados
Utilizaremos este tipo de letra para escribir c�digo que debe
ir en un archivo.
Este s�mbolo es el logo del ambiente Gnome y sirve para se-
�alar qu� aplicaciones para este ambiente son equivalentes
a la revisada en la secci�n donde aparece.
Contin�a en la siguiente p�gina
xiv
Tabla 1 Convenciones tipogr�ficas Contin�a de la p�gina anterior
Entidad Descripci�n
Este s�mbolo es el logo del ambiente KDE y sirve para se-
�alar aplicaciones alternativas o similares a la revisada en la
secci�n donde aparece.
Este s�mbolo es el logo del editor Emacs y sirve para se�alar
paquetes alternativos o similares al revisado en la secci�n
donde aparece.
A qui�n est� dirigido
Este texto est� dirigido a estudiantes y profesionales de la computaci�n o futuros
pro-
gramadores que est�n interesados en incursionar en el mundo del software libre,
conocer el
sistema operativo Linux y que requieran dominar r�pidamente herramientas orientadas
al
desarrollo y productividad en este ambiente.
Es un libro pr�ctico, por lo que es importante resaltar que todo lo que se ve en
los
distintos cap�tulos puede repetirse en un sistema de c�mputo con sistema operativo
Li-
nux. Asimismo, los ejercicios en algunas de las secciones son de utilidad para
reafirmar el
conocimiento y se recomienda realizarlos en el orden presentado.
Distribuci�n y ambientes
A lo largo del libro encontrar�s muchos ejemplos que funcionar�n bien en cualquier
Algunas de
estas notas
muestran
comandos
distribuci�n de Linux. Sin embargo, y a pesar de nuestros mejores esfuerzos, hemos
inclui-
do aplicaciones que no son parte esencial de las distribuciones de Linux m�s
utilizadas.
Cada vez que esto sucede te mostramos, en una nota al margen, el comando que debes
ejecutar como s�per-usuario para instalar dicha aplicaci�n.
Para lograr esto, por supuesto, nos hemos visto en la necesidad de utilizar una
distribu-
ci�n y optamos por Ubuntu y como administrador de paquetes utilizamos apt. Por
ejemplo,
ver�s en notas al margen algo parecido a esto:
% smart install kate
lo que constituye (como ver�s en el Cap�tulo 1) una l�nea de comandos que, al ser
ejecutada,
se conecta a la red, localiza la aplicaci�n kate, la descarga a tu computadora y la
instala.
En el ap�ndice A se presenta una relaci�n de algunas de las distribuciones m�s
impor-
tantes en el mercado al momento de la edici�n de este libro. En dicho anexo
encontrar�s,
xv
entre otros datos interesantes de cada distribuci�n, la manera preferida de
administrar apli-
caciones.
En el ap�ndice B se presentan las opciones que se tienen para instalar paquetes o
fun-
ciones de tu distribuci�n favorita. Podr�s ver ah� c�mo compilar para instalar
algunos de
los servicios que se presentan en este libro.
Finalmente,enelap�ndiceCcolocamoslosarchivosprincipalesparatuarchivo .emacs
que fuimos construyendo a lo largo de este material, as� como los archivos
necesarios para
correo e internet.
Introducci�n a Unix
1
1.1. Historia
La primera versi�n de UNIX, llamada Unics, fue escrita en 1969 por Ken Thompson.
Corr�a en una computadora PDP-7 de Digital. M�s adelante, los laboratorios Bell, el
MIT
y General Electric se involucraron en la creaci�n del sistema Multics, grande en
tama�o,
y el primer sistema de tiempo compartido que inclu�a muchas ideas innovadoras
acerca
de sistemas operativos. Thompson y algunos de sus colegas admiraban las capacidades
de
Multics; sin embargo, pensaban que era demasiado complicado. Su idea era demostrar
que
era posible construir un sistema operativo que proporcionara un ambiente de
desarrollo
c�modo de una forma m�s simple. Y afortunadamente, tuvieron un �xito admirable en
el
desarrollo de esta idea; a pesar de esto, UNIX es ir�nicamente mucho m�s complicado
de
lo que Multics nunca lleg� a ser.
En 1970 Thompson, junto con Dennis Ritchie, port� UNIX a la PDP-11/20. Ritchie
dise�� y escribi� el primer compilador de C para proveer un lenguaje que pudiera
ser usado
para escribir una versi�n port�til del sistema. En 1973, Ritchie y Thompson
reescribieron
el kernel de UNIX, el coraz�n del sistema operativo, en C.
Inicialmente se otorgaron licencias gratuitas para utilizar UNIX a universidades
con
prop�sitos meramente educativos (en 1974). Esta versi�n fue la quinta edici�n (las
edicio-
nes hacen referencia a las ediciones del manual de referencia de UNIX). La sexta
edici�n
fue liberada en 1975; sin embargo, fue hasta la s�ptima edici�n, liberada por los
labora-
torios Bell en 1979, donde se logr� la meta deseada: portabilidad; esta edici�n fue
la que
sirvi� como punto de partida para la generaci�n de este nuevo y maravilloso mundo:
el
mundo UNIX. �sta es considerada la edici�n cl�sica de UNIX. Las dos vertientes m�s
2 Introducci�n a Unix
fuertes creadas a partir de esta edici�n de UNIX son: System V (no confundirlo con
la
quinta edici�n) y el sistema BSD (Berkeley Software Distribution).
A pesar de que ambos sistemas surgieron de la misma influencia y comparten muchas
caracter�sticas, los dos sistemas se desarrollaron con personalidades muy
distintas. System
Vesm�sconservadorys�lido;mientrasqueBSDesm�sinnovadoryexperimental.System
V era un sistema comercial, mientras que BSD no.
La historia es mucho m�s detallada y a�n hay mucho que contar acerca del desarrollo
de cada una de estas vertientes, de las cuales surgieron todav�a muchas vertientes
m�s de
UNIX.
En el caso de la licenciatura en Ciencias de la Computaci�n en la Facultad de
Ciencias,
como en muchas otras universidades de prestigio, el servicio al que acceden los
estudiantes
y la mayor�a de los profesores es utilizando una implementaci�n de UNIX, Linux, con
computadoras conectadas en una red, por lo que todo lo que sucede entre los
estudiantes y
la computadora ser� en el contexto de esta red.
1.1.1. Sistemas UNIX libres
Los sistemas compatibles UNIX libres 1 para la arquitectura i386, notablemente
Linux y
FreeBSD, han hecho de UNIX un sistema al alcance de cualquiera. Estos sistemas
proveen
excelente rendimiento y vienen con un conjunto de caracter�sticas y herramientas
est�ndar
de UNIX. Son tan robustos que incluso muchas empresas han basado su desarrollo en
alguno de estos sistemas.
Dado que estos sistemas no contienen software propietario pueden ser usados, copia-
dos y distribuidos por cualquiera (incluso gratis). Las copias de estos sistemas se
pueden
conseguir en CD-ROM o bien por medio de Internet.
Linux. Linux es una versi�n de UNIX libre, originada por Linus Torvalds en la
Universi-
dad de Helsinki en Finlandia. Fue inspirado por Minix � escrito por Andrew Tanen-
baum � y sigue m�s o menos las convenciones de System V. Su desarrollo ha sido
llevado a cabo por programadores (hackers, wizards) de todo el mundo, coordinados
por Linus a trav�s de Internet. Una gran cantidad de c�digo incluida en el "sistema
operativo Linux" 2 es GNU y la versi�n de X es XFree86.
Hay varias distribuciones de Linux y algunas de las m�s importantes son:
Ubuntu: http://www.ubuntu.com/ (y Kubuntu, la distribuci�n que utilizamos en
este trabajo: http://www.kubuntu.org/)
Fedora: http://fedora.redhat.com/
1 En este contexto libre, es una traducci�n literal de free que no significa
gratis, (como en cervezas gratis),
sino significa libre (como en libertad de expresi�n).
2 Un sistema operativo es un conjunto de programas que controla y administra los
recursos de la compu-
tadora, como son el disco, la memoria, los dispositivos de entrada y salida.
1.2 Sistemas de tiempo compartido 3
Debian: http://www.debian.org/
openSUSE: http://www.opensuse.org/
FreeSpire: http://freespire.org/
Linux se distribuye bajo la licencia GPL (General Public Licence), que es conocida
como CopyLeft y que representa gran parte de la idiosincrasia del mundo UNIX libre.
FreeBSD. FreeBSD es derivado del sistema BSD (de la versi�n 4.4 para ser exactos);
fue
creado, igual que Linux, para la arquitectura i386. Su idea fundamental de desarro-
llo es tener un ambiente estable de desarrollo para esa arquitectura. Est�
soportado
por un grupo internacional de voluntarios. La gran mayor�a de los programas que
conforman los sistemas FreeBSD, a diferencia de Linux, est�n gobernados por licen-
cias estilo Berkeley, las cuales permiten redistribuciones siempre y cuando el
c�digo
incluya una nota reconociendo el derecho de autor de Regents of the University of
California and the FreeBSD project. Algunas otras partes de FreeBSD son GNU y
est�n cubiertas por la GPL.
La pregunta m�s com�n entre usuarios de UNIX en el mundo es: �cu�l es mejor: Linux
o FreeBSD? La respuesta no es clara. Ambos tienen cosas buenas y tal vez la mejor
forma
de saberlo es probar ambos.
1.1.2. El proyecto GNU
El proyecto GNU buscaba desarrollar un sistema compatible con UNIX, totalmente
libre 3 . Es operado por la FSF (Free Software Foundation), organizaci�n fundada
por Ri-
chard Stallman, quien ha escrito gran parte del c�digo de GNU. GNU es una anagrama
de "GNU�s not UNIX". Algunas herramientas invaluables para el trabajo diario de un
es-
tudiante de Ciencias de la Computaci�n (al menos en esta Universidad) que han sido
de-
sarrolladas dentro del proyecto GNU son: un editor de texto (Emacs), el compilador
de C
(gcc), un depurador (gdb), y versiones de pr�cticamente todas las herramientas
est�ndar de
UNIX.
Todo el software distribuido por GNU se libera bajo la licencia GPL. De acuerdo con
los t�rminos de esta licencia, cualquiera puede modificar el software y
redistribuir su pro-
pia versi�n. La restricci�n principal es que te obliga a redistribuirlo incluyendo
el c�digo
fuente, a�n en el caso de que t� hayas hecho las modificaciones.
UNIX es un sistema operativo multi-usuario y multi-tarea, es decir, permite a
muchos
usuariosconectarsealsistemaycadaunodeestosusuariospuedeejecutarvariosprogramas
a la vez.
3 A varios a�os de haber sido creada, lo han logrado. Su nombre es Hurd y promete
muchas cosas intere-
santes en el mundo de los sistemas operativos. Sin embargo, Linux, (que sigue mucha
de la filosof�a de GNU,
pero no es el proyecto GNU), le lleva mucha ventaja. Sin duda alguna �sta es una
�poca interesante para estar

You might also like