Sunteți pe pagina 1din 16

Notas sobre Sistemas Operativos Evolución Histórica de los S.O.

y programas de sistemas - Módulo Repaso – Parte D -


1
UNIDAD: Introducción a los Sistemas Operativos.

Parte D: EVOLUCIÓN HISTÓRICA DE LOS SISTEMAS


OPERATIVOS Y PROGRAMAS DEL SISTEMAS.
CONTENIDO:

• Conceptos introductorios sobre la evolución de los S.O. y el Procesamiento asociado.


• Presentación de los Programas del Sistemas.
• Características conceptuales sobre datos, información, conocimiento,
inteligencia, ambientes informatizados y realidad virtual.
• Concepto de modelos de objetos y su vivencia..
• Conceptos básicos sobre Trabajos y procesos.

OBJETIVOS DEL MODULO: Dar los conceptos básicos sobre la evolución histórica de los
Sistemas Operativos Computacionales en general e introducir los conocimientos necesarios para
encarar la materia, en particular sobre datos, información, conocimiento, inteligencia, ambientes
informatizados, realidad virtual.

Dar los conceptos de modelos de objetos y su vivencia como también sobre Trabajos y procesos.

OBJETIVOS DEL APRENDIZAJE: Después de la lectura y del estudio del presente módulo el
alumno deberá conocer:

(1)Los conceptos introductorios sobre la evolución de los S.O.

(2)Los distintos tipos de Programas de Sistemas.

(3)La terminología específica empleada en éste módulo.

(4)Conceptos básicos sobre datos, información, conocimiento, inteligencia, ambientes


informatizados y realidad virtual.

(5)Concepto de modelos de objetos y su vivencia..

