REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN
UNIVERSITARIA CIENCIA Y TECNOLOGÍA
UNIVERSIDAD NACIONAL EXPERIMENTAL “SIMÓN RODRÍGUEZ”
NÚCLEO CARICUAO
CURSO: SISTEMAS OPERATIVOS (32614)
PARTICIPANTE: RAIBEL MARIAN GARCÍA HERNÁNDEZ C.I: V-
20.102.312 SECCIÓN: A PROFESOR: JUALIAN ROSENDO
UNIDAD I: SISTEMAS OPERATIVOS.
INTRODUCCIÓN.
La informática tal y como se le conoce hoy día, surgió a raíz de la II Guerra
Mundial, en la década de los 40. En esos años no existía siquiera el concepto de Sistema
Operativo y los programadores interactuaban directamente con el hardware de las
computadoras trabajando en lenguaje máquina (esto es, en binario, programando
únicamente con 0s y 1s).
Por lo que se puede decir que en los primeros días de los ordenadores, los
sistemas operativos, el software que controla las aplicaciones y recursos del sistema,
no existían. Tampoco existía el software propiamente dicho. Considerando que los
computadores se programaban conectando manualmente circuitos de cálculo y
cambiando el cableado para cada nuevo cálculo a realizar. Esto cambió en 1945,
cuando John Von Neumann inventó un ordenador que almacenaba en memoria
instrucciones que indicaban a las unidades de cálculo lo que debía hacer. El 21 de junio
de 1948 se ejecutó el primer programa en una máquina llamada Baby en la Universidad
de Manchester y nació el software.
Con este nuevo comienzo se comienza hablar sobre el concepto de sistema
operativo en la década de los 50. Por ello se sustenta que el primer sistema operativo
de la historia fue creado en 1956 para un ordenador IBM 704, y básicamente lo único
que hacía era comenzar la ejecución de un programa cuando el anterior terminaba.
1
Posteriormente en los años 60 se produce una revolución en el campo de los
sistemas operativos. Aparecen conceptos como sistema multitarea, sistema
multiusuario, sistema multiprocesadores y sistema en tiempo real.
En el mundo de la tecnología actual, donde el hardware, las máquinas, se han
convertido en lo que en inglés se denomina commodities, es decir, mercancías,
productos indiferenciados, las marcas buscan desesperadamente la manera de
diferenciarse de sus competidores, y lo hacen ya no tanto en base a unas características
técnicas que a los pocos meses serán replicadas por clones chinos, o por las demás
marcas, sino con dos factores principales: diseño y software, y software quiere decir
sistemas operativos.
Por ello, los sistemas operativos son, hoy más que nunca, activos estratégicos
de primer orden que pueden encumbrar a una firma (Apple con iOS, Samsung con
Android) o condenarla al ostracismo o la venta (Nokia con su falta de reflejos con
Symbian, o Blackberry y los errores estratégicos con BB OS).
En esta Unidad I se abordara el concepto de sistema operativo, tipos de
operaciones y componentes del sistema operativo.
SISTEMAS OPERATIVOS.
Según Felici (s/f) un sistema operativo (SO) es un software que proporciona un
acceso sencillo y seguro al soporte físico del ordenador (hardware), ocultando al
usuario detalles de la implementación particular y creando la ilusión de existencia de
recursos ilimitados (o abundantes).
También se puede decir que un sistema Operativo, es el de un programa que
actúa como intermediario entre el usuario de la computadora y el hardware de la
computadora.
Por ello se puede decir que el sistema operativo comienza a trabajar en cuanto
se enciende el ordenador y es completamente fundamental para que el usuario trabaje
con él. Los sistemas operativos realizan tareas básicas y, sin ellos, el ordenador no
funcionaría. Así, por ejemplo, el sistema operativo reconoce la conexión del teclado,
organiza y ordena los archivos, controla la impresora, la pantalla, etc. Es como un
policía de tráfico pues, se encarga de que los programas no interfieran entre ellos.
2
Sobre el sistema operativo se instalan los programas que vaya a usar el usuario.
Los programas, también llamados aplicaciones son muy diversos. Ejemplo: El
procesador de textos Word.
De acuerdo con Pérez Sánchez, Pérez Costoya, Pérez Hernández, Robles
Forcada y Rosales García (2015) un sistema operativo es un programa que controla la
ejecución de aplicaciones y programas y que actúa como interfaz entre las aplicaciones
y el hardware del computador.
Una definición técnica de sistema operativo seria que es Software de bajo nivel
que gestiona la interfaz con el hardware periférico, planifica tareas, asigna
almacenamiento y presenta al usuario una interfaz por defecto cuando no se está
ejecutando ningún programa de aplicación.
El sistema operativo puede dividirse en un kernel que siempre está presente y
varios programas del sistema que hacen uso de las facilidades proporcionadas por el
kernel para realizar tareas rutinarias de nivel más alto, actuando frecuentemente en una
relación cliente-servidor.
Algunos incluyen una interfaz gráfica de usuario y un sistema de ventanas como
parte del sistema operativo; otros no. El cargador del sistema operativo, la BIOS y otros
requisitos de firmware para el arranque o la instalación del sistema generalmente no se
consideran parte de él, aunque esta distinción no está muy clara en el caso de un sistema
diseñado para residir en ROM («rommable»), como RISC OS.
Los servicios que proporcionan un sistema operativo y su filosofía de diseño en
general ejercen una gran influencia en el estilo de programación y sobre las culturas
técnicas que afloran en torno a las máquinas en las que se ejecuta el sistema.
Además forman el software de aplicaciones los programas que realizan tareas
concretas para los usuarios: procesadores de textos y de documentos, hojas de cálculo,
navegadores web, reproductores multimedia, gestores de bases de datos, etc. Estos
programas se apoyan en otros cuya función no es ya una tarea concreta, sino
proporcionar servicios generales. A estos otros se les llama software de sistemas (o
software del sistema).
3
El sistema operativo es parte del software del sistema. Otros programas del
software del sistema que no suelen considerarse parte del sistema operativo son:
o Los procesadores de lenguajes: traductores (ensambladores y compiladores) e
intérpretes.
o Los entornos de desarrollo integrados (IDEs), que incluyen procesadores de
textos y de lenguajes, depuradores, facilidades para el desarrollo de interfaces
gráficas, etc.
o Las bibliotecas (o librerías), que contienen rutinas (programas que no son
directamente ejecutables porque están diseñados para complementar otros) con
funciones muy variadas.
o Los programas de respaldo (backup).
o Los programas intermediarios (middleware) que dan servicios a aplicaciones
distribuidas.
o Los programas que implementan interfaces de usuario, ya sean textuales
(intérpretes de órdenes, o shells) o gráficas (GUIs).
Pero no puede establecerse una frontera precisa para delimitar lo que forma
parte y lo que no del sistema operativo. El motivo es práctico: un sistema operativo sin
el acompañamiento de algunos otros programas sería tan inoperante como el hardware
desnudo. Además otros programas que son necesarios dependen del uso del sistema:
o Para los usuarios finales la máquina tiene que estar dotada, junto con el sistema
operativo, de una interfaz gráfica, de algunas utilidades (como un programa de
respaldo) y, por supuesto, de los programas de aplicación necesarios para este
tipo de usuarios. Es, por tanto, frecuente que bajo el nombre de «sistema
operativo» se incluyan estos programas.
o Para los desarrolladores de aplicaciones es precisa, al menos, una interfaz de
texto, bibliotecas y herramientas de desarrollo: procesadores de lenguajes,
depuradores, etc.
o Para los administradores del sistema, además de la interfaz de texto, se
necesitan utilidades de gestión de usuarios, diagnóstico, mantenimiento,
auditoría, etc.
4
o En el caso de servidores (de web, de correo, etc.) el sistema tiene que incluir,
obviamente, los programas necesarios para dar el servicio y para su gestión.
Estos programas no forman parte del sistema operativo, pero éste tiene que dar
las facilidades necesarias para el acceso a la red.
o En el caso de sistemas para aplicaciones específicas, en los que los usuarios
finales hacen un uso indirecto del sistema operativo y ni siquiera son
conscientes de su existencia (por ejemplo, los incorporados en televisores y
otros electrodomésticos), el software integra, grabado en memoria ROM o
flash, el sistema operativo, todos los programas necesarios y una interfaz muy
específica controlada normalmente por botones, o por una pantalla táctil, o por
un mando a distancia (a veces, como en los routers, también interfaces de texto
y gráficas accesibles por la red).
Se puede considerar que un sistema operativo tiene los siguientes tres objetivos:
o Facilidad de uso. Un sistema operativo facilita el uso de un computador.
o Eficiencia. Un sistema operativo permite que los recursos de un sistema de
computación se puedan utilizar de una manera eficiente.
o Capacidad para evolucionar. Un sistema operativo se debe construir de tal
forma que se puedan desarrollar, probar e introducir nuevas funciones en el
sistema sin interferir con su servicio.
o Incrementar la productividad (fundamental).
o Seguridad de la información, los usuarios y el propio sistema.
o Abstracción: se enmascaran los recursos
En cuanto a las funciones principales de los sistemas operativos, se pueden decir
las siguientes:
o Gestionar las transferencias de información internas.
o Proporcionar la comunicación de la máquina con los operadores.
o Controlar la ejecución de los programas con la detección de los errores.
o Encadenar automáticamente las tareas.
o Optimizar los recursos (memoria, unidad aritmética, etc.).
5
o Cargar y descargar automáticamente los programas en función del espacio de
memoria y de los diferentes periféricos.
o Comunicación con el usuario
o Control y gestión de elementos físicos
o Utilización por varios usuarios
o Ejecución de varios programas
o Compartición de Información
o Compartición de Periféricos
o Comunicación entre sistemas.
TIPOS DE OPERACIONES.
Según Fernández Fernández (2015) señala que los sistemas operativos pueden
realizar las siguientes operaciones:
Naturaleza de los trabajos a los que da servicio el sistema.
Procesamiento por lotes (batch processing).
Los programas que se procesan por lotes no requieren ninguna interacción
directa con los usuarios finales. Es una forma de procesamiento tradicional que se
introdujo en los ordenadores (mainframes) de los años 1950: los usuarios preparaban
sus programas y sus datos en máquinas independientes (perforadoras de tarjetas) y los
entregaban a un operador, que los introducía en una máquina lectora, de donde pasaban
a una cinta magnética o a un disco. Los trabajos se agrupaban en lotes que tenían
necesidades similares (más uso de la CPU, o del disco, o de la impresora, etc.) y el
sistema operativo optimizaba el uso de los recursos de manera que, por ejemplo, la
CPU no quedase congelada porque el programa en ejecución no pudiese seguir hasta
completar una lenta operación de entrada/salida (comunicación con un periférico). En
este caso, el sistema cedía el uso de la CPU a otro programa de otro lote.
Este modo de funcionamiento, actualmente obsoleto en los términos descritos,
introdujo un concepto fundamental en la evolución de los sistemas operativos:
Multiprogramación. Los programas están almacenados en memoria secundaria, pero
para poder ejecutar un programa éste tiene que estar en la memoria principal. Así, antes
6
de su ejecución, hay que cargar el programa: copiarlo de la memoria secundaria a la
principal.
En la multiprogramación son varios los programas que se cargan y el sistema
operativo se encarga de ceder la CPU a otro programa cuando el que se está ejecutando
pide una operación de entrada/salida.
Monoprogramación consistía en cargar el primer programa, esperar a su finalización,
cargar el siguiente y así sucesivamente. Esto era muy ineficiente, porque las
operaciones de entrada/salida son mucho más lentas que la CPU, y ésta estaba mucho
tiempo inactiva.
Sistemas interactivos.
Tienen como requisito adicional responder en un tiempo razonable a las
peticiones del o de los usuarios. Algunos están diseñados para atender a un solo usuario
(puede haber varios usuarios registrados, pero en un momento dado sólo uno hace uso
del sistema). Y algunos de éstos son monotarea, es decir, monoprogramación donde el
usuario pide la ejecución de un programa (que puede ser interactivo porque pide datos)
y hasta que no termine de ejecutarse no puede ejecutarse otro.
Así era MS-DOS, y así son algunos sistemas para aplicaciones especiales, como
«BareMetal OS», concebido para nodos de altas prestaciones en una red en la que cada
nodo realiza una sola tarea. Pero la mayoría de los sistemas actuales, aunque sean
monousuario (como los de los teléfonos móviles y las tabletas), son multitarea.
La multitarea es una forma de multiprogramación adaptada a los requisitos de
los sistemas interactivos. Tal como la hemos descrito, la multiprogramación exigiría
cargar todos los programas previamente a su ejecución.
Hay dos formas de conseguir este comportamiento: en la multitarea cooperativa
son los mismos programas los que periódica y voluntariamente, o bien cuando quedan
bloqueados esperando una operación de entrada/salida, ceden el uso de la CPU,
mientras que en la multitarea apropiativa (preemptive) es el sistema operativo el que
asigna en cada momento la CPU al programa que corresponda.
Con la primera el sistema es más sencillo pero menos seguro: un programa mal
diseñado puede bloquearlo todo. Se utilizaba en las versiones anteriores a Windows 95
7
y en las de Mac OS anteriores a OS X. Y se utiliza para sistemas que funcionan en
entornos muy controlados, sin usuarios que puedan ejecutar programas arbitrariamente.
Los demás sistemas actuales, incluyendo Android y iOS, funcionan con multitarea
apropiativa.
La mayoría de los sistemas operativos de uso general actuales (las distintas
versiones de Unix, Windows y OS X) son, además de multitarea, multiusuario. Esto
significa que varios usuarios, de forma local o remota, pueden hacer uso de los recursos
y ejecutar programas independientemente unos de otros mediante la técnica de tiempo
compartido (time sharing), que esencialmente es la misma de la multitarea.
Sistemas embebidos.
Se llama embebido a un sistema operativo (y a un hardware) diseñado para
controlar el funcionamiento de un dispositivo que contiene otras partes mecánicas y
eléctricas. Los incluidos en los teléfonos móviles son sistemas embebidos, pero
también otros en los que la interacción con el usuario final es prácticamente nula o
limitada a interfaces muy específicas: control de automóviles, electrodomésticos,
etc.
Como normalmente los recursos de hardware (velocidad de la CPU y capacidad
de memoria) para estos sistemas son limitados, cuando no hay interacción significativa
con el usuario y los programas están muy controlados se suele utilizar multitarea
cooperativa.
Hay versiones para estas aplicaciones de los sistemas operativos de uso general
más conocidos.
Por ejemplo, Windows Embedded Standard, utilizado en cajeros automáticos,
terminales de punto de ventas, etc. TinyBSD es un subconjunto de freeBSD (un sistema
operativo de tipo Unix, distinto de Linux y también libre). Y de Linux se han derivado
varias distribuciones para sistemas embebidos: OpenEmbedded, LTIB, etc. La
flexibilidad que ofrecen los sistemas de código abierto para su adaptación ha permitido
a muchos fabricantes personalizarlos (customize) de manera muy específica para
distintos dispositivos. Así, se encuentran implementaciones basadas en Linux para
móviles (Android), televisores (webOS), routers (OpenWrt), navegadores GPS, etc.
8
Los sistemas de tiempo real normalmente son también embebidos, pero tienen
un requisito adicional: cumplir ciertas restricciones de tiempo de respuesta ante
determinados estímulos. Esto es necesario en aplicaciones como control de máquinas,
vehículos, instrumentos científicos e industriales, armamento bélico, etc.
Distribución de los recursos hardware que gestiona el sistema.
Los recursos de hardware a gestionar por un sistema operativo son la CPU, la
memoria principal y los periféricos, incluyendo entre éstos a las memorias secundarias.
En el apartado siguiente describiremos algunas características de estos recursos que es
necesario conocer para comprender el funcionamiento del sistema operativo. Aquí nos
detendremos en la distribución espacial de estos recursos.
Sistemas centralizados.
Es el caso más familiar, en el que la CPU y la memoria están muy próximos y
los periféricos normalmente se encuentran a poca distancia, aunque también pueden
ser remotos, conectados a la unidad central mediante líneas dedicadas, una red local o
internet.
La virtualización es un concepto que desarrollaremos en el tema procesadores
software. Es la implementación sobre un determinado sistema operativo, o
directamente sobre el hardware, de uno o varios sistemas operativos diferentes, que son
sistemas virtuales (no reales). Esto tiene muchas aplicaciones. Por ejemplo, en un
entorno personal uno puede trabajar habitualmente sobre Windows, pero
esporádicamente necesitar alguna aplicación de Linux. Si tiene instalado sobre
Windows el software de virtualización adecuado puede hacerlo sin necesidad de
arrancar el ordenador.
En un entorno corporativo es una manera de abordar la «consolidación de
servidores»: reducir el número de servidores o ubicaciones de los servidores para
optimizar el uso de los recursos.
Sistemas en red.
En una red de ordenadores cada una de las máquinas dispone de su propio
sistema operativo independiente, pero estos sistemas tienen procedimientos de
comunicación para que los usuarios y los programas puedan compartir recursos
9
(ficheros, impresoras, etc.) conectados a la red. Todos los sistemas operativos de uso
general disponen de estos procedimientos. En algunos sistemas embebidos (por
ejemplo, en los routers) son esenciales.
Sistemas distribuidos.
En los sistemas distribuidos las máquinas también están en red, pero con menos
autonomía. Cada una dispone de una parte básica del sistema operativo (el kernel o el
microkernel), y el resto de los componentes se encuentra en distintas máquinas. Para
los usuarios es como si sólo existiese un sistema operativo, y la carga de trabajo de las
aplicaciones se distribuye por las distintas máquinas.
Sus ámbitos de aplicación son mucho menores que las de los sistemas
centralizados, y se han desarrollado principalmente en entornos académicos y de
investigación. Pero estas investigaciones han facilitado el despliegue de otras
arquitecturas, como el grid computing (combinación de máquinas en redes de área
extensa para obtener capacidades similares a los supercomputadores) y la informática
en la nube (cloud computing), y ocasionalmente han dado lugar a otras aportaciones.
Sistemas en la nube.
Un entorno informático en la nube está basado en un gran número de recursos
de hardware conectados a través de internet sobre el que se articulan tres tipos de
servicios: de infraestructura (IaaS: Infastructure as a Service), de plataforma (PaaS:
Platform as a Service) y de aplicaciones (SaaS: Software as a Service). El objetivo es
suministrar bajo demanda recursos hardware (IaaS), software de desarrollo (PaaS) y
aplicaciones (SaaS) de manera flexible: el coste de los servicios está basado en el
consumo que se realiza.
Los proveedores de IaaS más conocidos son Amazon EC2 (Elastic Compute
Cloud) y Google Compute Engine. Ambos proporcionan almacenamiento, capacidad
de proceso y sistemas operativos virtuales (Linux o Windows Server). El cliente puede
elegir entre distintas configuraciones de CPU y memoria, y, en función de sus
necesidades, demandar una o varias réplicas (instances) de las máquinas.
La gestión de los recursos físicos reales para poder servir a miles de peticiones
es, naturalmente, muy compleja. El software que se ocupa de ella tiene funciones más
10
elaboradas que las de un sistema distribuido tradicional: debe ser capaz de generar
dinámica y rápidamente múltiples réplicas de las máquinas virtuales, ocuparse de la
seguridad, de la contabilidad, etc. Este software se llama gestor de infraestructura
virtual (VIM: Virtual Infrastructure Manager), o también sistema operativo de nube.
De acuerdo Jaramillo Morales (2015) los sistemas operativos pueden ser
clasificados de distintas formas o tipos:
Según la administración de tareas.
Monotarea: este tipo de sistemas operativos son capaces de manejar un programa o
realizar una sola tarea a la vez. Son los más antiguos. Por ejemplo, si el usuario está
escaneando, la computadora no responderá a nuevas indicaciones ni comenzará un
proceso nuevo.
Multitarea: esta característica es propia de los S.O. más avanzados y permiten ejecutar
varios procesos a la vez, desde uno o varios ordenadores, es decir que los pueden
utilizar varios usuarios al mismo tiempo. Esto se puede realizar por medio de sesiones
remotas una red o bien, a través de terminales conectadas a una computadora.
Según la administración de usuarios:
Monousuario: Sólo pueden responder a un usuario por vez. De esta manera, cualquier
usuario tiene acceso a los datos del sistema. Existe un único usuario que puede realizar
cualquier tipo de operación.
Multiusuario: esta característica es propia de aquellos S.O. en los que varios usuarios
pueden acceder a sus servicios y procesamientos al mismo tiempo. De esta manera,
satisfacen las necesidades de varios usuarios que estén utilizando los mismos recursos,
ya sea memoria, programas, procesador, impresoras, scanners, entre otros.
Sistemas Operativos por lotes.
Los Sistemas Operativos por lotes, procesan una gran cantidad de trabajos con
poca o ninguna interacción entre los usuarios y los programas en ejecución. Se reúnen
todos los trabajos comunes para realizarlos al mismo tiempo, evitando la espera de dos
o más trabajos como sucede en el procesamiento en serie. Estos sistemas son de los
más tradicionales y antiguos, y fueron introducidos alrededor de 1956 para aumentar
la capacidad de procesamiento de los programas.
11
Cuando estos sistemas son bien planeados, pueden tener un tiempo de ejecución
muy alto, porque el procesador es mejor utilizado y los Sistemas Operativos pueden
ser simples, debido a la secuenciabilidad de la ejecución de los trabajos.
Algunos ejemplos de Sistemas Operativos por lotes exitosos son el SCOPE, del
DC6600, el cual está orientado a procesamiento científico pesado, y el EXEC II para
el UNIVAC 1107, orientado a procesamiento académico.
Sistemas Operativos de tiempo real.
Los Sistemas Operativos de tiempo real son aquellos en los cuales no tiene
importancia el usuario, sino los procesos. Por lo general, están subutilizados sus
recursos con la finalidad de prestar atención a los procesos en el momento que lo
requieran. Se utilizan en entornos donde son procesados un gran número de sucesos o
eventos.
Muchos Sistemas Operativos de tiempo real son construidos para aplicaciones
muy específicas como control de tráfico aéreo, bolsas de valores, control de refinerías,
control de laminadores. También en el ramo automovilístico y de la electrónica de
consumo, las aplicaciones de tiempo real están creciendo muy rápidamente. Otros
campos de aplicación de los Sistemas Operativos de tiempo real son los siguientes:
a. Control de trenes.
b. Telecomunicaciones.
c. Sistemas de fabricación integrada.
d. Producción y distribución de energía eléctrica.
e. Control de edificios.
f. Sistemas multimedia.
Algunos ejemplos de Sistemas Operativos de tiempo real son: VxWorks,
Solaris, Lyns OS y Spectra.
Sistemas Operativos de multiprogramación (o Sistemas Operativos de multitarea).
Se distinguen por sus habilidades para poder soportar la ejecución de dos o más
trabajos activos (que se están ejecutado) al mismo tiempo. Esto trae como resultado
12
que la Unidad Central de Procesamiento (UCP) siempre tenga alguna tarea que
ejecutar, aprovechando al máximo su utilización.
Su objetivo es tener a varias tareas en la memoria principal, de manera que cada
uno está usando el procesador, o un procesador distinto, es decir, involucra máquinas
con más de una UCP.
Sistemas Operativos como UNIX, Windows, Windows NT, MAC-OS, OS/2,
Linux soportan la multitarea.
Sistemas Operativos de tiempo compartido.
Permiten la simulación de que el sistema y sus recursos son todos para cada
usuario. El usuario hace una petición a la computadora, está la procesa tan pronto como
le es posible, y la respuesta aparecerá en la terminal del usuario.
Los principales recursos del sistema, el procesador, la memoria, dispositivos de
E/S, son continuamente utilizados entre los diversos usuarios, dando a cada usuario la
ilusión de que tiene el sistema dedicado para sí mismo. Esto trae como consecuencia
una gran carga de trabajo al Sistema Operativo, principalmente en la administración de
memoria principal y secundaria.
Sistemas Operativos distribuidos.
Permiten distribuir trabajos, tareas o procesos, entre un conjunto de
procesadores. Puede ser que este conjunto de procesadores esté en un equipo o en
diferentes, en este caso es trasparente para el usuario. Existen dos esquemas básicos de
éstos. Un sistema fuertemente acoplado es aquel que comparte la memoria y un reloj
global, cuyos tiempos de acceso son similares para todos los procesadores. En un
sistema débilmente acoplado los procesadores no comparten ni memoria ni reloj, ya
que cada uno cuenta con su memoria local.
Los sistemas distribuidos deben de ser muy confiables, ya que si un componente
del sistema se compone otro componente debe de ser capaz de reemplazarlo.
Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los
siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
13
Sistemas Operativos de red.
Son aquellos sistemas que mantienen a dos o más computadoras unidas através
de algún medio de comunicación (fisico o no), con el objetivo primordial de poder
compartir los diferentes recursos y la información del sistema.
El primer Sistema Operativo de red estaba enfocado a equipos con un
procesador Motorola 68000, pasando posteriormente a procesadores Intel como Novell
Netware.
Los Sistemas Operativos de red más ampliamente usados son: Novell Netware,
Personal Netware, LAN Manager, Windows NT Server, UNIX, LANtastic.
Por otro lado este, de acuerdo con serrano Castaño se puede desplegar un sinfín
de tipos de operaciones entre ellas destacan:
Según la utilización de los recursos. Si un sistema operativo se ejecuta en una
computadora con un solo procesador se clasifican en sistemas monoprogramados y
multiprogramados. Sin embargo si tiene varios procesadores se habla de sistemas
multiprocesamiento.
Sistema monoprogramado. Sólo se permite la ejecución de un programa en el sistema,
por lo que el programa se carga en memoria y permanece en ella hasta su finalización.
Sistema multiprogramado o multitarea. Estos sistemas pueden ejecutar simultánea
varias tareas y de varios usuario. El sistema operativo mantiene varios trabajos en la
memoria, y mientras uno está a la espera de realizar alguna tarea, por ejemplo la
terminación de una operación de entrada/salida (E/S), ya sea el presionar una tecla u
otra tarea, el sistema operativo selecciona otro trabajo para que la CPU lo ejecute y esta
última no quede vacía de trabajo mientras estos esperan su ejecución. Hoy en día todos
los sistemas operativos son multitarea.
Sistema multiprocesador. Estos sistemas son aquellos que pueden manejar varios
procesadores, con lo que se alcanza un mayor rendimiento ya que al tener más
procesadores se puede realizar más tareas al mismo tiempo, aunque hay que decir que
este aumento no es proporcional al aumento del número de procesadores. A este tipo
de sistema también se le llama computadoras paralelas o multicomputadoras, ya que
cada procesador tiene una copia del sistema operativo, y éstas se comunican entre sí
14
para el manejo de las tareas, repartiéndose las mismas entre los procesadores, es decir,
una tarea es ejecutada en proporción por todos los procesadores.
Según la interactividad. En este caso se habla de los sistemas dependiendo del tipo de
trabajo y los servicios que se presta a los usuarios se habla de sistemas de procesos por
lotes, sistemas de tiempo compartido y sistemas de tiempo real.
Sistemas de procesamiento por lotes (Batch). En este tipo de sistemas no existe
intervención del usuario durante la ejecución de los trabajos. Cada trabajo consiste en
una relación de pasos secuenciales, que al juntarse forman un lote. Estos
procesamientos son largos y no tienen límite de tiempo en su ejecución.
Sistemas de tiempo compartido. En este tipo de sistemas los procesos se ejecutan de
manera simultánea mientras la CPU conmuta entre ellos, de manera que el usuario es
ajeno a la misma. En estos sistemas los usuarios sí pueden interactuar con los
programas durante su ejecución.
Sistemas de tiempo real. Se caracterizan porque maximizan el tiempo en el que se
manda la información, por ello se utilizan para procesos delicados, como por ejemplo
la ejecución por parte del brazo de un robot en una planta de ensamblaje de vehículos.
Dicho robot debe obtener la información de ejecución dentro de unos márgenes
estrictos de tiempo, ni antes ni después.
Según el número de usuarios. En este caso se habla de los sistemas dependiendo del
tipo de trabajo y los servicios que se presta a los usuarios se habla de sistemas de
procesos por lotes, sistemas de tiempo compartido y sistemas de tiempo real.
Sistema operativo de computadora personal. Se puede también denominar sistema
monousuario. Atiende al número de usuarios que utilizan dicho sistema al mismo
tiempo. En el caso de los monousuario hasta que la persona que está utilizando el
equipo no termina, éste no puede ser utilizado por otra. El sistema operativo de
computadora personal tiende a ser monousuario, ya que es un sistema enfocado a
maximizar la comodidad del usuario y a responder con rapidez a las necesidades de
éste.
15
Como ejemplo actual de este sistema podemos mencionar a Windows 7, que
excepto en algunas versiones mediante la herramienta de terminal server se puede
convertir en multiusuario, la mayoría es monousuario.
Sistema operativo servidor o multiusuario. Al contrario que el anterior, en este sistema
concurre más de un usuario de forma simultánea desde diferentes ubicaciones. Por
ejemplo el caso de los servidores web, los cuales sirven las páginas alojadas en los
mismos a través de internet a todo aquel que las visite. Entre los sistemas operativos de
servidor encontramos a UNIX, Windows Server y Linux.
Según el número de computadoras. Dependiendo del número de computadoras que
formen parte del sistema, se puede hablar de sistemas centralizados o sistemas
distribuidos.
Sistemas centralizados. Este tipo de sistemas es aquel que utiliza los recursos de una
sola computadora, como es la memoria, CPU, discos, periféricos. Este tipo de sistema
planteaba un problema, y es que cuando se interconectaban ordenadores a uno
principal, cuando este último requería un cambio de hardware para aumentar su
capacidad, ello era más costoso que añadir nuevos computadores.
Sistemas distribuidos. Es una colección de computadoras independientes que aparecen
ante los usuarios del sistema como una única computadora.
En este tipo de sistemas se utiliza al mismo tiempo los recursos de los distintos
equipos, ya bien sea el hardware o el software de los mismos, por lo que las
computadoras se comunican entre sí a través de distintos medios de comunicación,
como pueden ser líneas de alta velocidad o líneas telefónicas. Este tipo de sistemas
puede abarcar desde unas pocas computadoras hasta miles o millones de ellas,
enlazadas a través de internet. Estos recursos que son compartidos son manejados por
un gestor de recursos, que es un software que se encarga de controlar dichos recursos.
Según la estructura del sistema operativo. En este caso se encuentra los distintos
sistemas dependiendo del diseño interno de los mismos. Entre ellos encontramos los
sistemas monolíticos, los sistemas en capas, las máquinas virtuales y el sistema cliente-
servidor.
16
Sistemas monolíticos. Son sistemas pequeños, sencillos y limitados. No tienen una
estructura definida, sino que todos sus componentes se encuentran agrupados en un
único programa. Cada conjunto de procedimientos puede invocar a cualquiera de los
otros procedimientos. Un ejemplo de este tipo de sistemas es el sistema MS-Dos.
Sistema por capas. El sistema se organiza como una jerarquía de capas, donde cada
capa ofrece una interfaz a la capa superior, y sólo utiliza los servicios que ofrece la
capa inferior. Cada capa tiene funciones específicas, así cada capa se encarga de una
parte del sistema operativo.
Sistema de máquina virtual. El concepto de máquina virtual surge con el sistema
VM/3701 de IBM, en el que se separa las dos funciones que proporciona un sistema de
tiempo compartido o multiusuario, como son la multiprogramación y la abstracción del
hardware.
El corazón del sistema de creación de las máquinas virtuales es conocido como
monitor de máquina virtual, y se ejecuta sobre el hardware proporcionando varias
máquinas virtuales a la siguiente capa de software. Se puede decir que estas máquinas
virtuales son copias exactas del hardware desnudo donde se incluyen los recursos
principales de una computadora, como es el kernel, dispositivos E/S, interrupciones,
memoria principal, etc.
Sistema cliente-servidor. El sistema consiste en un conjunto de módulos autónomos,
los cuales ponen a disposición de los demás una serie de servicios o competencias. Es
decir, cada uno de los módulos actúan como servidores que atienden las peticiones de
otros módulos que actuarían como clientes. Este tipo de sistema es muy apropiado para
los sistemas distribuidos.
COMPONENTES DE UN SISTEMA OPERATIVO.
Según Villarreal (2017) los componentes básicos de un sistema operativo son
los siguientes:
Gestión de procesos: un proceso es, sencillamente, un programa en ejecución que
necesita una serie de recursos para realizar su tarea: tiempo de CPU (Central Process
Unit o Unidad de Proceso Central, es decir, el procesador principal del ordenador),
memoria, archivos y dispositivos de E/S (entrada/salida).
17
Es función del sistema operativo:
o Planificación de procesos: decide qué proceso emplea el procesador en cada
instante de tiempo.
o Mecanismos de comunicación entre procesos: permiten comunicar a dos procesos
del sistema operativo.
o Mecanismos de sincronización: permiten coordinar a procesos que realizan accesos
concurrentes a un cierto recurso.
Administración de memoria principal: la memoria es como un gran almacén con
casillas (bytes) a los que se accede mediante una dirección única. Este almacén de datos
es compartido por la CPU y los dispositivos de E/S. El Sistema operativo se encarga
de gestionar este espacio como responsable de:
o Conocer qué partes de la memoria están siendo utilizadas y por quién.
o Decidir qué procesos se cargarán en memoria cuando haya espacio disponible.
o Asignar y reclamar espacio de memoria cuando sea necesario.
Administración de ficheros: gestiona la manera en que la información se almacena en
dispositivos de entrada/salida que permiten el almacenamiento estable.
Gestión de los dispositivos de entrada/salida (driver): parte del sistema operativo que
conoce los detalles específicos de cada dispositivo, lo que permite poder operar con él.
Además, el sistema operativo ofrece:
Lanzador de aplicaciones: permite el lanzamiento de un programa. Esto incluye los
intérpretes de órdenes textuales y los basados en gestores de ventanas.
Llamadas al sistema: conjunto de servicios que los procesos pueden solicitar al sistema
operativo.
18
CONCLUSIÒN.
Los sistemas operativos juegan un gran papel hoy en día dentro de la sociedad
altamente informatizada. Sin ellos no se podría hacer todo lo que se realizar, puesto
que permiten el desarrollo de multitareas por medio de un computador. Aunque esto
hoy en día es tan sencillo, y tan amplio en sus diferentes versiones y tipos de sistemas
operativos (Mac OS, LINUX, Windows), comenzó basándose en una estructura muy
básica que solo permitía la ejecución de una sola tarea. Si quieres saber un poco más,
te invitamos a que leas a continuación.
En el terreno de los ordenadores personales (PCs), los primeros sistemas
operativos más conocidos por el gran público fueron MS-DOS, Linux, IBM OS/2, MS
Windows y el primer Mac OS X: el sistema operativo que lideraría, y sigue liderando,
en los hogares de todo el mundo es Microsoft Windows, que nació en 1985.
Hay que destacar que MS Windows es el sistema operativo que más ha
contribuido al manejo, entendimiento y aprovechamiento de un ordenador por parte de
una persona, ya sea en el desarrollo de su actividad profesional o en una función más
doméstica encaminada al entretenimiento.
No obstante el sistema operativo es el software que gobierna una máquina, el
conjunto de procesos que determinan lo que se ve y lo que se desea haga un dispositivo
con cada acción que realiza el usuario. El sistema operativo es la base sobre la que se
instalan los programas que harán posible que una persona retoque una imagen con
Photoshop, prepare una presentación con Office, escuche música con iTunes, grabe un
DVD con Nero o vea una película con VLC.
El sistema operativo es el responsable de que un dispositivo tecnológicamente
complejo pueda ser una herramienta sencilla en su uso, cumpliendo una utilidad
destacada en la vida diaria de las personas. Los sistemas operativos modernos y más
comunes, como Windows 8 para PCs o Android en Smartphones, son cruciales para
que la sociedad se comunique y pueda aprovechar el mundo digital y el acceso a los
servicios accesibles desde Internet.
Hay que destacar que la constante evolución de estos sistemas de gobierno ha
hecho posible el uso de varias tecnologías integradas en un mismo dispositivo: este es
19
el caso de los teléfonos móviles inteligentes, que son una combinación de reproductor
de música, cámara digital, agenda electrónica, videoconsola, gestor de correo
electrónico y reproductor de video.
En referencia al terreno de la telefonía móvil, la adopción de un sistema
operativo avanzado ha sido especialmente sensible, ya que ha permitido utilizar un
celular con las manos, organizar grandes cantidades de información a través de
las aplicaciones móviles o manejar y compartir archivos. La adopción de Google
Android como sistema operativo ha marcado y multiplicado las ventajas de tener un
teléfono móvil en un bolsillo, no solo como herramiento de comunicación, sino como
útil para acceder a información y al puro entretenimiento personal.
No obstante en telefonía móvil, el sistema operativo ha tenido un papel
críticamente relevante de cara a utilizar estos portables dispositivos electrónicos para
múltiples funciones: por ejemplo una persona puede comprar un teléfono solo debiendo
tener en cuenta las características técnicas del producto. Se ha pasado de sistemas
operativos propietarios, únicos y diseñados por cada marca; a sistemas operativos
estandarizados, que vienen instalados en varias marcas de teléfonos móviles (o
Smartphone). Google Android es el sistema operativo mayoritario en la segunda década
del siglo XXI, que corre bajo las interfaces de usuario adaptadas por marcas como
Samsung, HTC, LG o Huawei.
El sistema operativo hace posible que una persona pueda comunicarse con una
máquina, ya sea utilizando un ratón, tocando sobre una pantalla táctil, presionando un
botón físico o pulsando las teclas de un teclado: y a todas las acciones de un usuario,
la máquina ofrece respuestas visuales, táctiles o sonoras. La importancia del sistema
operativo moderno reside en poder controlar una máquina a través de una interfaz
visual, sin tener grandes conocimientos técnicos, convirtiendo un hardware complejo
en una solución para el hogar o la oficina completamente amigable y accesible a todos
los públicos.
20
REFERENCIA
Felici, S. (s/f). Sistemas operativos. [Documento en Línea].Disponible:
http://informatica.uv.es/it3guia/FT/cap5-ssoo-ft.pdf [Consulta: 2020, noviembre,
10].
Biblioteca de la Universidad de Alicante. (s/f). Sistemas Operativos [Documento en
Línea].Disponible: https://biblioteca.ua.es/es/noticias/2009/e-libro.html [Consulta:
2020, noviembre, 12].
Jaramillo Morales, C. (2015). Compilación Unidad Temática: Sistemas Operativos.
[Documento en Línea].Disponible:
http://www.udla.edu.co/documentos/docs/Programas%20Academicos/Tecnologia
%20en%20Informatica%20y%20sistemas/Compilados/Compilado%20Sistemas%
20Operativos.pdf [Consulta: 2020, noviembre, 10].
Peña Sánchez, J.; Pérez Costoya, F; Pérez Hernández, M.; Robles Forcada, V. y
Rosales García, F.; (2005). Sistemas operativos: Aspectos internos y principios de
diseño. [Documento en Línea]. Disponible:
http://cotana.informatica.edu.bo/downloads/Sistemas%20Operativos.pdf[Consulta
: 2020, noviembre, 12].
Serrano Castaño, F. (s/f). TFC: arquitectura de computadores y sistemas operativos
[Documento en Línea]. Disponible:
http://openaccess.uoc.edu/webapps/o2/bitstream/10609/8179/1/fserranocaTFC061
1.pdf [Consulta: 2020, noviembre, 12].
Roa Banquez, K. (2017).Sistemas Operativos. [Documento en Línea]. Disponible:
https://docplayer.es/131993267-Sistemas-operativos-autor-katherine-roa-
banquez.html [Consulta: 2020, noviembre, 12].
Villarreal, V. (2017). Folleto del Curso de Sistemas Operativos. [Documento en
Línea].Disponible:https://ridda2.utp.ac.pa/bitstream/handle/123456789/5074/folle
to_sistemas_operativos.pdf?sequence=3&isAllowed=y[Consulta: 2020,
noviembre, 12].
21