Biblioteca Virtual
+28
Josue William Ali Mamani
Laura Mabel Flores Apaza
Alvaro_Encinas_Flores
Thais Flores
Keivi_Veizan
Andrew Segales
Huascar Gutierrez Castro
Paola Carlo
Nataly Llanos Vargas
José Fox Ontiveros Macías
Fabricio Choque Condori
Jorge Antonio Llave Rosso
IVER_BRAYAN_HUANCA_RADA
JHONNAEL IVAN QUISPE CH.
MARIO L. MACHACA CHURQUI
Gabriela Limachi Blanco
Kevin_Uruchi
Marisol_Callacondo
Gabriela_Calazar_A23930-5
Limbert_Loza
David_Conde
Sergio_Aruquipa
Carlos_Zurita
Cristian Angulo
Kathia_Choquehuanca
Sergio_Jimenez
America_Rivas
Ing.Terceros
32 participantes
Página 2 de 2.
Página 2 de 2. • 1, 2
Elementos de Sistemas Operativos
[img][/img]
Descripción
Este documento se ha elaborado a partir de unos apuntes diseñados para la asignatura «Arquitectura
de computadores y sistemas operativos
Escrito por: Mercedes Garijo Ayestarán y Maifeli Sedano Ruiz
Universidad Politécnica de Madrid
Contenido
Contenido
1. Introducción, terminología y objetivo
2. Sistemas operativos
3. Representación de datos textuales
4. Representación de datos numéricos
5. Representación de [datos] multimedia
6. Detección de errores y compresión
7. Almacenamiento en ficheros
8. La máquina de von Neumann y su evolución
9. El procesador BRM
10. Programación de BRM
11. Paralelismo, arquitecturas paralelas y procesadores gráficos
12. Procesadores sofware
13. Arquitectura de la máquina virtual Java
Link
[Tienes que estar registrado y conectado para ver este vínculo]
Integrantes
Oscar Gabriel Cameo Tapia
Cristian Fabian Vega Acarapi
Andrew Eiabar Segales Sejas
Andrés Álvaro Villegas Salazar" />
Descripción
Este documento se ha elaborado a partir de unos apuntes diseñados para la asignatura «Arquitectura
de computadores y sistemas operativos
Escrito por: Mercedes Garijo Ayestarán y Maifeli Sedano Ruiz
Universidad Politécnica de Madrid
Contenido
Contenido
1. Introducción, terminología y objetivo
2. Sistemas operativos
3. Representación de datos textuales
4. Representación de datos numéricos
5. Representación de [datos] multimedia
6. Detección de errores y compresión
7. Almacenamiento en ficheros
8. La máquina de von Neumann y su evolución
9. El procesador BRM
10. Programación de BRM
11. Paralelismo, arquitecturas paralelas y procesadores gráficos
12. Procesadores sofware
13. Arquitectura de la máquina virtual Java
Link
[Tienes que estar registrado y conectado para ver este vínculo]
Integrantes
Oscar Gabriel Cameo Tapia
Cristian Fabian Vega Acarapi
Andrew Eiabar Segales Sejas
Andrés Álvaro Villegas Salazar" />
Última edición por Andrew Segales el Mar Feb 06, 2024 6:22 pm, editado 2 veces
Andrew Segales- Mensajes : 6
Puntos : 6
Fecha de inscripción : 05/02/2024
Administración de Sistemas Operativos. Un enfoque práctico - Julio Gómez López - Segunda Edición
[img][/img]
Administre su servidor de una forma fácil y segura Los conocimientos que se abordan en esta obra son fundamentales para cualquier persona cuya labor profesional sea administrar un sistema informático. Por ello, va dirigida a dos tipos de usuarios: por un lado, al profesional que desea actualizar sus conocimientos y, por otro lado, al estudiante que cursa materias que abarcan estos contenidos. El libro cubre los aspectos teóricos de Administración de Sistemas Operativos, como los conocimientos prácticos en los sistemas más utilizados: Windows 2008 R2 y las distribuciones GNU/Linux, Ubuntu y Fedora. Temas incluidos: - Instalación y configuración del sistema. Hardware del servidor, configuración RAID características de los sistemas operativos, proceso de instalación y configuración. - Gestión de usuarios. Administración de usuarios, perfiles y permisos de usuarios. - El sistema de archivos. Tabla de particiones, unidades RAID, permisos y cuotas de usuarios. - Arranque y parada del sistema. Gestor de arranque, procesos, servicios, archivos de configuración y de inicio. - Monitorización del sistema. Monitorizar el rendimiento de los recursos del sistema y gestión de las alertas del sistema. - Copias de seguridad. Tipos de copias de seguridad, realizar, restaurar y planificar copias de seguridad. - Administración de la red. Configuración de la red, configuración de routers, compartir archivos e impresoras y filtrado de puertos. - Servicios básicos de red. Servidores DNS, servidores DHCP y servidores de acceso remoto. - Servicios de Internet. Servidores web, Servidores FTP y servidores de correo electrónico. - Servicios de directorio. Conceptos generales, instalación y configuración del Active Directory y de LDAP.
CAPITULO 2 REDES DE ORDENADORES
CAPÍTULO 3 SERVICIOS
CAPÍTULO 4 SEGURIDAD
WINDOWS 2008 R2
CAPÍTULO 5 INSTALACIÓN Y CONFIGURACIÓN
CAPÍTULO 6 PUESTA EN MARCHA DEL SISTEMA
CAPÍTULO 7 ADMINISTRACIÓN BÁSICA DEL SISTEMA
CAPÍTULO 8 ADMINISTRACIÓN DE LA RED
CAPÍTULO 9 SERVIDORES DE IMPRESIÓN Y DE ARCHIVOS
CAPÍTULO 10 SERVICIOS DE INTERNET
CAPÍTULO 11 DIRECTORIO ACTIVO
GNULINUX
CAPÍTULO 12 INSTALACIÓN Y CONFIGURACIÓN
CAPÍTULO 13 PUESTA EN MARCHA DEL SISTEMA
CAPÍTULO 14 ADMINISTRACIÓN BÁSICA DEL SISTEMA
CAPÍTULO 15 PROGRAMACIÓN SHELL
CAPÍTULO 16 ADMINISTRACIÓN DE LA RED
CAPÍTULO 17 SERVIDORES DE IMPRESIÓN Y DE ARCHIVOS
CAPÍTULO 18 SERVICIOS DE INTERNET
CAPÍTULO 19 LDAP
PÁGINA WEB
ÍNDICE ALFABÉTICO
CONTRAPORTADA
[Tienes que estar registrado y conectado para ver este vínculo]
Descripción
Administre su servidor de una forma fácil y segura Los conocimientos que se abordan en esta obra son fundamentales para cualquier persona cuya labor profesional sea administrar un sistema informático. Por ello, va dirigida a dos tipos de usuarios: por un lado, al profesional que desea actualizar sus conocimientos y, por otro lado, al estudiante que cursa materias que abarcan estos contenidos. El libro cubre los aspectos teóricos de Administración de Sistemas Operativos, como los conocimientos prácticos en los sistemas más utilizados: Windows 2008 R2 y las distribuciones GNU/Linux, Ubuntu y Fedora. Temas incluidos: - Instalación y configuración del sistema. Hardware del servidor, configuración RAID características de los sistemas operativos, proceso de instalación y configuración. - Gestión de usuarios. Administración de usuarios, perfiles y permisos de usuarios. - El sistema de archivos. Tabla de particiones, unidades RAID, permisos y cuotas de usuarios. - Arranque y parada del sistema. Gestor de arranque, procesos, servicios, archivos de configuración y de inicio. - Monitorización del sistema. Monitorizar el rendimiento de los recursos del sistema y gestión de las alertas del sistema. - Copias de seguridad. Tipos de copias de seguridad, realizar, restaurar y planificar copias de seguridad. - Administración de la red. Configuración de la red, configuración de routers, compartir archivos e impresoras y filtrado de puertos. - Servicios básicos de red. Servidores DNS, servidores DHCP y servidores de acceso remoto. - Servicios de Internet. Servidores web, Servidores FTP y servidores de correo electrónico. - Servicios de directorio. Conceptos generales, instalación y configuración del Active Directory y de LDAP.
Contenido
CAPÍTULO 1 ASPECTOS BÁSICOS CAPITULO 2 REDES DE ORDENADORES
CAPÍTULO 3 SERVICIOS
CAPÍTULO 4 SEGURIDAD
WINDOWS 2008 R2
CAPÍTULO 5 INSTALACIÓN Y CONFIGURACIÓN
CAPÍTULO 6 PUESTA EN MARCHA DEL SISTEMA
CAPÍTULO 7 ADMINISTRACIÓN BÁSICA DEL SISTEMA
CAPÍTULO 8 ADMINISTRACIÓN DE LA RED
CAPÍTULO 9 SERVIDORES DE IMPRESIÓN Y DE ARCHIVOS
CAPÍTULO 10 SERVICIOS DE INTERNET
CAPÍTULO 11 DIRECTORIO ACTIVO
GNULINUX
CAPÍTULO 12 INSTALACIÓN Y CONFIGURACIÓN
CAPÍTULO 13 PUESTA EN MARCHA DEL SISTEMA
CAPÍTULO 14 ADMINISTRACIÓN BÁSICA DEL SISTEMA
CAPÍTULO 15 PROGRAMACIÓN SHELL
CAPÍTULO 16 ADMINISTRACIÓN DE LA RED
CAPÍTULO 17 SERVIDORES DE IMPRESIÓN Y DE ARCHIVOS
CAPÍTULO 18 SERVICIOS DE INTERNET
CAPÍTULO 19 LDAP
PÁGINA WEB
ÍNDICE ALFABÉTICO
CONTRAPORTADA
ACERCA DEL LIBRO
- Título: Administración de Sistemas Operativos. Un enfoque práctico segunda edición
- Autor: Julio Gómez López
- Editor: Grupo Editorial RA-MA
- Número de Páginas: 494 páginas
Link
[Tienes que estar registrado y conectado para ver este vínculo]
Integrantes
- Ivan Condori Choquehuanca
- Keivi Remberto Veizan Pomacagua
Keivi_Veizan- Mensajes : 4
Puntos : 4
Fecha de inscripción : 05/02/2024
A Andrew Segales le gusta esta publicaciòn
Re: Biblioteca Virtual
--DATOS TECNICOS--
314 Paginas
Autor: Francisco Javier Muñoz Lopez
Editorial: McGraw Hill
ISBN:978-84-481-8032-4
--DESCRIPCION--
El libro trata acerca de como la evolucion de los sistemas operativos este ligada directamente a la evolucion del hardware y, como no, a la evolucion del software de aplicaciones.
La evolucion y miniaturización de la electrónica ha potenciado la evolucion de componentes informaticos cada vez mas pequeños, baratos, rápidos y que consumen menos energía. Gracias a ello, los ordenadores cada vez estan mas presentes en nuestra vida, ya que los tenemos en casa, en el trabajo, e incluso los llevamos encima.
En esta obra pretendemos dar una visión general de lo que son los sistemas informaticos en su conjunto, pero especialmente centrado en los sistemas operativos en entorno de escritorio domestico.
Analizaremos caracteristicas de los sistemas operativos, pero lo mas importante: aprenderemos a personalizarlos, configurarlos y sacarles el máximo rendimiento.
CONTENIDO
1. Introducción a los sistemas informáticos
2. Concepto de sistema operativo. Elementos y estructura
3. Gestión de los recursos de un sistema operativo
4. Introducción a los sistemas operativos monopuesto
5. Instalación de sistemas operativos monopuesto
6. Sistemas operativos monopuesto. Introducción a Windows
7. Sistema operativo Windows. Operaciones con directorios o carpetas y archivos
8. Operaciones generales en sistemas operativos Windows
9. Administración de Windows I. Usuarios y grupos
10. Administración del sistema operativo Windows II. Redes y mantenimiento
11. Introducción al sistema operativo Linux
12. Operaciones generales sobre sistemas operativos Linux
13. Administración de Linux I. Configuración de red. Usuarios y grupos
14. Administración de Linux II. Servicios, impresoras y copias de seguridad
--LINK DE ACCESO--
[Tienes que estar registrado y conectado para ver este vínculo]
--INTEGRANTES--
• Est. Apolaca Marino Dilan
• Est. Tintaya Mollinedo Norman Lisandro
• Est. Flores Gutierrez Thais Daniela
• Est. Soria Quispe Daniel Justo
Última edición por Thais Flores el Mar Feb 06, 2024 10:57 pm, editado 1 vez
Thais Flores- Mensajes : 16
Puntos : 16
Fecha de inscripción : 05/02/2024
Re: Biblioteca Virtual
DATOS TECNICOS.-
193 Paginas
AUTORA: MARIFE ALDEA JIMENEZ
Editorial: Educàlia
ISBN: 978-84-942757-5-3
DESCRIPCION.-
Este libro está hecho para estudiantes de sistemas informáticos y en red, específicamente para el curso de Administración de Sistemas Operativos. La autora, con más de diez años de experiencia como profesora, lo creó porque estaba harta de la falta de materiales específicos. Se basa en los contenidos mínimos del currículo oficial, pero el orden de las unidades no siempre coincide con el decreto, ya que la autora prioriza la practicidad.
Las prácticas se centran en sistemas como Windows 2008 Server, Ubuntu y Windows 7, pero se mencionan también sistemas más antiguos y nuevos. El libro se enfoca en prácticas acompañadas de explicaciones teóricas, ya que los ciclos formativos suelen tener un fuerte componente práctico. La autora espera que este libro sea útil para los estudiantes de administración de sistemas operativos.
CONTENIDO.-
1. Aplicación de lenguajes de «scripting» en sistemas operativos libres y propietarios:
1.1. Procedimientos bat:
1.1.1. Estructuras del lenguaje.(cmd).
1.2. Scripts de linux:
1.2.1. Estructuras del lenguaje. (bash).
...
16
2. Administración de servicio de directorio:
2.1. Servicio de directorio. Definición.
2.2. ¿Que es LDAP? Nomenclatura.
2.2.1. Servidor OpenLDAP.
2.2.2. Instalar un servidor LDAP en Ubuntu.
2.2.3. Esquemas.
2.2.4. Crear de usuarios y grupos en el servidor openLDAP.
2.2.5. Filtros de búsqueda LDAP.
2.2.6. Administración del Servidor LDAP mediante entorno gráfico.
2.2.7. Creación de un cliente ldap en un equipo Ubuntu.
2.2.8. Configurar el entorno gráfico para que reconozca usuarios ldap.
2.3. Directorio Activo con Windows Server.
2.3.1. Funciones del dominio.
2.3.2. Controladores de dominio.
2.3.3. Jerarquía de Directorio Activo.
2.3.4. Requerimientos para instalar Active Directory.
2.3.5. Instalación de directorio activo.
2.3.6. Esquema de Active Directory.
2.3.7. Usuarios, grupos y equipos.
...
63
3. Administración de procesos del sistema:
3.1. Procesos. Tipos. Estados. Estructura.
3.2. Hilos de ejecución. (threads o procesos ligeros)
3.3. El planificador. Algoritmos de planificación de procesos.
3.4. Interrupciones y excepciones.
3.5. Sincronización y comunicación. Exclusión mutua. Semáforos, monitores y mensajes.
Interbloqueo.
3.6. Gestión de los procesos del sistema. Linea de orden. Entorno gráfico.
3.7. Secuencia de arranque del sistema. Demonios y servicios.
3.8. Arranque de linux.
...
104
4. Información del sistema:
4.1. Estructura de directorios.
4.2. Búsqueda de información del sistema. Órdenes. Herramientas gráficas.
4.3. Sistema de archivos virtual.
4.4. Software instalado. Órdenes. Herramientas gráficas.
4.5. Gestión de la información del sistema. Rendimiento. Estadísticas.
...
134
5. Instalación, configuración y uso de servicios de acceso y administración remota:
5.1. Terminales en modo texto.
5.2. Servicios de acceso remoto del propio sistema operativo. Escritorio remoto.
5.3. Herramientas gráficas externas para la administración remota.
...
152
6. Administrador de servidores de impresión:
6.1. Tipos de impresoras para trabajo en red.
6.2. Protocolos de impresión.
6.3. Servidores de impresión.
...
157
7. Integración de sistemas operativos en red libres y propietarios:
7.1. Descripción de escenarios heterogéneos.
7.2. Instalación, configuración y uso de servicios de red para compartir recursos.
7.3. Samba.
7.3.1. Instalación de samba server.
7.3.3. Configuración de recursos. Smb.conf.
7.3.4. Seguridad en samba.
7.3.5. Acceso a recursos samba desde Windows.
7.3.6. Acceso a recursos samba desde Linux.
7.3.7. Herramientas gráficas para samba.
7.3.8. Samba como controlador de dominio.
7.3.9. Servidor Samba unido a Directorio Activo.
7.3.10. Samba 4.
7.3.11. Ejercicios propuestos.
7.4. NFS
7.4.1. Pasos para compartir un recurso mediante nfs.
7.4.2. Ficheros de configuración.
7.4.3. Instalación de servidor NFS.
7.4.4. Fichero /etc/exports.
7.4.5. Seguridad en NFS.
7.4.6. Conexión a una unidad NFS desde cliente Linux.
7.4.7. NFS y Windows.
7.4.8. Ejercicios.
...
192
LINK DE ACCESO.-
[Tienes que estar registrado y conectado para ver este vínculo]
INTEGRANTES.-
• Est. Apaza Calle Eric
• Est. Encinas Flores Alvaro Santiago
• Est. Venegas Noguera Derix
• Est. Baptista Chávez Elian Andrés
Alvaro_Encinas_Flores- Mensajes : 9
Puntos : 11
Fecha de inscripción : 05/02/2024
A Alvaro_Encinas_Flores le gusta esta publicaciòn
Re: Biblioteca Virtual
ACERCA DEL LIBRO
Este libro se deriva del libro “Sistemas Operativos. Una visión aplicada” editado en el 2007 y cuyos autores son
D. Jesús Carretero Pérez, D. Félix Garcia Carballeira, D. Pedro de Miguel Anasagasti y D. Fernando Pérez Costoya.
El presente libro tiene un enfoque mucho menos generalista y está especialmente dirigido a los alumnos de Informática de la “Escuela Técnica Superior de Informática” de la “Universidad Politécnica de Madrid”.
DESCRIPCION
El libro "Sistemas Operativos" de Daniel Sol Llaven es una guía completa que abarca desde los conceptos fundamentales hasta aspectos avanzados de los sistemas operativos. Con un enfoque didáctico y estructurado, el autor explora temas clave como la administración de memoria, sistemas de archivos, planificación de procesos, concurrencia y comunicación entre procesos.
Esta obra es una lectura imprescindible para estudiantes, profesionales y entusiastas de la informática que deseen comprender a fondo el funcionamiento interno de los sistemas operativos. A través de ejemplos prácticos y explicaciones claras, el libro proporciona una visión integral de los sistemas operativos, ayudando a los lectores a adquirir conocimientos sólidos y actualizados en este campo tan importante en el mundo de la computación.
CONTENIDO
1 Conceptos arquitectónicos del computador
1.1. Estructura y funcionamiento del computador
1.2. Modelo de programación del computador 1.2.1. Modos de ejecución 1.2.2. Secuencia de funcionamiento del procesador 1.2.3. Registros de control y estado
1.3. Interrupciones
1.4. El reloj
1.5. Jerarquía de memoria 1.5.1. Memoria cache y memoria virtual
1.6. Entrada/Salida 1.6.1. Características de la entrada/salida 1.6.2. Periféricos 1.6.3. Periféricos más importantes 1.6.4. E/S y concurrencia 1.6.5. Buses y direccionamiento
1.7. Protección 1.7.1. Mecanismo de protección del procesador 1.7.2. Mecanismos de protección de memoria 1.7.3. Protección de entrada/salida
1.8. Multiprocesador y multicomputador
1.9. Prestaciones
1.10. Lecturas recomendadas
1.11. Ejercicios
2 Introducción a los sistemas operativos
2.1. ¿Qué es un sistema operativo? 2.1.1. Sistema operativo 2.1.2. Concepto de usuario y de grupo de usuarios 2.1.3. Concepto de proceso y multitarea
2.2. Arranque y parada del sistema 2.2.1. Arranque hardware 2.2.2. Arranque del sistema operativo 2.2.3. Parada del computador
2.3. Activación del sistema operativo 2.3.1. Servicios del sistema operativo y funciones de llamada
2.4. Tipos de sistemas operativos
2.5. Componentes del sistema operativo 2.5.1. Gestión de procesos 2.5.2. Gestión de memoria 2.5.3. Comunicación y sincronización entre procesos 2.5.4. Gestión de la E/S 2.5.5. Gestión de ficheros y directorios
2.6. Seguridad y protección
2.7. Interfaz de programación 2.7.1. Single UNIX Specification 2.7.2. Windows
2.8. Interfaz de usuario del sistema operativo 2.8.1. Funciones de la interfaz de usuario 2.8.2. Interfaces alfanuméricas 2.8.3. Interfaces gráficas 2.8.4. Ficheros de mandatos o shell-scripts
2.9. Diseño de los sistemas operativos 2.9.1. Estructura del sistema operativo 2.9.2. Carga dinámica de módulos 2.9.3. Prestaciones y fiabilidad 2.9.4. Diseño del intérprete de mandatos
2.10. Historia de los sistemas operativos
2.11. Lecturas recomendadas
2.12. Ejercicios
3 Procesos
3.1. Concepto de Proceso
3.2. Multitarea 3.2.1. Base de la multitarea 3.2.2. Ventajas de la multitarea
3.3. Información del proceso 3.3.1. Estado del procesador 3.3.2. Imagen de memoria del proceso 3.3.3. Información del bloque de control de proceso (BCP) 3.3.4. Información del proceso fuera del BCP
3.4. Vida de un proceso 3.4.1. Creación del proceso 3.4.2. Interrupción del proceso 3.4.3. Activación del proceso 3.4.4. Terminación del proceso 3.4.5. Estados básicos del proceso 3.4.6. Estados de espera y suspendido 3.4.7. Cambio de contexto 3.4.8. Privilegios del proceso UNIX
3.5. Señales y excepciones 3.5.1. Señales UNIX 3.5.2. Excepciones Windows
3.6. Temporizadores
3.7. Procesos especiales 3.7.1. Proceso servidor 3.7.2. Demonio 3.7.3. Proceso de usuario y proceso de núcleo
3.8. Threads 3.8.1. Gestión de los threads 3.8.2. Creación, ejecución y terminación de threads 3.8.3. Estados de un thread 3.8.4. Paralelismo con threads 3.8.5. Diseño con threads
3.9. Aspectos de diseño del sistema operativo 3.9.1. Núcleo con ejecución independiente 3.9.2. Núcleo con ejecución dentro de los procesos de usuario
3.10. Tratamiento de interrupciones 3.10.1. Interrupciones y expulsión 3.10.2. Detalle del tratamiento de interrupciones 3.10.3. Llamadas al sistema operativo 3.10.4. Cambios de contexto voluntario e involuntario
3.11. Tablas del sistema operativo
3.12. Planificación del procesador 3.12.1. Objetivos de la planificación 3.12.2. Niveles de planificación de procesos 3.12.3. Puntos de activación del planificador 3.12.4. Algoritmos de planificación 3.12.5. Planificación en multiprocesadores
3.13. Servicios 3.13.1. Servicios UNIX para la gestión de procesos 3.13.2. Servicios UNIX de gestión de threads 3.13.3. Servicios UNIX para gestión de señales y temporizadores 3.13.4. Servicios UNIX de planificación 3.13.5. Servicios Windows para la gestión de procesos 3.13.6. Servicios Windows para la gestión de threads 3.13.7. Servicios Windows para el manejo de excepciones 3.13.8. Servicios Windows de gestión de temporizadores 3.13.9. Servicios Windows de planificación
3.14. Lecturas recomendadas
3.15. Ejercicios
4 Gestión de memoria
4.1. Introducción
4.2. Jerarquía de memoria 4.2.1. Migración de la información 4.2.2. Parámetros característicos de la jerarquía de memoria 4.2.3. Coherencia 4.2.4. Direccionamiento 4.2.5. La proximidad referencial 4.2.6. Concepto de memoria cache 4.2.7. Concepto de memoria virtual y memoria real 4.2.8. La tabla de páginas 4.2.9. Unidad de gestión de memoria (MMU)
4.3. Niveles de gestión de memoria 4.3.1. Operaciones en el nivel de procesos 4.3.2. Operaciones en el nivel de regiones 4.3.3. Operaciones en el nivel de datos dinámicos
4.4. Esquemas de gestión de la memoria del sistema 4.4.1. Asignación contigua 4.4.2. Segmentación 4.4.3. Memoria virtual. Paginación 4.4.4. Segmentación paginada
4.5. Ciclo de vida de un programa
4.6. Creación de la imagen de memoria del proceso 4.6.1. El fichero ejecutable 4.6.2. Creación de la imagen de memoria. Montaje estático 4.6.3. Creación de la imagen de memoria. Montaje dinámico 4.6.4. El problema de la reubicación 4.6.5. Fichero proyectado en memoria 4.6.6. Ciclo de vida de las páginas de un proceso 4.6.7. Técnica de copy on write (COW) 4.6.8. Copia por asignación 4.6.9. Ejemplo de imagen de memoria
4.7. Necesidades de memoria de un proceso
4.8. Utilización de datos dinámicos 4.8.1. Utilización de memoria en bruto 4.8.2. Errores frecuentes en el manejo de memoria dinámica 4.8.3. Alineación de datos. Tamaño de estructuras de datos 4.8.4. Crecimiento del heap
4.9. Técnicas de asignación dinámica de memoria 4.9.1. Particiones fijas 4.9.2. Particiones variables 4.9.3. Sistema buddy binario
4.10. Aspectos de diseño de la memoria virtual 4.10.1. Tabla de páginas 4.10.2. Políticas de administración de la memoria virtual 4.10.3. Política de localización 4.10.4. Política de extracción 4.10.5. Política de ubicación 4.10.6. Política de reemplazo 4.10.7. Política de actualización 4.10.8. Política de reparto de espacio entre los procesos 4.10.9. Gestión del espacio de swap
4.11. Servicios de gestión de memoria 4.11.1. Servicios UNIX de proyección de ficheros 4.11.2. Servicios UNIX de carga de bibliotecas 4.11.3. Servicios UNIX para bloquear páginas en memoria principal 4.11.4. Servicios Windows de proyección de ficheros 4.11.5. Servicios Windows de carga de bibliotecas 4.11.6. Servicios Windows para bloquear páginas en memoria principal
4.12. Lecturas recomendadas
4.13. Ejercicios
5 E/S y Sistema de ficheros
5.1. Introducción
5.2. Nombrado de los dispositivos
5.3. Manejadores de dispositivos
5.4. Servicios de E/S bloqueantes y no bloqueantes
5.5. Consideraciones de diseño de la E/S 5.5.1. El manejador del terminal 5.5.2. Almacenamiento secundario 5.5.3. Gestión de reloj 5.5.4. Ahorro de energía
5.6. Concepto de fichero 5.6.1. Visión lógica del fichero 5.6.2. Unidades de información del disco 5.6.3. Otros tipos de ficheros 5.6.4. Metainformación del fichero
5.7. Directorios 5.7.1. Directorio de trabajo o actual 5.7.2. Nombrado de ficheros y directorios 5.7.3. Implementación de los directorios 5.7.4. Enlaces
5.8. Sistema de ficheros 5.8.1. Gestión del espacio libre
5.9. Servidor de ficheros 5.9.1. Vida de un fichero 5.9.2. Descriptores de fichero 5.9.3. Semántica de coutilización 5.9.4. Servicio de apertura de fichero 5.9.5. Servicio de duplicar un descriptor de fichero 5.9.6. Servicio de creación de un fichero 5.9.7. Servicio de lectura de un fichero 5.9.8. Servicio de escritura de un fichero 5.9.9. Servicio de cierre de fichero 5.9.10. Servicio de posicionar el puntero del fichero 5.9.11. Servicios sobre directorios 5.9.12. Servicios sobre atributos
5.10. Protección 5.10.1. Listas de control de accesos ACL (Access Control List) 5.10.2. Listas de Control de Acceso en UNIX 5.10.3. Listas de Control de Acceso en Windows 5.10.4. Servicios de seguridad 5.10.5. Clasificaciones de seguridad
5.11. Montado de sistemas de ficheros
5.12. Consideraciones de diseño del servidor de ficheros 5.12.1. Consistencia del sistema de ficheros y journaling 5.12.2. Journaling 5.12.3. Memoria cache de E/S 5.12.4. Servidor de ficheros virtual 5.12.5. Ficheros contiguos ISO-9660 5.12.6. Ficheros enlazados FAT 5.12.7. Sistemas de ficheros UNIX 5.12.8. NTFS 5.12.9. Copias de respaldo
5.13. Sistemas de ficheros distribuidos 5.13.1. Nombrado 5.13.2. Métodos de acceso 5.13.3. NFS 5.13.4. CIFS 5.13.5. Empleo de paralelismo en el sistema de ficheros
5.14. Ficheros de inicio sesión en Linux
5.15. Servicios de E/S
5.15.1. Servicios de entrada/salida en UNIX Contenido 7
5.15.2. Servicios de entrada/salida en Windows
5.16. Servicios de ficheros y directorios 5.16.1. Servicios UNIX para ficheros 5.16.2. Ejemplo de uso de servicios UNIX para ficheros 5.16.3. Servicios Windows para ficheros 5.16.4. Ejemplo de uso de servicios Windows para ficheros 5.16.5. Servicios UNIX de directorios 5.16.6. Ejemplo de uso de servicios UNIX para directorios 5.16.7. Servicios Windows para directorios 5.16.8. Ejemplo de uso de servicios Windows para directorios
5.17. Servicios de protección y seguridad 5.17.1. Servicios UNIX de protección y seguridad 5.17.2. Ejemplo de uso de los servicios de protección de UNIX 5.17.3. Servicios Windows de protección y seguridad 5.17.4. Ejemplo de uso de los servicios de protección de Windows
5.18. Lecturas recomendadas
5.19. Ejercicios
6 Comunicación y sincronización de procesos
6.1. Concurrencia 6.1.1. Ventajas de la concurrencia 6.1.2. Tipos de procesos concurrentes 6.1.2.1. Tipos de recursos compartidos 6.1.3. Recursos compartidos y coordinación 6.1.4. Resumen de los conceptos principales
6.2. Concepto de atomicidad
6.3. Problemas que plantea la concurrencia 6.3.1. Condiciones de carrera 6.3.2. Sincronización 6.3.3. La sección crítica 6.3.4. Interbloqueo
6.4. Diseño de aplicaciones concurrentes 6.4.1. Pasos de diseño 6.4.2. Esquemas de acceso a recursos compartidos
6.5. Modelos de comunicación y sincronización 6.5.1. Productor-consumidor. Modela comunicación 6.5.2. Lectores-escritores. Modela acceso a recurso compartido 6.5.3. Filósofos comensales. Modela el acceso a recursos limitados 6.5.4. Modelo cliente-servidor 6.5.5. Modelo de comunicación entre pares "Peer-to-peer" (P2P)
6.6. Mecanismos de comunicación 6.6.1. Comunicación remota: Formato de red 6.6.2. Memoria compartida 6.6.3. Comunicación mediante ficheros 6.6.4. Tubería o pipe 6.6.5. Sockets. Comunicación remota
6.7. Mecanismos de sincronización 6.7.1. Sincronización mediante señales 6.7.2. Semáforos 6.7.3. Mutex y variables condicionales 6.7.4. Cerrojos sobre ficheros 6.7.5. Paso de mensajes 6.7.6. Empleo más adecuado de los mecanismos de comunicación y sincronización
6.8. Transacciones 6.8.1. Gestor de transacciones 6.8.2. Transacciones e interbloqueo
6.9. Aspectos de diseño 6.9.1. Soporte hardware para la sincronización 6.9.2. Espera activa 6.9.3. Espera pasiva o bloqueo 6.9.4. Sincronización dentro del sistema operativo 6.9.5. Comunicación dentro del sistema operativo
6.10. Servicios UNIX 6.10.1. Tuberías UNIX 6.10.2. Ejemplos con tuberías UNIX 6.10.3. Sockets6.10.4. Ejemplos con sockets - 351 6.10.5. Semáforos UNIX - 356 6.10.6. Ejemplos con semáforos - 357 6.10.7. Mutex y variables condicionales POSIX - 363 6.10.8. Ejemplos con mutex y variables condicionales - 363 6.10.9. Colas de mensajes en UNIX - 366 6.10.10. Ejemplos de colas de mensajes en UNIX - 367 6.10.11. Cerrojos en UNIX - 373 6.10.12. Ejemplos con cerrojos UNIX - 374
6.11. Servicios Windows - 375 6.11.1. Tuberías en Windows - 376 6.11.2. Secciones críticas en Windows - 381 6.11.3. Semáforos en Windows - 381 6.11.4. Mutex y eventos en Windows - 384 6.11.5. Mailslots - 386
6.12. Lecturas recomendadas y bibliografía - 388 6.13. Ejercicios - 388
link de descarga
[Tienes que estar registrado y conectado para ver este vínculo]
INTEGRANTES.
- Choque Nina Dilan Cimar
- Flores Apaza Laura Mabel
- Sea Maldonado Roberto
Laura Mabel Flores Apaza- Mensajes : 8
Puntos : 12
Fecha de inscripción : 05/02/2024
Fundamentos de sistemas operativos: entornos de trabajo
Lezcano Brito, Mateo G.
DESCRIPCION
Este libro se dedica al estudio de los sistemas operativos desde la perspectiva de una carrera de perfil informático. El libro comienza con una introducción que ofrece una visión general de los sistemas operativos y luego se organiza en dos secciones. En la primera sección, el primer capítulo trata acerca de las formas de planificación del procesador central, y explica los diferentes tipos de planificadores y los algoritmos que se usan para distribuir el tiempo de procesamiento; también se analizan los problemas de sincronización entre procesos concurrentes. El segundo capítulo se basa en el concepto abstracto de archivo para explicar la forma en que se organiza la información sobre los soportes de almacenamiento externos; se discuten las distintas maneras de organizar el espacio ocupado por los archivos y el control sobre los espacios libres, y finalmente, se presentan algunos ejemplos de sistemas de archivos típicos. El tercer capítulo expone las técnicas que se usan para administrar la memoria, haciendo énfasis en las más actuales, el paginado y la segmentación, pero también analiza técnicas más antiguas. La segunda sección presenta un caso de estudio que se dedica al sistema operativo Unix y sus descendientes. Esta sección se divide en dos capítulos: en el cuarto capítulo se estudian diversos aspectos acerca de esa familia de sistemas operativos, mientras que el quinto capítulo está dedicado a la programación en Shell script. El libro finaliza con unas conclusiones e incluye un anexo cuya función es explicar la instalación de máquinas virtuales
DATOS TECNICOS
Lezcano Brito, Mateo G.
Fundamentos de sistemas operativos: entornos de trabajo
Fundamentals of operating systems: work environments
Mateo G. Lezcano Brito.
Universidad Cooperativa de Colombia, 2018.
Recurso digital (1 archivo pdf: 6Mb).
cant. Paginas : 243 Pag.
ISBN 978-958-760-107-7 (digital)
CO-BoBN– a1023196
CONTENIDO
Contenido
Introducción Pagina 13
Bibliografia Pagina 25
Capitulo 1
Manipulacion de procesos e hilos Pagina 27
Capitulo 2
El sistema de archivos Pagina 77
Capitulo 3
Administración de la memoria Pagina 105
SEGUNDA PARTE
Caso de estudio. Unix y sus descendientes Pagina 129
Capitulo 4
Generalidades del SO Unix y sus descendientes Pagina 131
Conclusiones Pagina 212
Anexos Pagina 214
link de descarga
[Tienes que estar registrado y conectado para ver este vínculo]
INTEGRANTES
- PABLO MARCELO PACHECO BOHORQUEZ
- JOSE ALDAIR ROJAS FEBRERO
- JOSUE WILLIAM ALI MAMANI
Josue William Ali Mamani- Mensajes : 13
Puntos : 13
Fecha de inscripción : 05/02/2024
Grupo: SEDLGProgramm
Titulo:
Sistemas operativos monopuesto 2.ª edición
Descripción:
Sistemas Operativos Monopuesto, 2.ª Edición es una obra esencial para aquellos interesados en el diseño, funcionamiento y administración de sistemas operativos para computadoras personales. En su segunda edición, el libro se actualiza para reflejar los avances tecnológicos y las nuevas tendencias en el campo de los sistemas operativos, proporcionando una visión exhaustiva y detallada que abarca desde los conceptos básicos hasta los aspectos más complejos de la administración de recursos y ejecución de procesos. Los autores logran un equilibrio entre la teoría y la práctica, permitiendo a los lectores no solo comprender cómo funcionan los sistemas operativos, sino también aplicarlos en situaciones reales.
Uno de los puntos fuertes del libro es su enfoque didáctico y estructurado. Cada capítulo está diseñado para construir sobre los conocimientos adquiridos en los anteriores, lo que facilita un aprendizaje progresivo y sólido. Los temas incluyen la gestión de memoria, la administración de procesos, la sincronización y comunicación entre procesos, y los sistemas de archivos, entre otros. Además, se incluyen ejercicios y ejemplos prácticos que ayudan a consolidar los conocimientos teóricos, convirtiendo el libro en una herramienta invaluable tanto para estudiantes como para profesionales que buscan actualizar sus conocimientos.
Capítulos:
1. Introducción a los sistemas informáticos
2. Sistemas Operativos. Elementos, estructura y funciones generales.
3. Introducción a Linux. Instalación. Entorno de trabajo
4. Linux. Uso del sistema operativo
5. Linux. Gestión de usuarios y grupos. Gestión de procesos
6. Linux. Administración y configuración avanzada
7. Introducción a Windows. Instalación. Interfaces de usuario
8. Windows. Sistema de archivos. Uso del sistema operativo
9. Windows. Administración y configuración
10. Máquinas virtuales
* Enlaces
Enlace del Libro:
[Tienes que estar registrado y conectado para ver este vínculo]
Integrantes:
Galia Alisson Laura Rojas
Carla Marcela Arancibia Delgadillo
Alex Adrian Choquehuanca Yurja
Leonel Fernando Fernandez Paucara
Andres David Marca Llusco
Aldahir Fernandez Aliaga
Claudia Daniela Nina Castillo
Sistemas operativos monopuesto 2.ª edición
Descripción:
Sistemas Operativos Monopuesto, 2.ª Edición es una obra esencial para aquellos interesados en el diseño, funcionamiento y administración de sistemas operativos para computadoras personales. En su segunda edición, el libro se actualiza para reflejar los avances tecnológicos y las nuevas tendencias en el campo de los sistemas operativos, proporcionando una visión exhaustiva y detallada que abarca desde los conceptos básicos hasta los aspectos más complejos de la administración de recursos y ejecución de procesos. Los autores logran un equilibrio entre la teoría y la práctica, permitiendo a los lectores no solo comprender cómo funcionan los sistemas operativos, sino también aplicarlos en situaciones reales.
Uno de los puntos fuertes del libro es su enfoque didáctico y estructurado. Cada capítulo está diseñado para construir sobre los conocimientos adquiridos en los anteriores, lo que facilita un aprendizaje progresivo y sólido. Los temas incluyen la gestión de memoria, la administración de procesos, la sincronización y comunicación entre procesos, y los sistemas de archivos, entre otros. Además, se incluyen ejercicios y ejemplos prácticos que ayudan a consolidar los conocimientos teóricos, convirtiendo el libro en una herramienta invaluable tanto para estudiantes como para profesionales que buscan actualizar sus conocimientos.
Capítulos:
1. Introducción a los sistemas informáticos
2. Sistemas Operativos. Elementos, estructura y funciones generales.
3. Introducción a Linux. Instalación. Entorno de trabajo
4. Linux. Uso del sistema operativo
5. Linux. Gestión de usuarios y grupos. Gestión de procesos
6. Linux. Administración y configuración avanzada
7. Introducción a Windows. Instalación. Interfaces de usuario
8. Windows. Sistema de archivos. Uso del sistema operativo
9. Windows. Administración y configuración
10. Máquinas virtuales
* Enlaces
Enlace del Libro:
[Tienes que estar registrado y conectado para ver este vínculo]
Integrantes:
Galia Alisson Laura Rojas
Carla Marcela Arancibia Delgadillo
Alex Adrian Choquehuanca Yurja
Leonel Fernando Fernandez Paucara
Andres David Marca Llusco
Aldahir Fernandez Aliaga
Claudia Daniela Nina Castillo
Andres David Marca Llusco- Mensajes : 13
Puntos : 15
Fecha de inscripción : 22/07/2024
Re: Biblioteca Virtual
DATOS TECNICOS
Título: Sistemas Operativos Monopuesto
Autor: María del Pilar Alegre Ramos
Edición: 1ra edición
Editorial: McGraw-Hill
ISBN: 9788448125227
Año de publicación: 2001
Número de páginas: 370 páginas
Idioma: Español
DESCRIPCION
El libro "Sistemas Operativos Monopuesto" de María del Pilar Alegre Ramos es una guía detallada que explora los fundamentos y las aplicaciones prácticas de los sistemas operativos diseñados para computadoras personales. La autora proporciona una explicación clara y concisa de los conceptos esenciales, desde la gestión de procesos y memoria hasta los sistemas de archivos y la seguridad. A través de ejemplos prácticos y ejercicios, el libro facilita el aprendizaje y la comprensión de cómo los sistemas operativos administran los recursos del hardware y proporcionan servicios esenciales para las aplicaciones de software, haciendo énfasis en la estructura y funcionamiento de sistemas operativos de un solo usuario.
CONTENIDOS1.1 El sistema informático.
1.2 Evolución histórica de la información.
1.2.1 Generación de computadoras.
1.3 Componentes hardware.
1.3.1 Elementos físicos.
1.3.2 Elementos funcionales.
1.4 Software de un sistema informático.
1.4.1 Tipos de software.
1.4.2 Licencias de software.
1.4.3 Normativa legal.
1.5 Representación de la información.
1.5.1 Tipos de datos.
1.5.2 Sistemas de numeración.
1.5.3 Cambios de base.
1.5.4 Operaciones en binario.
1.5.5 Detección de errores.
1.6 Codificación de la información.
1.6.1 Almacenamiento de la información.
1.6.2 Numérica.
1.6.3 Alfanumérica.
1.6.4 Formatos para almacenar la información
Resumen de conceptos.
Actividades de enseñanza y aprendizaje.
ENLACE DEL LIBRO
[Tienes que estar registrado y conectado para ver este vínculo]
INTEGRANTES:
-Thais Daniela Flores Gutierrez
-Dante Andree Yupanqui Rodriguez
-Yerain Nahuel Cuestas Cayo
-Wara Nicol Chuquimia Apaza
-Max Harold Carvajal Limachi
-Adiel Mario Apaza Callisaya
-Jose Angel Mamani Pinto
Última edición por Wara_Chuquimia_Apaza el Lun Jul 22, 2024 11:56 am, editado 1 vez
Wara_Chuquimia_Apaza- Mensajes : 10
Puntos : 16
Fecha de inscripción : 22/07/2024
Edad : 20
Re: Biblioteca Virtual
Equipo: SEEDVER
INTEGRANTES1. JESÚS ARIO SOTO MERCADO
2. IZAI ALEJANDRO ZALLES MERINO
3. DENIS HELMER RAMOS PACO
4. BRADLEY ANTHONOV SAENZ MOLINA
5. MIGUEL ANGEL FLORES SERRANO
6. ADALID JESUS CONDORI VELASCO
7. EDISON CLEVER CHECA TITO
8. JORGE ADRIAN ALIAGA MONTES
Implantacion de sistemas operativos
Datos Técnicos:
Autor José Luis Raya CabreraTítulo Implantacion de sistemas operativos
Editor RA-MA
Paginas 596
Descripción
Este libro desarrolla los contenidos del módulo profesional de Implantación de Sistemas Operativos del Ciclo Formativo de Grado Superior, perteneciente a la familia profesional de Informática y Comunicaciones. Su objetivo es proporcionar a los estudiantes las competencias necesarias para instalar, configurar y administrar sistemas operativos de manera efectiva.
Contenido
Link de descarga
[Tienes que estar registrado y conectado para ver este vínculo]Última edición por Izai A. Zalles Merino el Mar Jul 23, 2024 8:31 pm, editado 3 veces
Izai A. Zalles Merino- Mensajes : 14
Puntos : 16
Fecha de inscripción : 22/07/2024
Re: Biblioteca Virtual
TITULO: FUNDAMENTOS DE SISTEMAS OPERATIVOS
INFORMACION GENERAL:
7.6 MB / True PDF / En Español / 413 páginas
Autores: Enrique Sorian S. y Gorka Guardiola M.
Licencia: Creative Commons “Atribución-CompartirIgual 4.0 Internacional”
Impreso en España
DESCRIPCION:
Como tal, es un libro eminentemente practico, aunque hay capítulos que incluyen conceptos más teóricos. Esos capítulos se pueden complementar con otras referencias bibliográficas clásicas. Los ejemplos se han probado en Linux (específicamente, en una distribución Ubuntu), pero en principio deberían ser fáciles de trasladar a cualquier sistema tipo Unix Este libro puede cubrir parte de una asignatura introductoria de uso de un sistema
de tipo Unix, usando los capítulos 1, 2 y parte de 4 (dejando fuera administración y otros temas de desarrollo sobre el sistema), o cubrir totalmente una asignatura común de sistemas operativos Al final de cada capítulo hay ejercicios no resueltos. Estos ejercicios pueden ser de diferente tipo: comandos, pruebas, desarrollo de programas en C o shell, etc. No todos los ejercicios son iguales. Están marcados con un nivel de dificultad, † (†:fáciles, ††:
intermedios, † † †: avanzados) y tiempo ∗ (∗: menos de 3 horas ∗∗: entre un dıa y una semana, ∗ ∗ ∗: proyecto). Estas estimaciones están hechas para un alumno que está aprendiendo C y shell, y siguiendo la asignatura. Por ejemplo, para un programador experto, los tiempos y la dificultad cambian radicalmente. Te recomendamos que intentes hacerlos todos
CONTENIDO:
Indice de figuras 5
0 Sobre este libro 17
0.0.1 Cómo usar este libro . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1 Introducción y estructura del sistema 19
1.1 Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2 ¿Qu´e es un sistema operativo? . . . . . . . . . . . . . . . . . . . . . . . . 23
1.2.1 Distribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.2.2 Núcleo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.2.3 Area de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 28
1.2.4 Flujo de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.2.5 Llamadas al sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.2.6 Arranque del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.3 Virtualización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.4 Introducción al uso de un sistema de tipo Unix . . . . . . . . . . . . . . . 33
1.4.1 Arbol de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 36
1.4.2 Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
1.4.3 Texto plano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.4.4 Comandos básicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.4.5 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.4.6 Usando el terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
1.5 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2 Shell 49
2.1 ¿Qué es la shell? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.2 Comandos y argumentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.3 Shell interactiva y scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.4 Esperar a que acabe el comando . . . . . . . . . . . . . . . . . . . . . . . 57
2.5 Diferentes shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.6 Comandos internos o builtins . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.7 Sustituciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.7.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.7.2 Sustituci´on de resultado de comando . . . . . . . . . . . . . . . . . 61
2.8 Redirecciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.8.1 Entrada estándar, salida estándar y redirecciones . . . . . . . . . . 62
2.8.2 Ficheros especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.8.3 Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.9 Estado de salida (status) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.9.1 Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.10 Parámetros posicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.11 Agrupaciones de comandos . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.12 Otras sustituciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.12.1 Here documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.12.2 Globbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.13 Control de flujo de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.14 Comando read: leyendo línea a línea . . . . . . . . . . . . . . . . . . . . . 87
2.15 Variable IFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2.16 Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2.17 Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.18 Operaciones aritméticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.19 Comparación de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.20 Filtros y expresiones regulares . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.20.1 Filtros útiles sencillos . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.20.2 Expresiones regulares . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.20.3 Grep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
2.20.4 Sed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
2.20.5 Awk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
2.20.6 Visualización de ficheros . . . . . . . . . . . . . . . . . . . . . . . . 113
2.21 Arboles de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 113
2.21.1 Du . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
2.21.2 Ls recursivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
2.21.3 Find . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
2.22 Crear comandos en un pipeline . . . . . . . . . . . . . . . . . . . . . . . . 118
2.23 Comandos varios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
2.23.1 File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
2.23.2 Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
2.23.3 Cortar y pegar columnas . . . . . . . . . . . . . . . . . . . . . . . 120
2.24 Empaquetar ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
2.25 Limpiar rutas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
2.26 Creación de ficheros y directorios temporales . . . . . . . . . . . . . . . . 124
2.27 Inspeccionar contenido binario de ficheros . . . . . . . . . . . . . . . . . . 125
2.28 Edición automática de ficheros in situ . . . . . . . . . . . . . . . . . . . . 127
2.29 La shell para automatizar tareas . . . . . . . . . . . . . . . . . . . . . . . 129
2.29.1 Seguridad: cuando no debes usar la shell . . . . . . . . . . . . . . . 129
2.29.2 Automatización de tareas . . . . . . . . . . . . . . . . . . . . . . . 129
2.30 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
2.30.1 Fgreat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
2.30.2 Killusers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2.30.3 Photosren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
2.30.4 Notas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
2.30.5 Catletter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2.30.6 Waitexit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
2.31 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
3 Procesos 161
3.1 Programas, bibliotecas y llamadas al sistema . . . . . . . . . . . . . . . . 162
3.1.1 Manejo de errores de llamadas . . . . . . . . . . . . . . . . . . . . 164
3.2 Programas y procesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
3.3 Enlazado dinámico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
3.4 Propiedades de un proceso . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
3.4.1 Muerte de un proceso . . . . . . . . . . . . . . . . . . . . . . . . . 178
3.5 Creación de procesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
3.5.1 Ejecución de programas . . . . . . . . . . . . . . . . . . . . . . . . 183
3.5.2 Esperando por los hijos . . . . . . . . . . . . . . . . . . . . . . . . 186
3.5.3 Job control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
3.6 Planificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
3.6.1 Políticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
3.6.2 Depurando programas . . . . . . . . . . . . . . . . . . . . . . . . . 196
3.7 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
4 Ficheros 201
4.1 ¿Qué es un fichero? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
4.2 Discos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
4.2.1 Dispositivos y particiones . . . . . . . . . . . . . . . . . . . . . . . 205
4.2.2 Virtualizaci´on de almacenamiento . . . . . . . . . . . . . . . . . . 208
4.2.3 Planificación de entrada/salida . . . . . . . . . . . . . . . . . . . . 210
4.3 Implementación de sistemas de ficheros . . . . . . . . . . . . . . . . . . . . 211
4.3.1 Asignación contigua . . . . . . . . . . . . . . . . . . . . . . . . . . 211
4.3.2 Sistemas de ficheros FAT . . . . . . . . . . . . . . . . . . . . . . . 211
4.3.3 Sistema de ficheros Unix . . . . . . . . . . . . . . . . . . . . . . . . 214
4.3.4 FAT vs. i-nodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
4.3.5 Gestión del espacio libre . . . . . . . . . . . . . . . . . . . . . . . . 222
4.3.6 Fallos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
4.3.7 Sistemas de ficheros en Linux . . . . . . . . . . . . . . . . . . . . . 223
4.3.8 Formateo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
4.3.9 Espacio de nombres . . . . . . . . . . . . . . . . . . . . . . . . . . 225
4.4 Dispositivo de loopback e imágenes de disco . . . . . . . . . . . . . . . . . 227
4.5 Usando los ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
4.5.1 Procesos y ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . 228
4.5.2 Leyendo y escribiendo . . . . . . . . . . . . . . . . . . . . . . . . . 231
4.5.3 Crear, abrir y cerrar ficheros . . . . . . . . . . . . . . . . . . . . . 235
4.5.4 Redirecciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
4.5.5 Consultar metadatos . . . . . . . . . . . . . . . . . . . . . . . . . . 241
4.5.6 Directorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
4.5.7 Entrada/salida con buffering . . . . . . . . . . . . . . . . . . . . . 248
4.6 †Interacciones entre fork, exit y entrada/salida con buffering . . . . . . 257
4.6.1 Exit, ejecutando funciones al salir . . . . . . . . . . . . . . . . . . 257
4.6.2 Compartiendo un FILE de escritura . . . . . . . . . . . . . . . . . 258
4.6.3 Compartiendo un FILE de lectura . . . . . . . . . . . . . . . . . . . 259
4.6.4 Compartiendo un FILE antes de exec . . . . . . . . . . . . . . . . 260
4.7 †Terminales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
4.8 †Gather/Scatter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
4.9 †Entrada/salida asíncrona: io uring . . . . . . . . . . . . . . . . . . . . . . 273
4.10 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
5 Memoria 281
5.1 Modelo básico de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
5.2 Asignación dinámica de memoria: el heap . . . . . . . . . . . . . . . . . . 283
5.2.1 Mecanismos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
5.2.2 Políticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
5.2.3 †Asignadores modernos y sin fragmentación . . . . . . . . . . . . . 291
5.3 Memoria virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
5.3.1 Páginas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
5.3.2 Compartiendo páginas . . . . . . . . . . . . . . . . . . . . . . . . . 307
5.3.3 Paginación en demanda . . . . . . . . . . . . . . . . . . . . . . . . 310
5.3.4 Overcommitment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
5.3.5 Ficheros y memoria . . . . . . . . . . . . . . . . . . . . . . . . . . 312
5.3.6 Intercambio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
5.3.7 /proc/meminfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
5.4 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
6 Comunicación entre procesos 321
6.1 Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
6.2 Pipes con nombre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
6.3 Sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
6.4 Señales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
6.4.1 Espera activa vs. interrupciones . . . . . . . . . . . . . . . . . . . . 339
6.4.2 Señales en Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
6.4.3 Envío de señales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
6.4.4 Manejo de señales . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
6.4.5 Bloquear señales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
6.4.6 Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
6.5 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
7 Introducción a la programación concurrente 357
7.1 Memoria compartida y condiciones de carrera . . . . . . . . . . . . . . . . 358
7.1.1 Ejemplo 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
7.1.2 Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
7.1.3 Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
7.1.4 Ejemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
7.2 Exclusión mutua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
7.3 Locks (cerrojos, cierres) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
7.3.1 Accesos de lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
7.4 Tipos de locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
7.4.1 Spin locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
7.4.2 Queue locks (mutex) . . . . . . . . . . . . . . . . . . . . . . . . . . 371
7.4.3 Cerrojo de lectores/escritores . . . . . . . . . . . . . . . . . . . . . 372
7.4.4 Otras primitivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
7.5 Threads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
7.5.1 Biblioteca pthread en Linux: NPTL . . . . . . . . . . . . . . . . . 376
7.6 Uso concurrente de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . 385
7.6.1 Creación atómica de ficheros . . . . . . . . . . . . . . . . . . . . . 385
7.6.2 Añadir datos de forma atómica . . . . . . . . . . . . . . . . . . . . 385
7.6.3 Cerrojos para ficheros . . . . . . . . . . . . . . . . . . . . . . . . . 386
7.7 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Bibliografía 393
Agradecimientos 395
Índice alfabético 397
Sobre los autores 411
LINK: CLIK AQUÍ
INTEGRANTES:
-Choque Triguero Fernando Xavier
-Coaquira Alanoca Fabricio Axel
-Guevara Hoyos Josue Daniel
-Gisbert Mendez Karla Mikaela
-Soto Ortiz Jhonatan Freddy
-Rojas Paye Cristina Libertad
-Lozano Mostajo Natalia Andrea
INFORMACION GENERAL:
7.6 MB / True PDF / En Español / 413 páginas
Autores: Enrique Sorian S. y Gorka Guardiola M.
Licencia: Creative Commons “Atribución-CompartirIgual 4.0 Internacional”
Impreso en España
DESCRIPCION:
Como tal, es un libro eminentemente practico, aunque hay capítulos que incluyen conceptos más teóricos. Esos capítulos se pueden complementar con otras referencias bibliográficas clásicas. Los ejemplos se han probado en Linux (específicamente, en una distribución Ubuntu), pero en principio deberían ser fáciles de trasladar a cualquier sistema tipo Unix Este libro puede cubrir parte de una asignatura introductoria de uso de un sistema
de tipo Unix, usando los capítulos 1, 2 y parte de 4 (dejando fuera administración y otros temas de desarrollo sobre el sistema), o cubrir totalmente una asignatura común de sistemas operativos Al final de cada capítulo hay ejercicios no resueltos. Estos ejercicios pueden ser de diferente tipo: comandos, pruebas, desarrollo de programas en C o shell, etc. No todos los ejercicios son iguales. Están marcados con un nivel de dificultad, † (†:fáciles, ††:
intermedios, † † †: avanzados) y tiempo ∗ (∗: menos de 3 horas ∗∗: entre un dıa y una semana, ∗ ∗ ∗: proyecto). Estas estimaciones están hechas para un alumno que está aprendiendo C y shell, y siguiendo la asignatura. Por ejemplo, para un programador experto, los tiempos y la dificultad cambian radicalmente. Te recomendamos que intentes hacerlos todos
CONTENIDO:
Indice de figuras 5
0 Sobre este libro 17
0.0.1 Cómo usar este libro . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1 Introducción y estructura del sistema 19
1.1 Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2 ¿Qu´e es un sistema operativo? . . . . . . . . . . . . . . . . . . . . . . . . 23
1.2.1 Distribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.2.2 Núcleo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.2.3 Area de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 28
1.2.4 Flujo de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.2.5 Llamadas al sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.2.6 Arranque del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.3 Virtualización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.4 Introducción al uso de un sistema de tipo Unix . . . . . . . . . . . . . . . 33
1.4.1 Arbol de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 36
1.4.2 Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
1.4.3 Texto plano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.4.4 Comandos básicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.4.5 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.4.6 Usando el terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
1.5 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2 Shell 49
2.1 ¿Qué es la shell? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.2 Comandos y argumentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.3 Shell interactiva y scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.4 Esperar a que acabe el comando . . . . . . . . . . . . . . . . . . . . . . . 57
2.5 Diferentes shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.6 Comandos internos o builtins . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.7 Sustituciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.7.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.7.2 Sustituci´on de resultado de comando . . . . . . . . . . . . . . . . . 61
2.8 Redirecciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.8.1 Entrada estándar, salida estándar y redirecciones . . . . . . . . . . 62
2.8.2 Ficheros especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.8.3 Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.9 Estado de salida (status) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.9.1 Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.10 Parámetros posicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.11 Agrupaciones de comandos . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.12 Otras sustituciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.12.1 Here documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.12.2 Globbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.13 Control de flujo de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.14 Comando read: leyendo línea a línea . . . . . . . . . . . . . . . . . . . . . 87
2.15 Variable IFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2.16 Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2.17 Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.18 Operaciones aritméticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.19 Comparación de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.20 Filtros y expresiones regulares . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.20.1 Filtros útiles sencillos . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.20.2 Expresiones regulares . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.20.3 Grep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
2.20.4 Sed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
2.20.5 Awk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
2.20.6 Visualización de ficheros . . . . . . . . . . . . . . . . . . . . . . . . 113
2.21 Arboles de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 113
2.21.1 Du . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
2.21.2 Ls recursivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
2.21.3 Find . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
2.22 Crear comandos en un pipeline . . . . . . . . . . . . . . . . . . . . . . . . 118
2.23 Comandos varios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
2.23.1 File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
2.23.2 Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
2.23.3 Cortar y pegar columnas . . . . . . . . . . . . . . . . . . . . . . . 120
2.24 Empaquetar ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
2.25 Limpiar rutas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
2.26 Creación de ficheros y directorios temporales . . . . . . . . . . . . . . . . 124
2.27 Inspeccionar contenido binario de ficheros . . . . . . . . . . . . . . . . . . 125
2.28 Edición automática de ficheros in situ . . . . . . . . . . . . . . . . . . . . 127
2.29 La shell para automatizar tareas . . . . . . . . . . . . . . . . . . . . . . . 129
2.29.1 Seguridad: cuando no debes usar la shell . . . . . . . . . . . . . . . 129
2.29.2 Automatización de tareas . . . . . . . . . . . . . . . . . . . . . . . 129
2.30 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
2.30.1 Fgreat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
2.30.2 Killusers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2.30.3 Photosren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
2.30.4 Notas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
2.30.5 Catletter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2.30.6 Waitexit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
2.31 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
3 Procesos 161
3.1 Programas, bibliotecas y llamadas al sistema . . . . . . . . . . . . . . . . 162
3.1.1 Manejo de errores de llamadas . . . . . . . . . . . . . . . . . . . . 164
3.2 Programas y procesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
3.3 Enlazado dinámico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
3.4 Propiedades de un proceso . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
3.4.1 Muerte de un proceso . . . . . . . . . . . . . . . . . . . . . . . . . 178
3.5 Creación de procesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
3.5.1 Ejecución de programas . . . . . . . . . . . . . . . . . . . . . . . . 183
3.5.2 Esperando por los hijos . . . . . . . . . . . . . . . . . . . . . . . . 186
3.5.3 Job control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
3.6 Planificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
3.6.1 Políticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
3.6.2 Depurando programas . . . . . . . . . . . . . . . . . . . . . . . . . 196
3.7 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
4 Ficheros 201
4.1 ¿Qué es un fichero? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
4.2 Discos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
4.2.1 Dispositivos y particiones . . . . . . . . . . . . . . . . . . . . . . . 205
4.2.2 Virtualizaci´on de almacenamiento . . . . . . . . . . . . . . . . . . 208
4.2.3 Planificación de entrada/salida . . . . . . . . . . . . . . . . . . . . 210
4.3 Implementación de sistemas de ficheros . . . . . . . . . . . . . . . . . . . . 211
4.3.1 Asignación contigua . . . . . . . . . . . . . . . . . . . . . . . . . . 211
4.3.2 Sistemas de ficheros FAT . . . . . . . . . . . . . . . . . . . . . . . 211
4.3.3 Sistema de ficheros Unix . . . . . . . . . . . . . . . . . . . . . . . . 214
4.3.4 FAT vs. i-nodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
4.3.5 Gestión del espacio libre . . . . . . . . . . . . . . . . . . . . . . . . 222
4.3.6 Fallos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
4.3.7 Sistemas de ficheros en Linux . . . . . . . . . . . . . . . . . . . . . 223
4.3.8 Formateo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
4.3.9 Espacio de nombres . . . . . . . . . . . . . . . . . . . . . . . . . . 225
4.4 Dispositivo de loopback e imágenes de disco . . . . . . . . . . . . . . . . . 227
4.5 Usando los ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
4.5.1 Procesos y ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . 228
4.5.2 Leyendo y escribiendo . . . . . . . . . . . . . . . . . . . . . . . . . 231
4.5.3 Crear, abrir y cerrar ficheros . . . . . . . . . . . . . . . . . . . . . 235
4.5.4 Redirecciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
4.5.5 Consultar metadatos . . . . . . . . . . . . . . . . . . . . . . . . . . 241
4.5.6 Directorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
4.5.7 Entrada/salida con buffering . . . . . . . . . . . . . . . . . . . . . 248
4.6 †Interacciones entre fork, exit y entrada/salida con buffering . . . . . . 257
4.6.1 Exit, ejecutando funciones al salir . . . . . . . . . . . . . . . . . . 257
4.6.2 Compartiendo un FILE de escritura . . . . . . . . . . . . . . . . . 258
4.6.3 Compartiendo un FILE de lectura . . . . . . . . . . . . . . . . . . . 259
4.6.4 Compartiendo un FILE antes de exec . . . . . . . . . . . . . . . . 260
4.7 †Terminales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
4.8 †Gather/Scatter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
4.9 †Entrada/salida asíncrona: io uring . . . . . . . . . . . . . . . . . . . . . . 273
4.10 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
5 Memoria 281
5.1 Modelo básico de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
5.2 Asignación dinámica de memoria: el heap . . . . . . . . . . . . . . . . . . 283
5.2.1 Mecanismos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
5.2.2 Políticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
5.2.3 †Asignadores modernos y sin fragmentación . . . . . . . . . . . . . 291
5.3 Memoria virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
5.3.1 Páginas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
5.3.2 Compartiendo páginas . . . . . . . . . . . . . . . . . . . . . . . . . 307
5.3.3 Paginación en demanda . . . . . . . . . . . . . . . . . . . . . . . . 310
5.3.4 Overcommitment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
5.3.5 Ficheros y memoria . . . . . . . . . . . . . . . . . . . . . . . . . . 312
5.3.6 Intercambio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
5.3.7 /proc/meminfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
5.4 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
6 Comunicación entre procesos 321
6.1 Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
6.2 Pipes con nombre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
6.3 Sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
6.4 Señales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
6.4.1 Espera activa vs. interrupciones . . . . . . . . . . . . . . . . . . . . 339
6.4.2 Señales en Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
6.4.3 Envío de señales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
6.4.4 Manejo de señales . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
6.4.5 Bloquear señales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
6.4.6 Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
6.5 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
7 Introducción a la programación concurrente 357
7.1 Memoria compartida y condiciones de carrera . . . . . . . . . . . . . . . . 358
7.1.1 Ejemplo 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
7.1.2 Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
7.1.3 Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
7.1.4 Ejemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
7.2 Exclusión mutua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
7.3 Locks (cerrojos, cierres) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
7.3.1 Accesos de lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
7.4 Tipos de locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
7.4.1 Spin locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
7.4.2 Queue locks (mutex) . . . . . . . . . . . . . . . . . . . . . . . . . . 371
7.4.3 Cerrojo de lectores/escritores . . . . . . . . . . . . . . . . . . . . . 372
7.4.4 Otras primitivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
7.5 Threads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
7.5.1 Biblioteca pthread en Linux: NPTL . . . . . . . . . . . . . . . . . 376
7.6 Uso concurrente de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . 385
7.6.1 Creación atómica de ficheros . . . . . . . . . . . . . . . . . . . . . 385
7.6.2 Añadir datos de forma atómica . . . . . . . . . . . . . . . . . . . . 385
7.6.3 Cerrojos para ficheros . . . . . . . . . . . . . . . . . . . . . . . . . 386
7.7 Ejercicios no resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Bibliografía 393
Agradecimientos 395
Índice alfabético 397
Sobre los autores 411
LINK: CLIK AQUÍ
INTEGRANTES:
-Choque Triguero Fernando Xavier
-Coaquira Alanoca Fabricio Axel
-Guevara Hoyos Josue Daniel
-Gisbert Mendez Karla Mikaela
-Soto Ortiz Jhonatan Freddy
-Rojas Paye Cristina Libertad
-Lozano Mostajo Natalia Andrea
Natalia_Lozano_Mostajo- Mensajes : 16
Puntos : 22
Fecha de inscripción : 22/07/2024
Página 2 de 2. • 1, 2
Temas similares
» 1. INSTALACION DE LA MAQUINA VIRTUAL (VIRTUAL BOX) DE ACUERDO AL CARGO DE UNA EMPRESA
» Tutorial Virtual Box
» INSTALACIÓN DE LA MÁQUINA VIRTUAL
» Instalación de windows 11 en virtual box
» CREACION DEL SISTEMA OPERATIVO EN VIRTUAL BOX
» Tutorial Virtual Box
» INSTALACIÓN DE LA MÁQUINA VIRTUAL
» Instalación de windows 11 en virtual box
» CREACION DEL SISTEMA OPERATIVO EN VIRTUAL BOX
Página 2 de 2.
Permisos de este foro:
No puedes responder a temas en este foro.