(6)Conceptos básicos sobre Trabajos y procesos.


Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
2
D1.1. EVOLUCIÓN HISTÓRICA DE LOS SISTEMAS OPERATIVOS.
No solo hubo una evolución en el hardware y en el software de los equipos, sino también en el terreno de los S.O..
Dos son las consecuencias de ésta evolución:
• Cada vez son mayores las posibilidades de los sistemas operativos: pueden controlar a un mayor número de
periféricos asociados al computador y ponen a disposición del usuario un repertorio de comandos mas potentes y
además permiten poner en práctica nuevos métodos mas eficaces y rápidos para explotar las posibilidades del
hardware de la máquina.
• La llegada del microprocesador y su implantación como corazón de las computadoras permitió un gran avance en
la estandarización de los S.O., destacándose entre ellos, el DOS, el OS-2, VM, el UNIX, etc.
Los Sistemas Operativos fueron desarrollados como respuesta a la necesidad de aumentar la utilización del
procesador central y de los dispositivos periféricos, y esto sigue siendo una de las funciones primordiales de los
Sistemas Operativos, sobre todo, el mejorar el uso del hardware al automatizar la corriente de trabajos y realizar
decisiones sobre el manejo de los recursos del sistema en la escala de tiempos de la computadora y no en la del
operador humano.
En los primeros días de la computación, la computadora era exclusivamente operada a mano. En éstas condiciones,
los usuarios tenían toda la máquina para sí por algún intervalo de tiempo. Entonces el usuario disponía de todos los
recursos y cualquier administración de esos recursos estaba dedicada a hacer mas conveniente la operación de la
máquina por parte del usuario. Esta forma de usar la máquina se dió en llamar “Open Shop” que era
monoprogramado y monousuario.
Cuando la comunidad de usuarios creció, se hizo necesario asegurar una distribución eficiente de los recursos físicos
del sistema entre todos.
A partir de 1950, surgen nuevas técnicas de administración y ordenamiento con el propósito de aprovechar los
equipos de la mejor manera posible. Estas técnicas emergen debido a que varios usuarios comparten una instalación
y generan colas de trabajos a ser ejecutados, por lo que deben adoptarse decisiones sobre el orden en que serán
atendidos, entonces se establecen ciertas reglas llamadas “Scheduling Algorithms” o algoritmos de
administración.
Los primeros S.O. surgen a partir de 1956 al reemplazar las funciones que realizaba el usuario. El S.O., en su
evolución, atraviesa distintas etapas hasta llegar a su estado actual.
La primera técnica fue el “Open Shop'' (1956-1960), y en ella el usuario disponía de un intervalo de tiempo, por
ejemplo 15 minutos, durante el cual toda la máquina estaba a su disposición para operarla y usarla.
Este método de administración, entregaba el sistema de cómputo a un solo usuario por vez lo cual significa que cada
usuario usaba la máquina un intervalo de tiempo, durante el cual podía ejecutar sus programas, localizar errores,
experimentar, etc..
Antes de trabajar sobre la máquina, cada usuario debía reservar un intervalo de tiempo inscribiéndose en una lista, lo
que le permitía durante ese tiempo tener a su disposición la computadora para operarla y usarla en forma exclusiva.
Sin embargo, esa forma de operar, hacia que la computadora estuviera la mayor parte del tiempo ociosa, debido al
tiempo que perdían los usuarios haciendo un uso indiscriminado de la misma.
Aparece entonces lo que se dió en llamar “Closed Shop''. El Closed Shop es una forma de trabajar que si bien es
secuencial, los usuarios debían entregar sus trabajos (job) a un operador, quien pasa a tener un papel preponderante,
dado que era el “dueño, amo y señor” de un recurso complejo y caro y disponía del orden para llevar a ejecución los
trabajos. Estos abusos motivaron a resolver el problema mediante una programación (software) y así nace un
incipiente S.O. que reglamentaba el uso del computador.
Es así como surgen nuevos Sistemas Operativos, que impiden al operador interactuar libremente con la máquina.
Estos S.O. ponen en práctica un procedimiento llamado “Closed Shop”, mediante el cual el usuario dejó de disponer
libremente de la computadora. Este tipo de procedimiento fue posible gracias a esos nuevos S.O. que permitían
realizar, cada vez mas, un mayor número de tareas.
Esto produjo una evolución importante ya que el usuario entregaba al operador un lote de tarjetas listo para procesar.
Éste armaba una cola de tarjetas (según su orden de llegada), y el procesador las leía cargándolas en memoria central
y luego las ejecutaba devolviendo los resultados impresos. Esto se esquematiza en la Fig. D1.01.
Luego de procesar todos los trabajos, y recién cuando el último trabajo había sido concluido, los resultados eran
listados, de a uno por vez, por la impresora.
La lentitud de la Entrada / Salida (E/S) en estos sistemas constituía un "cuello de botella" debido al tiempo empleado
para la E/S. Además esa forma de trabajar era muy onerosa como consecuencia de los intervalos de procesador
ocioso por la pérdida del tiempo en que los usuarios hacían un uso indiscriminado del computador.
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
3
Es así como se buscan nuevas técnicas que permitan mejorar en la práctica el procedimiento llamado “Closed Shop”
(1960-1963) mediante el cual el usuario dejó de disponer libremente de la máquina y debía entregar sus trabajos al
Operador del Centro de cómputos.
Esta automatización en la administración provocó algunos inconvenientes, tales como:
¿Cómo proteger el S.O. residente contra los programas cargados erróneamente sobre él?, o ¿Cómo obligar a los
usuarios a devolver el control al S.O. una vez que terminaban ?, etc..
Durante este período, el problema mas serio lo constituían la diferencia de velocidades que existía entre los disposi-
tivos de E/S y el procesador central.
Para corregir este desequilibrio, aparecieron dos mejoras. Ambas de gran importancia para los S.O..
La primera fue la introducción del canal de E/S. Esta mejora del hardware fue capaz de controlar uno o varios
dispositivos periféricos, y que una vez puesta en marcha funcionaba independientemente del procesador central,
permitiendo que las entradas o salidas se ejecutaran superpuestas con la ejecución de la CPU.
La segunda fue la introducción del procedimiento conocido como “Entrada/Salida fuera de línea'' (Off Line). En
vez de que la computadora usara a los lentos dispositivos periféricos en forma directa, la entrada era transcripta de
tarjetas a cintas magnéticas y un programa residente en memoria central recibía la entrada leyendo de las cintas las
“imágenes” de las tarjetas. Este programa pasó a formar parte del S.O. llamándose cargador (loader).
Una vez establecido el principio de E/S fuera de línea sobre cinta, quedó abierto el camino para el desarrollo de un
sistema que encadenara la secuencia de trabajos. A éste sistema, que ejecutaba en serie y en forma automática las
tareas contenidas en una cinta magnética, se lo llamó “Sistema de procesamiento en batch''.
En este sistema no es precisa la atención del usuario durante la ejecución de los trabajos. Una vez que un Trabajo o
JOB entraba en tratamiento, el usuario perdía la posibilidad de intervenir y modificar su desarrollo.
Probablemente el primer sistema de este tipo haya sido el S.O. de la organización de usuarios SHARE (Share
Operating System), antepasado del “Sistema Monitor FORTRAN” (F.M.S.) que fuera ampliamente y vastamente
utilizado por esa época.
Otro hecho notable en la evolución de los sistemas operativos fue el advenimiento del “tiempo compartido” (Time
Sharing), el cual tuvo su origen en una evolución del hardware que introdujo el concepto de interrupción, el cual
permitió sincronizar el procesador central con los dispositivos periféricos al completarse la E/S.
De ahí se pasó rápidamente a la multiprogramación. La primera computadora que introdujo la idea de tener un
sistema operativo complejo para controlar varios programas que se hallacen en ejecución simultánea fue la
FERRANTI ORION, a la que siguió la FERRANTI ATLAS (luego ICL).
Entre los años 1967-1968 nace el concepto de “tiempo compartido” tomado como sinónimo de acceso múltiple
(multiaccess), es decir, que si en una máquina hay varios programas simultáneos, el procesador es compartido por
ellos en el tiempo y cada programa trabaja por turno durante un cierto lapso pequeño de tiempo, pareciendo que
todas las tareas progresan simultáneamente.
Esto es atrayente si cada programa esta conectado al usuario por medio de una pantalla en línea, o alguna terminal
semejante, ya que cada usuario tendrá la impresión de que dispone de toda la máquina para su uso exclusivo.
En síntesis, el “tiempo compartido”, permitió, por intermedio del desarrollo del S.O., administrar una cantidad de
usuarios que explotan y comparten los mismo recursos computacionales (es decir “hardware” y “software”).
Luego, con la construcción de memorias de gran capacidad y acceso directo y la multiprogramación, se diseñaron
S.O. capaces de manejar una corriente contínua de trabajo sobre una misma computadora.
Entre los años 1968-1969, se consolida el teleprocesamiento como técnica de explotación. Se entiende por
teleprocesamiento a la técnica de empleo de las computadoras a distancia (desde terminales conectadas a través de
líneas telefónicas, telegráficas, enlaces de radio, o algún otro medio de comunicaciones).
Mas tarde, toma incremento la utilización de la técnica de “paginación” (almacenamiento dividido en un número
de “páginas” de tamaño fijo y constante que se utilizan para ejecutar y transferir datos y programas).
Esta técnica suministra un almacenamiento virtual mayor que la memoria real. De aquí surge la definición de
memoria virtual como el espacio de direccionamiento de un usuario que no necesita tener todo el programa
residente en Memoria Central para su ejecución con la condición de que dicho programa esté soportado en un
Dispositivo de Almacenamiento Secundario de Acceso Directo (Direct Access Storage Device DASD) como ser
un disco. Entonces el Usuario no tiene que preocuparse por las limitaciones debidas a que su programa entre o no en
la memoria central, ya que este tipo de contingencias es resuelto por el sistema de paginación provisto por el S.O..
Esta técnica de memoria virtual trae aparejado un notable avance ya que no limita el espacio de memoria central para
cada usuario sino suministra un almacenamiento virtual que está parcialmente en el disco o en algún otro tipo de
memoria masiva, y en parte en la memoria central, y usar la paginación para organizar la ejecución de la aplicación
en el almacenamiento central en el momento de ejecución.
Esta técnica no hubiera sido posible sin la evolución tecnológica de los dispositivos de almacenamiento de acceso
directo y del sistema de interrupciones.
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
4
En 1972-1973, aparece el concepto de firmware que implica disponer de un Software en un Hardware funcionando
en un ambiente determinado. A partir de 1982 en adelante se busca la formalización y el refinamiento de los sistemas
operativos que acompañan a cada microprocesador y su arquitectura desde los 8 bits a los 64 y 128 actuales.
La reducción de los costos ha favorecido los avances hasta llegar a compartir recursos en sistemas distribuidos
geográficamente entrelazando a nivel mundial mediante las comunicaciones a redes complejas como lo es Internet.
A continuación detallaremos los principales sistemas de procesamiento que actualmente están en uso.

D1.1.1. SISTEMA DE PROCESAMIENTO “BATCH”.


Los primeros sistemas operativos, aunque resulten muy primitivos al ser comparados con los actuales, suponían una
mejora al liberar al operador de tareas rutinarias.
Desde ese momento se comenzó a buscar un método de administración del procesador que mantenga activo al
mismo la mayor parte del tiempo posible.
La actividad de un procesador se puede determinar mediante las siguientes fórmulas:

tiempo de ejecución
UP(utilización del Procesador)=
tiempo total
P (producción) = número de trabajos ejecutados por unidad de tiempo

