Características Generales:
Es un sistema
operativo de tiempo
compartido, controla los recursos
de una computadora
y los asigna entre los usuarios. Permite a los usuarios correr sus programas.
Controla los dispositivos de periféricos
conectados a la máquina.
Posee las siguientes características:
- Es un sistrema operativo multiusuario, con
capacidad de simular multiprocesamiento y procesamiento no interactivo.
- Está escrito en un lenguaje
de alto nivel : C.
- Dispone de un lenguaje de control
programable llamado SHELL.
- Ofrece facilidades para la creación de
programas y sistemas
y el ambiente
adecuado para las tareas de diseños de software.
- Emplea manejo dinámico de memoria
por intercambio o paginación.
- Tiene capacidad de interconexión de procesos.
- Permite comunicación
entre procesos.
- Emplea un sistema
jerárquico de archivos,
con facilidades de protección de archivos, cuentas
y procesos.
- Tiene facilidad para redireccionamiento de
Entradas/Salidas.
- Garantiza un alto grado de portabilidad.
El sistema se basa en un Núcleo llamado Kernel,
que reside permanentemente en la
memoria, y que atiende a todas las llamadas del sistema, administra
el acceso a los archivos y el inicio o la suspención de las tareas de los
usuarios.
La comunación con el sistema UNIX
se da mediante un programa
de control llamado SHELL. Este es un lenguaje de control, un intérprete, y un
lenguaje de programación,
cuyas características lo hacen sumamente flexible para las tareas de un centro
de cómputo. Como lenguaje de programación abarca los siguientes
aspectos:
- Ofrece las estructuras
de control normales: secuenciación, iteración condicional, selección
y otras.
- Paso de parámetros.
- Sustitución textual de variables
y Cadenas.
- Comunicación bidireccional entre órdenes de
shell.
El shell permite modificar en forma dinámica
las características con que se ejecutan los programas en UNIX:
Las entradas y salidas pueden ser redireccionadas
o redirigidas hacia archivos, procesos y dispositivos;
Es posible interconectar procesos entre sí.
Diferentes usuarios pueden "ver"
versiones distintas del sistema operativo debido a la capacidad del shell para
configurar diversos ambientes de ejecución. Por ejemplo, se puede hacer que un
usuario entre directamente a su sección, ejecute un programa en particular y
salga automáticamente del sistema al terminar de usarlo.
El núcleo del Sistema Operativo
El núcleo del sistema operativo Unix (llamado
Kernel) es un programa escrito casi en su totalidad en lenguaje
C, con excepción de una parte del manejo de interrupciones,
expresada en el
lenguaje ensamblador
del procesador
en el que opera.
Las funciones
del núcleo son permitir la existencia de un ambiente en el que sea posible
atender a varios usuarios y múltiples tareas en forma concurrente, repartiendo
al procesador entre todos ellos, e intentando mantener en grado óptimo la atención
individual.
El Kernel opera como asignador de recursos para
cualquier proceso
que necesite hacer uso de las facilidades de cómputo. Es el componente central
de Unix y tiene las siguientes funciones:
- Creación de procesos, asignación de tiempos de
atención y sincronización.
- Asignación de la atención del procesador a los
procesos que lo requieren.
- Administración
de espacio en el sistema de archivos, que incluye: acceso, protección y administración
de usuarios; comunicación entre usuarios v entre procesos, y manipulación de
E/S y administración de periféricos.
El Kernel reside siempre en la memoria central y
tiene el control sobre la computadora, por lo que ningún otro proceso puede
interrumpirlo; sólo pueden llamarlo para que proporcione algún servicio
de los ya mencionados. Un proceso llama al Kernel mediante módulos especiales
conocidos como llamadas al sistema.
El Kernel consta de dos artes principales: la
sección de control de procesos y la de control de dispositivos. La primera
asigna recursos, programas, procesos y atiende sus requerimientos de servicio;
la segunda, supervisa la transferencia de datos entre la memoria principal y
los dispositivos periféricos. En términos generales, cada vez que algún usuario
oprime una tecla de una terminal, o que se debe leer o escribir información
del disco magnético, se interrumpe al procesador central y el núcleo se encarga
de efectuar la operación de transferencia.
El sistema Unix ofrece varios
niveles de protección para el sistema de archivos, que consisten en asignar a
cada archivo el número único de identificación de su dueño, junto con nueve
bits de protección, que especifican permisos de lectura,
escritura
y ejecución para el propietario, para otros miembros de su grupo
(definido por el administrador
del sistema) y para el resto de los usuarios. Antes de cualquier acceso se
verifica su validez consultando estos bits, que residen en el nodo-i de todo
archivo. Además, existen otros tres bits que se emplean para manejos
especiales, relacionados con la clave del superusuario.
No hay comentarios:
Publicar un comentario