Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Gráfico - División
2.5 Servicios del sistema
Tipos de servicios
• Proporcionar un entorno conveniente para el desarrollo y la ejecución
del programa.
o Algunos de ellos son simplemente interfaces de usuario para
llamadas al sistema; otros son considerablemente más
complejos.
• Administración de archivos: cree, elimine, copie, cambie el nombre,
imprima, vuelque, enumere y, en general, manipule archivos y
directorios.
• Información de estado
o Algunos solicitan información al sistema: fecha, hora, cantidad
de memoria disponible, espacio en disco, número de usuarios.
o Otros proporcionan información detallada sobre rendimiento,
registro y depuración.
2.5 Servicios del sistema
Tipos de servicios
• Modificación de archivos
o Editores de texto para crear y modificar archivos
o Comandos especiales para buscar contenido de archivos o
realizar transformaciones del texto
• Compatibilidad con lenguajes de programación: a veces se
proporcionan compiladores, ensambladores, depuradores e
intérpretes.
• Carga y ejecución de programas: cargadores absolutos, cargadores
reubicables, editores de enlaces y cargadores superpuestos, sistemas
de depuración para lenguaje de máquina y de nivel superior.
• Comunicaciones: proporciona el mecanismo para crear conexiones
virtuales entre procesos, usuarios y sistemas informáticos.
2.5 Servicios del sistema
Tipos de servicios
o Permita que los usuarios envíen mensajes a las pantallas de
otros, exploren páginas web, envíen mensajes de correo
electrónico, inicien sesión de forma remota, transfieran archivos
de una máquina a otra.
• Servicios en segundo plano
o Lanzamiento en el momento del arranque
• Algunos para el inicio del sistema, luego terminar
• Algunos desde el arranque hasta el apagado del sistema
o Proporcione instalaciones como verificación de disco,
programación de procesos, registro de errores, impresión
o Ejecutar en el contexto del usuario, no en el contexto del kernel
o Conocidos como servicios, subsistemas, demonios
2.5 Servicios del sistema
Tipos de servicios
• Programas de aplicación
o No pertenecen al sistema
o Ejecutado por usuarios
o Normalmente no se considera parte del sistema operativo
o Lanzado por línea de comando, clic del mouse, toque con el dedo
Imagen - Programas
2.6 Linker and loader
Definición
• Código fuente compilado en archivos de objeto diseñados para
cargarse en cualquier ubicación de memoria física: archivo de objeto
reubicable.
• Linker combina estos en un solo archivo ejecutable binario.
o También trae librerías
• El programa reside en el almacenamiento secundario como
ejecutable binario.
• Debe ser traído a la memoria por el loader para ser ejecutado.
o La reubicación asigna direcciones finales a las partes del
programa y ajusta el código y los datos en el programa para que
coincidan con esas direcciones.
2.6 Linker and loader
Definición
• Los sistemas modernos de propósito
general no vinculan librerías a
ejecutables.
o Más bien, las librerías vinculadas
dinámicamente (en Windows,
DLL) se cargan según sea
necesario, compartidas por
todos los que usan la misma
versión de esa misma librería
(cargada una vez).
• Objeto, los archivos ejecutables
tienen formatos estándar, por lo que Imagen - Sistemas
el sistema operativo sabe cómo
cargarlos e iniciarlos.
2.6 Linker and loader
Ejemplo
Se describen los pasos, desde
compilar un programa hasta
colocarlo en la memoria,
donde se vuelve elegible para
ejecutarse en un núcleo de
CPU disponible.
Gráfico - Pasos
2.7 Aplicaciones
Definición
• Las aplicaciones son específicas del
sistema operativo.
• Las aplicaciones compiladas en un
sistema generalmente no son
ejecutables en otros sistemas
operativos.
• Cada sistema operativo proporciona
sus propias llamadas de sistema
únicas (formatos de archivo propios).
• Las aplicaciones pueden ser multi-
Imagen - Aplicaciones
sistema operativo.
2.7 Aplicaciones
Definición
o Escrito en lenguaje interpretado
como Python, Ruby e intérprete
disponible en múltiples sistemas
operativos.
o Aplicación escrita en lenguaje
que incluye una máquina virtual
que contiene la aplicación en
ejecución (como Java).
o Use lenguaje estándar (como C),
compile por separado en cada
sistema operativo para ejecutar Imagen - Aplicaciones
en cada
2.7 Aplicaciones
Definición
Application Binary Interface (ABI) es
una arquitectura equivalente a API,
define cómo los diferentes
componentes del código binario
pueden interactuar para un sistema
operativo determinado en una
arquitectura, CPU, otros.
Imagen - Aplicaciones
2.8 Estructura del SO
Introducción
• Un sistema tan grande y complejo
como un sistema operativo moderno
debe diseñarse con precisión para
que funcione correctamente y se
modifique fácilmente.
• Un enfoque común consiste en
dividir la tarea en pequeños
componentes, o módulos, en lugar
de que tener un solo sistema.
• Cada uno de estos módulos debe ser
una parte bien definida del sistema,
con interfaces y funciones
cuidadosamente definidas. Imagen - Sistemas
2.8 Estructura del SO
Introducción
• Puede usar un enfoque similar
cuando estructura sus programas: en
lugar de colocar todo su código en la
función main(), en su lugar, separa la
lógica en una serie de funciones,
articula claramente los parámetros y
los valores de retorno, y luego llama
a esas funciones desde main ().
Imagen - Sistemas
2.8 Estructura del SO
Definición
El sistema operativo de propósito general es un programa muy grande.
Varias formas de estructurar.
• Estructura simple – MS-DOS
• Más complejo – UNIX
• En capas: una abstracción
• Micronúcleo-Mach
Imagen - Sistemas
2.8 Estructura del SO
Estructura Monolítica – UNIX Original
• UNIX: limitado por la funcionalidad del hardware, el sistema
operativo UNIX original tenía una estructuración limitada.
• El sistema operativo UNIX consta de dos partes:
o Programas de sistemas
o El núcleo
o Consiste en todo lo que está debajo de la interfaz de llamada
al sistema y encima del hardware físico.
o Proporciona el sistema de archivos, la programación de la
CPU, la gestión de la memoria y otras funciones del sistema
operativo; un gran número de funciones para un nivel.
2.8 Estructura del SO
Estructura del sistema UNIX - Linux tradicional