Cabe señalar que una de las características de la máquinas de esa época era que solo admitían un trabajo por vez, y
por lo tanto no podían, bajo ningún punto de vista, superponerse en el tiempo una operación de E/S con la ejecución
de un programa.
Es así como se llega a un SO del tipo “batch”, donde los usuarios entregaban al operador los lotes de tarjetas, con la
diferencia que estas tarjetas se grababan en cinta magnética según su orden de llegada. Para realizar esta tarea,
generalmente, se usaba una pequeña computadora externa al sistema, dedicada y de bajo costo, cuya única función
era leer tarjetas y grabarlas en una Cinta. Así nació el concepto de periférico.
El esquema de un batch sería:
Grabación de Cinta Procesamiento Cinta
Trabajo Proceso de Listados
(Job) los Job en Cinta Entrada del conjunto Salida impresión de
de Trabajos los Resultados

FIG. D1.01 Pasos o secuencias en un sistema Batch

Después de la grabación, la cinta era íntegramente leída por la computadora principal, para luego ser procesados los
trabajos de a uno por vez, y una vez que el trabajo era terminado, todos sus resultados se grababan en una cinta, la
cual era leída por otra computadora pequeña especializada llamada impresora de línea que generaba los listados de
los resultados.
El usar una computador pequeña, además de la principal, permitía que durante la ejecución de un batch en la
computadora principal, el operador pudiera utilizar la computadora pequeña para imprimir la salida de un batch
anterior y ejecutar la grabación de entrada del batch siguiente.
De esta manera tanto la computadora principal como los dispositivos de E/S estaban ocupados el máximo tiempo lo
que hacía posible la disminución de las demoras de la computadora principal al no realizar las E/S y éstas trabajar en
paralelo superponiéndose en el tiempo las actividades de entrada y las de salida .
Colocando un solo trabajo por cinta se lograba un bajísimo rendimiento del procesador (menor a 10 %). Esto se debe
a que el montaje y desmontaje se realizaba por el operador. Entonces se decidió colocar mas trabajos por cada cinta.
Esto mejoró el rendimiento llevándolo al 30 %. Para calcular el rendimiento se utilizaban las siguientes fórmulas:
El objetivo era lograr el máximo de rendimiento del procesador. Hoy día aun se utiliza el concepto de batch para el
procesamiento secuencial de ciertas aplicaciones.
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
5
T E B ( tie m p o d e e je c u c ió n d e l b a tc h )
U P =
T R B (tie m p o d e re s p u e s ta d e l b a tc h )
d o n d e :
T R B (tie m p o d e re s p u e s ta d e l b a tc h ) = tie m p o d e m o n ta je d e l b a tc h + tie m p o d e e je c u c ió n d e l

ta m b ié n s e p o d ría e x p re s a r:
tie m p o d e m o n ta je d e l b a tc h
T R B (tie m p o d e re s p u e s ta d e l b a tc h ) =
1 - (U tiliz a c ió n d e l P r o c e s a d o r )

D1.1.2. SISTEMA "SPOOLING"


Trabajo
Grabación de (Job)
los Job en Disco Lectora de
Disco Programa del Usuario
(Módulo de Entrada) Tarjetas

Procesamiento
del conjunto de Grabación de las
Trabajos (bajo el Salidas en Disco
Programa Ordenador) (Módulo de Salida)

Listados
Disco Proceso de
Salida

Figura. D1.02 Módulos en el procesamiento SPOOLING


Para una operación exitosa de un sistema de multiprogramación deben tenerse en cuenta dos factores:
1) Diversidad de trabajos.
2) Disponibilidad de suficientes periféricos.
El primer factor, la diversidad de trabajos, es necesario para poder superponer las E/S adecuadamente con el uso de
la CPU, y debe haber una cantidad suficiente de periféricos para que los distintos programas puedan operar
simultáneamente. Por ejemplo, si se dispone de una sola impresora, y todos los programas requieren de salida impre-
sa, les será imposible a los mismos acceder al dispositivo simultáneamente.
Un programa desarrollado en Inglaterra por la firma ICL, trata de resolver este problema, de modo tal que cada
programa no solicite la impresora hasta que tenga algo para imprimir. Esta solución no fue satisfactoria, ya que las
salidas de los distintos programas aparecían mezcladas en la impresión.
Surgió así una forma muy popular de operar, que se dió en llamar “Operación simultánea de periféricos en Línea”
en inglés "Simultaneus Peripherical Operation On Line" o Spooling.
Este sistema de operación simultánea de periféricos constaba de cuatro módulos o unidades:
1) El programa ejecutivo que organizaba la multiprogramación de los demás componentes.
2) El módulo de entrada que leía los trabajos de la lectora de tarjetas y los grababa en el disco.
3) El módulo de salida, que leía los trabajos del disco y los depositaba en la impresora de línea.
4) El modulo de secuencia de trabajo, que llamaba a los computadores, programas, etc..
Otra significativa innovación de ésta época fue la utilización de grandes memorias secundarias, lo que facilitó el
desarrollo de los sistemas de spooling.
Un sistema de spooling puede esquematizarse como se observa en la Fig. D1. 02.
Hoy día se utiliza este concepto en un sistema operativo como un módulo llamado spooler que se
ocupa de administrar todas las impresiones y en algunos casos la captura de datos de entrada.

D1.1.3 SISTEMAS INTERACTIVOS.

En el sistema interactivo, el computador es capaz de generar un respuesta inmediata ante una ación o solicitud
externa. Por consiguiente, la relación entre el usuario y la máquina es interactiva. Es multiprogramado.
Al introducir una orden, como por ejemplo a través del teclado, la computadora la ejecuta entregando el resultado
inmediatamente. Cuando el usuario necesita mantener un diálogo constante con la máquina, por ejemplo, para recibir
respuestas a requerimientos o consultas que se efectúan al computador, se debe optar por este tipo de sistema. La
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
6
expresión "inmediato" debe entenderse que la computadora satisface los requerimientos de los usuarios a la
velocidad del ser humano que es lenta comparada con la velocidad que procesa la computadora.
Una misma computadora puede responder a varios usuarios en pocos segundos cuando el tiempo de procesamiento
de cada solicitud es muy corto y el diálogo se limita por el tiempo que requiere el usuario para pensar o actuar.
El esquema de un proceso interactivo puede ser el siguiente:

C o n m u ta c ió n d e tie m p o

S IS T E M A O P E R A T IV O

S IS T E M A d e C Ó M P U T O

F IG U R A D 1 .0 3 E s q u e m a d e u n s is te m a d e tie m p o c o m p a r tid o

El tiempo de procesador que se requiere para atender cada transacción desde una terminal es del orden de los
milisegundos y su organización no puede depender de estimaciones previstas por el usuario.
Esto obliga al administrador de Trabajos del S.O. a entregar el procesador durante breves intervalos de tiempo, de
longitud fija a un grupo de usuarios que están usando el equipo, Esta regla llamada “Round Robin” asigna el tiempo
de procesador en rebanadas. Estas porciones de tiempo reciben el nombre de “Time Slice”. A cada trabajo se le
asigna un time slice fijo, y, si no se completa durante ese intervalo, el trabajo es interrumpido y retorna a la cola de
trabajos en espera del procesador. Los trabajos que van llegando también se incorporan a la cola. Este tipo de sistema
puede trabajar tanto en tiempo real como en tiempo diferido.
Trabajar en tiempo real significa que el computador responde a la velocidad en que se produce el fenómeno
(Velocidad de respuesta en el tiempo que sea necesario, generalmente es a la velocidad del ser humano o en su escala
de tiempos).
Trabajar en tiempo diferido significa que el usuario envía su programa o datos en forma remota y a partir de ese
momento el programa queda fuera del control de usuario, y se ejecutará en algún instante posterior.
Si el programa ingresa en tiempo diferido, el S.O. lo identifica y procede a organizar su lista de programas, en el
cual se agrega la prioridad que le corresponde entre todos los programas que también trabajan en tiempo diferido.
Si la computadora trabaja en tiempo real y hay recursos disponibles para ejecutar otros trabajos y en la cola hay jobs
diferidos, el S.O. puede proceder a ejecutar el trabajo mas prioritario de los diferidos simultáneamente con los de
tiempo real dado que hay disponibilidad de recursos.
Si en el momento en que se ejecuta un trabajo en tiempo diferido, se presenta un trabajo en tiempo real, el que se
estaba ejecutando es detenido para que se comience a ejecutar el de tiempo real. En éste caso no había demanda de
ejecución en tiempo real. Este último siempre tiene máxima prioridad.
Si no hay recursos, los trabajos van engrosando la cola de programas a la espera de su ejecución.

D1.1.4 SISTEMAS DISTRIBUIDOS

Se dió en llamar procesamiento centralizado al sistema de procesamiento de datos en que todas las funciones de
procesamiento están centralizados en una CPU y un S.O. y en cambio, procesamiento distribuido al Sistema de
Procesamiento descentralizado de datos que se ejecutan en nodos dispersos geográficamente interconectados
mediante una red y que utiliza una función de comunicaciones para la transferencia de datos o programas.
El procesamiento distribuido se caracteriza por realizar un procesamiento cooperativo entre distintas máquinas y en
particular está caracterizado por:
1. Fragmentar los elementos que componen una aplicación sobre dos o mas sistemas interconectados, de igual o
diferente arquitectura operativa.
2. Los recursos de los sistemas cooperantes se controlan y administran en forma independiente
3. La relación entre ambos sistemas puede tomar diferentes formas. Por ejemplo:
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
7
• Client - Server es un modelo de procesamiento distribuido caracterizado en que uno de los sistemas cooperante
asume el rol de cliente para solicitar un servicio especifico a un proceso servidor.
• Peer to Peer es otro modelo en que cada nodo es igual a otro (cada uno es un par del otro). Cada uno ofrece los
mismos servicios.
El objetivo básico es buscar un procesamiento rápido en paralelo y de este modo incre-mentar la eficiencia para
lograr un mayor rendimiento general del sistema.
Al procesamiento distribuido lo profundizaremos en el módulo 9 de éste texto

D1.1.5. TENDENCIAS.

De lo dicho podemos extraer de la historia retrospectiva, que inicialmente el hardware era sencillo, aislado, simple,
cada individuo podía emplear en forma exclusiva al Sistema y como se fueron presentando algunos problemas de
organización, se produjo un gran avance tecnológico desde ese estado al de los grandes Sistemas, con complejas
organizaciones de multiprogramación, multiprocesadores, sistemas de memoria virtual, etc. para luego, con el
advenimiento de los chips y los microprocesadores pasar a sistemas económicos actuales como se las Computadoras
Personales (PC) y estaciones de trabajos conectadas en redes como servidores.
Las tendencias se pueden resumir en:
• de un usuario, a varios usuarios sobre un mismo Sistema o sistemas distribuidos.
• de usuarios aislados, a usuarios que comparten y cooperan entre sí.
• de una operación secuencial en batch a la multiprogramación y al tiempo compartido.
• de un procesamiento centralizado a un procesamiento distribuido basado en las comunicaciones.
• tanto en el hardware como en el software, presentan un aumento en el paralelismo y concurrencia de ejecución.
• y, muy importante, una tendencia a la administración de recursos no físicos.

D1.2. PROGRAMAS RELACIONADOS CON EL SISTEMA OPERATIVO.


Existen los siguientes programas que complementan la tarea de un S.O.:

D1.2.1. PROGRAMA DE AYUDA A LA OPERACIÓN DE LA COMPUTADORA.

y Programa cargador (loader): Forma parte del núcleo (Kernel) del S.O. y su función es
cargar el resto de las rutinas del S.O. cuando se lo requiera y también se ocupa de los programas del usuario. Asigna
espacio en memoria central para programas; carga o introduce la instrucción en memoria junto con sus datos;
encadena las referencias entre lotes de objetos; reasigna y ajusta todas las posiciones dependientes del direcciona-
miento.

y Programa cargador inicial (I.P.L.): Hay dos modalidades para inicializar un sistema, uno manual y otro
automático. El manual se hace a través de una tecla de la consola o del teclado se manda un impulso que pone en
marcha al I.P.L., quién carga el núcleo del S.O. en memoria central cada vez que el sistema se pone en marcha. El
automático utiliza una función electrónica para hacer el mismo trabajo sin intervención humana. Esta acción se
conoce en la jerga informática como booteo

y Cargadores absolutos o reubicables: Es un software que coloca las instrucciones del programa que se pretende
ejecutar con sus datos en las locaciones de Memoria Central. Un cargador absoluto lo hace en las locaciones
indicadas por el programa a ejecutar en lenguaje de máquina; mientras que un cargador con reubicación puede
cargar un programa en diversos lugares de memoria de acuerdo a la disponibilidad de espacio en el momento de
su carga. Es mejor este último.

y Intérprete de mandatos o comandos: Su función principal es obtener desde el teclado, el siguiente mandato
especificado por el usuario y ejecutarlo. Ejemplo el Command.com del MS-DOS. Hace de interfase del sistema
con el usuario.
Ver Módulo 2 punto 2.5.2 como máquina extendida y 2.11.1 como servicios que brinda el S.O. al usuario
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
8

y Programa de control de trabajo (Job Control): Puede o no estar en el núcleo y sus funciones son encadenar el
flujo de trabajo; interpretar los comandos; suministrar al “loader” las referencias de ubicación del próximo
programa a cargar. En general se busca reducir la intervención humana en un flujo de trabajos por lotes (Batch), a
ser propuesto para ejecutar, mediante acciones automáticas al S.O. Estas acciones son incorporadas en el flujo de
los trabajos y esto se hace mediante una serie de sentencias que se ocupan de:
◊ comienzo y finalización de un trabajo (Job).
◊ Ordenes para cargar y ejecutar los programas.
◊ Ordenes de reserva de recursos o tiempos de uso de los mismos. Se ejecutan con un interprete asociado al Kernel
o monitor.

• Programa supervisor, núcleo o Kernel (ejecutivo, monitor o residente): Establece las comunicaciones con el
operador enviando o recibiendo los mensajes a través de la consola; organiza la operación de los periféricos y a
través de los canales atiende las interrupciones, sincroniza los procesos, contiene las llamadas al sistema con las
que administra todos los incidentes tales como errores de programas, fallas en los dispositivos, errores del
sistema, etc. Es la parte del S.O. que queda residente en Memoria central en todo momento.

D1.2.2 PROGRAMAS DE AYUDA A LA PROGRAMACIÓN

• Compiladores (Compilers): son un conjunto de programas que permiten la traducción de los lenguajes de alto
nivel que generalmente acompañan al equipo, al lenguaje de esa máquina o sea su juego de instrucciones. Hay
tantos compiladores como lenguajes haya disponibles. Se construyen a medida para cada S.O. y por ello se los
denominan programas utilitarios.
Hay dos tipos de compiladores:
1. los rápidos y sucios, que producen un programa objeto en un código poco eficiente;
2. los optimizadores que generan un código de máquina de alta calidad y eficientizados, aunque son algo más
lentos.

• Interpretes: Son traductores de instrucción de programa fuente a instrucción del lenguaje de máquina y no
producen programas objetos evitando con ello el ensamblado o la compilación y su correspondiente ahorro de
tiempo.

• Editores de Enlaces (Linkeditors): Son programas que permiten crear un programa ejecutable resolviendo las
referencias de objetos del código objeto (salida del compilador) mediante direcciones definitivas a los objetos
reubicables. También incorporan en el programa ejecutable las rutinas de bibliotecas (library) necesarias para su
ejecución.
En general a estos programas (compiladores y editores de enlaces) se suelen englobar como programas traductores ya que se
ocupan de traducir lenguajes o vinculaciones.

• Debuggers (Depuradores): son programas que permiten encontrar y depurar fácilmente errores en otros
programas.

D1.2.3 PROGRAMAS DE AYUDA AL MANEJO DE FUNCIONES DE ENTRADA-


SALIDA O BIBLIOTECAS (DRIVERS).

Son programas de gestión de entradas y salidas, compuestos por:


1) Rutina de transferencia entre el canal o interfase de operaciones de E/S y la Memoria central o la manipulación de
dispositivos.
2) Rutinas de verificación de los rótulos o directorios de los archivos.
3) Rutinas de desbloqueo de los registros físicos para suministrar los registros lógicos a las zonas de trabajo.
4) Rutinas de bloqueo.
5) Y otras rutinas más que dependen del proveedor del S.O. o del periférico.
Estos módulos de software acompañan a cada dispositivo y son específicos de ese dispositivo.
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
9
Para que el sistema operativo los reconozca deben instalarse a través de una función de install o setup. Una vez
instalados, realizan las tareas específicas de ese dispositivo y se pude considerar parte del S.O.

D1.3 CONCEPTOS FUNDAMENTALES (INTRODUCCIÓN)

D1.3.1.MODELOS BÁSICOS

Dado un universo u del cual tomamos un objeto o y construimos un modelo del objeto que representará a ese objeto
ya sea para estudiarlo o entenderlo. Para ello se seleccionan un conjunto de parámetros que caracterizará el objeto en
el modelo. La base de ésta construcción es la observación y la relación entre el objeto y su modelo lo definen la
cantidad de parámetros distintos que se usan en la abstracción, tal como se ve en la Fig. D1.04.
Consideramos a esta abstracción y sus parámetros como datos del objeto. Por otro lado el ser humano le asigna un
significado a dicho modelo. A esto lo llamaremos información y si hace una elaboración estructural y conceptual,
creando las adecuadas sinápsis en su cerebro, lo llamaremos conocimiento. Diferenciamos un aprendizaje del
conocimiento porque el aprendizaje surge de las modificaciones que se realizan sobre los esquemas previos que se
posee almacenado en el cerebro como mapas mentales.
Tanto los datos, como la información y el conocimiento involucran un conjunto de procesos característicos de cada
uno de ellos.
Los modelos están compuestos por entidades o elementos que tienen una organización y una estructura de
objetivos. Además todo esto está integrado en un ambiente en el que dinámicamente se organizan, administran y
funcionan. Esta es la concepción de un sistema. Como vemos la base de los modelos son los datos, la información y
el conocimiento que el ser humano manipula en su ambiente o realidad. Por sobre los sistemas ubicamos a los
fenómenos (que son inexplicables).
Ambiente informaizado
EL FENOMENO Ambientes
Mundo Mundo
Elementos Físico Simbó-
Organización lico
LOS SISTEMAS
Objetivos
Mapas Mentales
u Observación + Modelos
u de Memoria
propiedades ENTIDADES
UNIVERSO
R{Relación}R
MODELO DEL
Elaboración Mundo Mundo
o OBJETO Interno
conceptual y Externo
Abstracción estructural
de la realidad Asignación
(observación) de significado Realidad Virtual

Representación y
Virtualización
(ARCHIVOS SINTETICOS
)
.VISIÓN
. SONIDOS
. TACTO
Datos Información Conocimiento
Generación Análisis Síntesis
Registro Interpretación Inferencia
Identificación Planeamiento Deducción
Procesos Clasificación Elaboración Comprensión
Operación Decisión Juicio
Comunicación Acción Relación
Almacenamiento Control Transformación
Evaluación Percepción
Fig. D1.04 Modelo explicativo de Dato, información, conocimiento y sus interrelaciones
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
10
Los ambientes informatizados se deben a que el hombre convive en un mundo físico cotidiano y un mundo
simbólico (básicamente construido por esquemas, modelos y mapas). De esta forma construye su realidad. Esta
realidad se establece entre el mundo externo y el mundo interno (conocimientos, abstracciones, mapas mentales,
razonamientos, etc.). Entre estos dos mundos, el ser humano, maneja o manipula un conjunto de archivos sintéticos,
altamente virtualizados, como ser archivos de visión, de sonidos, de tactos, de olfatos y de gustos. Con ello construye
y procesa su realidad que es virtual. El futuro pasa por el procesamiento de éstos archivos. El estudio de lo virtual se
denomina Realidad Virtual.
Las técnicas de la Realidad Virtual (RV) son técnicas de presentación de lo virtual que está latente en lo real, sin
contradicciones.
Existen básicamente dos tipos de aplicaciones:
1. Las científicas y cognitivas ,
2. Las lúdicas o artísticas.
Lo virtual incluye tres conceptos:
1. La inmersión,
2. La interacción,
3. La navegación.
La inmersión a su vez se subdivide en dos tipos:
a) la inmersión física en la imagen por medio de cascos estereoscopicos o de láser retinados que provocan la
sensación de “haber penetrado en el ambiente virtual”, o sea, la imagen, y
b) la inmersión mental que consiste en estar dentro de la imagen mediante un proceso de pensamiento (espacio
tridimensional).
La interacción , generalmente en tiempo real con la imagen, permite manipularla, formarla y transformarla como si
fuera un elemento o materia prima de la naturaleza.
La navegación se refiere a las posibilidad de evolucionar, de encontrarse en “verdaderos universos virtuales” que son
creados por las redes de comunicaciones.
En la RV la virtualización se hace por medio de objetos matemáticos. El mundo se representa y manipula por
modelos matemáticos como ser económicos, financieros, sociológicos, modelos de guerras, etc.
Gracias a la capacidad pseudoreal de la imagen virtual, el mundo matematizado se convertirá en un lugar accesible
para un gran número de personas, a partir de la cual se actuará sobre el mundo real, influenciándolo o generando
reglas lógicas impredecibles e incontrolables a través de imágenes y nuevas normas de representación, es decir, que
se generará un nuevo código o sistema de escritura y aprendizaje, que el ser humano utilizará en el futuro como
representación de su realidad (la representación en el sentido del comentario, de la interpretación, de la presencia y
de su conocimiento) como fue el alfabeto en su oportunidad o anteriormente la oratoria.
En la virtualización un proceso importante es la simulación. La simulación permite simular diferentes niveles de
realidad y diferentes niveles de representaciones, tanto de lo sensible como de lo inteligible (a pesar de que en lo
filosófico estos dos se oponen y en lo virtual se enlazan). Toda sensación se basa en un modelo y toda sensación
recibida puede ser modelada, por lo que entra en el orden de lo inteligible y a todo modelo puede darse una
traducción sensible mediante la escritura numérica o su simulación (o sea imágenes). Imágenes y modelos son dos
caras de una misma realidad: una cara sensible y una cara inteligible.
Desde el punto de vista informático se presentan nuevos periféricos que conectados al computador proveerán las
interfases necesarias para manipular este nuevo lenguaje o código que dominará el conocimiento y el
comportamiento del ser humano en un futuro cercano.
La inteligencia es natural y una de las principales virtudes del ser humano.

INTELIGENCIA : ¿NATURAL O ARTIFICIAL?


Esta complejidad no deja de ser sumamente lenta frente a la fabulosa velocidades con que procesa los datos una
computadora. La máquina es la herramienta que necesita el hombre para procesar conocimiento, ya sea simular o
modelar su realidad, y de esta forma se requiere de nuevas tecnologías para crear otros mundos o realidades.
IN T E L IG E N C IA : C O N J U N T O D E
E stím u lo R esp u esta
H A B IL ID A D E S IN T E L E C T U A L E S
P a u s a (tie m p o ) D IN Á M IC A M E N T E O R G A N IZ A D A S
PAR A DAR R ESPUESTAS ADEC UADAS
A U N D A D O E S T ÍM U L O E N U N C IE R T O

A m b ie n te A M B IE N T E .

Fig. D1.05 Modelo Estímulo - Respuesta en un ambiente


Como ejemplo de dificultad damos estas cifras:
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
11
• Cerebro Humano: 1014 a 1015 Neuronas
• Sinapsis: 120 conexiones por neurona = 2x107 Volúmenes de Libros.
De hecho la inteligencia es natural y racional. Si es natural no puede ser artificial. Pero a niveles de computación se
pretende representar un comportamiento inteligente a nivel de bits. esto aún no es del todo posible y se requiere de
grandes volúmenes de recursos y un código mas complejo que el binario. Existen diversas técnicas que se agruparon
en lo que se llama inteligencia artificial, como ser sistemas expertos, representación del conocimiento, aprendizaje
mecanizado (machine learning), etc.

D1.3.2. EL MODELO DE OBJETO:

Ampliaremos el concepto de modelo de objeto presentado en la Fig. D1.04, dado que se usará en varias
oportunidades durante el desarrollo del presente texto.
Un Objeto es una entidad pasiva, conceptualmente similar a una instancia de un tipo de dato abstracto y es
persistente (una vez creado existe hasta que explícitamente se lo destruya).
En éste modelo el énfasis es colocado en caracterizar los componentes de un Sistema Abstracto o físico programado.
Los componentes, aunque sean pasivos, son llamados OBJETOS.

Propiedades :
Una vez creado el Objeto queda determinado por un conjunto de propiedades invariantes que son preservados por un
juego de operaciones que lo hacen manipulable y que, a su vez, determinan su comportamiento.
Los Objetos tienen cierta integridad que no deben ser violados de hecho.
Un objeto solamente puede cambiar de estado, comportarse, ser manipulado o estar en relación con otro objeto en
una apropiada forma.
Ya declarado, existen propiedades invariantes que caracterizan al Objeto y su comportamiento.
Generalmente los Objetos tienen, esencialmente, características de comportamiento comunes, por lo que conviene
definir un Juego de Operaciones simples, fundamentalmente parametrizados, que se pueden aplicar igualmente a
otros Objetos.
Definimos: Dos Objetos son del mismo tipo si tienen el mismo juego de operaciones.
Los Objetos que poseen una misma estructura y un comportamiento común se dice que pertenecen a la misma clase.
De esta forma vemos a cada objeto como una instancia de una clase particular.

Vivencia del objeto


La vivencia de un objeto pasa por distintas instancias:
La creación, donde se lo define, se lo especifica, se le asigna una identidad, se le determina un juego de operaciones
con los cuales se lo manipulará y en los objetos programados se lo codifica.
La instalación es un proceso en que se le debe inicializar las variables y los parámetros con valores para luego probar
su funcionamiento a los efectos de ver si cumple con los objetivos de diseño. Se evalúa su comportamiento y su
desempeño. Si no cumple se ajustan los algoritmos o los valores para que el funcionamiento sea satisfactorio. Estas
instancias son iterativas hasta disponer de un correcto desempeño.
Usar tiene tres instancias claves: invocar al objeto ya instalado, luego se lo manipula con el juego de operaciones y
por último desinvocar cuando no se lo usa mas. En la invocación y en la desinvocación ocurre que se actualiza la
información sobre el objeto aunque hayan ocurrido cambio de valores durante su manipulación. Por ejemplo un
archivo, se crea, se instala y se usa invocándolo con open, se manipula con read y write, y se desinvoca con close.
Por último está la destrucción cuando el objeto ya no se utiliza mas.
En la fig. D1.06 se observa los cuatro estados posibles de un objeto: creación, instalación, uso y destrucción. Además
se describen las primitivas de crear, instalar, usar y destruir con sus respectivas actividades.
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
12
V ivencia del objeto en el tiempo

creació n d el
In stalació n U so d el D estru cció n
o b jeto
d el
O b jeto d el O b jeto
O b jeto
DESTRUIR
CREAR USAR
INSTALAR
. D efin ir . In vocar
SE
. Iden tificar . In icializar . M an ipular
A C T UA LIZA LA
. E specificar . Probar . D esin vocar
IN FO RM A C IÓ N
. C odificar . E valuar
. Juego de O peracion es . A justar
Fig. D1.06 Vivencia de un objeto en el tiempo

Principios del modelo de objeto:

• abstracción: Es el principio de ignorar aquellos aspectos no relevantes de una entidad y


concentrarse solo en los importantes para nuestra perspectiva.
• encapsulación (ocultamiento de información): Es el concepto complementario a la abstracción, ya que la
abstracción permite diseñar el exterior de un objeto, la encapsulación impide que se vea su interior donde el
comportamiento está implementado.
En la práctica cada clase de objeto debe poseer dos partes: una interfase donde solo se muestra el exterior del objeto
(implementando así la abstracción) y una implementación donde está la representación de la abstracción y los mecanismos que
permiten exhibir el comportamiento del objeto.
• modularidad: Consiste en dividir el programa en componentes individuales para reducir su complejidad y
facilitar su documentación.
Muy útil en grandes proyectos donde se deben manejar gran cantidad de elementos.
• jerarquía: Es el ordenamiento de varias abstracciones en niveles distintos.
Las dos jerarquías mas importantes en un sistema complejo son las del tipo “especie de” y las del tipo “parte de”.

D1.4. SOFTWARE DE UN COMPUTADOR.


La diferencia es que el computador es una máquina programable, y admite que el usuario puede programarlo, para
realizar una tarea específica y distinta en cada ocasión o repetir la misma varias veces según se requiera .
Esta capacidad o inteligencia básica es adquirida por la máquina a través del programa de aplicación creado por el
usuario para resolver un dado problema y el Sistema Operativo. El S.O. agiliza la comunicación entre la máquina y
el usuario, facilita la tarea de programación y brinda los medios adecuados para que controle y explote los recursos
Computacionales. Además provee al usuario los siguientes servicios:
• Controlar los dispositivos periféricos a través de los cuales se establece la comunicación entre el usuario y el
computador: por ejemplo teclado, pantalla de visualización, impresora, etc..
• Realizar en forma automática la lectura y almacenamiento de la información (programas y datos) en las unidades
de memoria que forman parte del sistema de computo: unidad de cinta, disco, memoria central, etc..
• Ofrecer al usuario los medios adecuados para la utilización de archivos e información, y para el conocimiento de
su estado y situación en cualquier momento.
• Crearle un ambiente adecuado para la ejecución de los programas.
Estas funciones se pueden englobar en los siguientes dos rubros:
1. Utilización compartida de los recursos y
2. Constitución de una máquina virtual.
En síntesis, esta capacidad o inteligencia básica del computador evita la completa programación del hardware por el
usuario cada vez que desee utilizarlo.
La programación de la máquina para realizar cada una de las tareas anteriormente citadas estará a cargo de un
determinado número de programas, llamados “software del sistema” (integrado por el “software de base” más el
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
13
que controla las comunicaciones y el que administra las bases de datos) que constituye la esta capacidad o
inteligencia propia de cada computador Ver Fig. D1.07.
En los computadores mas pequeños, son escasas las funciones del software del sistema, y este adopta la forma de un
Programa, llamado “programa monitor o núcleo (Kernel)”, que contiene todas las funciones elementales, ya sea
grabado permanentemente en una memoria del tipo ROM (no requiere cargarlo), o cargándolo en memoria central al
inicializar la máquina permaneciendo almacenado en memoria RAM durante su uso.
A medida que el computador es mas potente y evolucionado, crecen las posibilidades de su “inteligencia”, y el
software del sistema también crece y el programa monitor es mas complejo y grande.
Resumiendo: el Software de un computador está compuesto básicamente por dos grandes rubros o tipos de programas:
a) Programas del sistema: Son los que manejan el hardware, controlan los procesos, hacen mas cómodo el entorno
de trabajo, etc. y que generalmente se adquiere llave en mano o es “propietario” de alguna firma proveedora de S.O.
o de hardware.
b) Programas de aplicación o del usuario: Son los que resuelven un problema concreto de los usuarios que no son
suministrados con el sistema operativo. Son programas diseñados y codificados por analistas y programadores de
aplicaciones conjuntamente con los usuarios.
Entonces, el Software de sistema está integrado por tres tipos de programas:
a) el de control de comunicaciones y administradores de redes,
b) El software de administración de Bases de Datos y
c) el software de Base compuesto por los distintos utilitarios y el Sistema Operativo que normalmente se adquiere
para el normal funcionamiento del Sistema computacional.
El Usuario para poder obtener los resultados deseados, somete un trabajo al sistema de cómputos. Entonces,
usuario ( user): es aquél que propone un trabajo al centro de cómputos y espera obtener un resultado del mismo.
Existen distintos tipos de usuarios en función de los privilegios que se le asigna en el sistema, así el superusuario
(super user o system manager) dispone de todos los privilegios, lo cual le permite administrar sin restricciones el
sistema mientras los otros usuarios solo tienen parte de los privilegios de acuerdo a sus funciones.
TRABAJO (JOB): es un conjunto de programas y datos de los cuales se quiere obtener un resultado.
Un trabajo puede dividirse en pasos de trabajo (job steps). que son los procedimientos o funciones incorporados
por el programador en el programa. Cada uno de estos pasos es una unidad de trabajo que se hace en forma
secuencial mediante procesos (por ejemplo el ensamblado de un programa) una vez que el S.O. ha aceptado el
Trabajo. Entonces podemos definir a un proceso (process) o tarea (task): como un conjunto de operaciones que se
ejecutan en forma secuencial en el tiempo.
Los procesos pueden ejecutarse en forma concurrente entre si. El conjunto de programas y datos accedidos por el
procesador durante un proceso se denomina espacio de direccionamiento (address space) de dicho proceso.
S O F T W A R E d e l C o m p u ta d o r

S O F T W A R E S O F T W A R E
A P L IC A C IO N S IS T E M A

S O F T W A R E d e c o n tro l
d e c o m u n ic a c io n e s

S O F T W A R E
A d m in is tr a c ió n
B A S E D A T O S
S O F T W A R E
B A S E

S IS T E M A U T IL IT A R IO S
O P E R A T IV O
Monitor Compiladores
Job Scheduler Debuggers
Process Scheduler Profilers
I/O System Versión control
Reloj tiempo real Editores
etc. etc.
Fig. D1 .07 Distintos tipos de software de un computador
El S.O. vincula el espacio de direccionamiento de los procesos en la Memoria central con la máquina real en el
momento de ejecución. Esto es la ubicación de dichas instrucciones en la memoria física realizadas por hardware en
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
14
la mayoría de los casos. La ejecución significa que se suceden los procesos del usuario cada cambio. Este cambio de
contexto se efectúa por "sincronización" o por "códigos puros" (pure code) es decir, que no se modifican a sí
mismos.
P R O C E S S

C r e a d o p o r e l S .O .
J O B S T E P S

P ro c e s s
J O B
U S E R
J o b S T E P S P ro c e s s

E s p e c ific a d o P R O C E S S
cread o p or el U ser
(d ir . sim b ó lic a s)

E s p a c io d e D ire c c io n a m ie n to
C P U O p e ra c io n e s
P ro c e s o
I/O
S .O . P G R D a ta S T A C K H e a p
e tc .

D ir e c c io n e s sim b ó lic a s (m c )
Fig. D1.08 Representación de los pasos desde Trabajo a Procesos y su espacio de direccionamiento

Resumiendo:
usuario (user): Es aquel que somete un trabajo (Job) a un sistema de cómputos.
trabajo (Job): Conjunto de programas y datos sometidos al Sistema Operativo.
paso de trabajo (Job Steps): Unidad del Job que debe ejecutarse en forma secuencial mediante una serie de procesos o tareas.
proceso o tarea (Process or Task): Sucesión de operaciones que se ejecutan secuencialmente en el tiempo (luego se ampliará
este concepto).
Operación
Datos de Reglas Datos de
entrada salida

Una vez iniciada una operación debe terminar en un período de tiempo determinado. La
salida debe ser función únicamente de los datos de entrada y no del tiempo de ejecución.
Figura D1.09 Esquema de procesamiento de datos.

Sincronización: Ordenamiento expreso en el tiempo de eventos u operaciones entre procesos o entre procesos y el
S.O.

Multiprogramación (multiprogramming o multitasking): La multiprogramación se refiere a varios programas


activos, residentes en memoria central ejecutándose sobre una CPU, mientras que multitarea significa que se
ejecutan varias tareas “simultáneamente”.
Es un multiplexado de los recursos (en especial la CPU) para crear la ilusión de que varios programas se ejecutan en forma
simultánea.

Multiprocesamiento: significa que se usan varios procesadores para ejecutar los programas.

D1.5 RECOMENDACIONES PARA ANALIZAR UN SISTEMA


OPERATIVO
Recomendamos a las siguientes pautas a tener en cuenta para analizar o comparar un S.O. con otro:
1. Ver sobre que Standard se basa el S.O.
2. Conocer la estructura del S.O. (Distintos módulos).
3. Entender que servicios brinda cada Subrutina, Módulo, Driver, etc. (fundamentalmente cómo están
implementado las interfaces).
4. Analizar como resuelve los conflictos (Básicamente en la administración de los recursos - prestaciones).
5. Ver cuanto recurso ocupa el S.O.
6. Observar la velocidad del Procesamiento.
7. Ver como se configura e instala.
8. Facilidades de uso ( Interfase amigable).
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
15
9. Facilidades de Ajuste (Tuning).
10. Facilidades de Programación (ayudas).
11. Facilidades de Lenguajes.
12. etc.
Notas sobre Sistemas Operativos Evolución Histórica de los S.O. y programas de sistemas - Módulo Repaso – Parte D -
16

D1.6 BIBLIOGRAFÍA RECOMENDADA PARA ÉSTE MÓDULO:

1. El computador Pensante por Bertram Raphael. Editorial: Cátedra, colección teorema serie Mayor (!976)
2. Puede Pensar una Máquina por Alan M Turing. Editoprial Sudamericana (Bs. As.) (1958)
3. Perspectivas de la Revolución de los Computadores por: H. Aiken, Ch. Babbage, J. von Neumann, C.E. Shannon,
A. M. Turing,, et all. Editorial: Alianza Editorial Madrid. (1975)
4. Teoría de la Información y codificación por N. Abramson Editorial Paraninfo - Madrid (1961)
5. Philosophy and Artificial Inteligence por Moody, Prentice Hall - 1993 - 175 pages
6. Computing Fundamentals Concepts 3th Edition - W.S. Davis - Addisin Wesley - 1991- 244Pages
7. History of Programming Language - T.J. Bergin Editor - Addison Wesley - ACM Press 1996- 864 Pages.
8. Virtual Reality System - J. Wince - Addison Wesley - 1995 - 384 Pages.
9. Sensation and Perseption 4th. Edition- Matlin M.W. & Foley H.J. - Prentice Hall - 1996 - 560 Pages.

GLOSARIO DE TERMINOS EN IDIOMA INGLÉS


Open Shop Closed Shop Scheduling algorithms
Off line On Line Time Sharing
Multiaccess Batch Job
Direct Access Storage Device Round Robin Time Slice
Loader Initial Program Loader Job Control
Kernel Compilers Linkeditors
Library Drivers Users
Super User System Manager Job Steps
Data Stack Address space
System Calls Pure Code Task
Tuning Read Write
Open Close Scheduler
Debuggers Profilers

GLOSARIO DE TERMINOS EN CASTELLANO


Open Shop Closed Shop Algoritmos de administración
Canal de E/S E/S Fuera de línea Tiempo compartido
Monoprogramación Multiprogramación Sistema de Procesamiento en Batch
Trabajo Teleprocesamiento Paginación
Tiempo compartido Tiempo diferido Tiempo Real
Round Robin Periférico Sistema interactivo
Programa Cargador Programa Cargador inicial Interprete de Comandos
Dato Información Conocimiento
Sistema Mapas mentales Ambiente informatizado
Realidad Virtual Inmersión Interacción
Inteligencia Modelo de Objeto Objeto
Vivencia del Objeto Encapsulación Modularidad
jerarquía Software de un computador Software de Base
Programas del Sistema Programas de Aplicaciones Usuario
Código puro.
Dispositivo de Almacenamiento secundario de acceso directo

ACRÓNIMOS USADOS EN ESTE MÓDULO


S.O. Sistema Operativo E/S Entrada / Salida
CPU Central Processing Unit DASD Direct Access Storage Device
FORTRAN FOrmula - TRANslation mseg milisegundo
I.P.L. Initial Program Loader PGR Programa
RV Realida Virtual I/O Input / Output

S-ar putea să vă placă și