You are on page 1of 18

FUNDAMENTOS DE SISTEMAS OPERATIVOS

SEMANA 1

Componentes de un
sistema operativo

Todos los derechos de autor son de la exclusiva propiedad de IACC o de los otorgantes de sus licencias. No est
permitido copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposicin del pblico ni
ESTE
LAdeSEMANA
1
utilizarDOCUMENTO
los contenidos paraCONTIENE
fines comerciales
ninguna clase.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

NDICE
COMPONENTES DE UN SISTEMA OPERATIVO..................................................................................... 4
OBJETIVOS ESPECFICOS ........................................................................................................................... 4
INTRODUCCIN ...................................................................................................................................... 4
1.

QUE ES UN SISTEMA OPERATIVO? .................................................................................................... 5

2.

SISTEMAS OPERATIVOS .................................................................................................................... 7


2.1.

HISTORIA DE LOS SISTEMAS OPERATIVOS .......................................................................... 7

2.2.

TIPOS DE SISTEMAS OPERATIVOS ....................................................................................... 8

2.3.

EL SISTEMA OPERATIVO: UN GRAN GESTOR DE RECURSOS ............................................... 9

3.

SISTEMAS OPERATIVOS COMO MAQUINAS VIRTUALES....................................................................... 10

4.

CONCEPTOS FUNDAMENTALES....................................................................................................... 11

5.

ESTRUCTURA DE LOS SISTEMAS OPERATIVOS .................................................................................... 12


5.1.

SISTEMAS OPERATIVOS CON ESTRUCTURA MONOLTICA ................................................ 12

5.2.

SISTEMAS OPERATIVOS BASADOS EN EL KERNEL ............................................................. 12

5.3.

SISTEMAS OPERATIVOS BASADOS EN MICROKERNEL ...................................................... 13

5.4.

ARQUITECTURA DE UNIX................................................................................................... 14

5.5.

ARQUITECTURA DE WINDOWS ......................................................................................... 15

COMENTARIO FINAL.......................................................................................................................... 16
REFERENCIAS........................................................................................................................................ 17

ESTE DOCUMENTO CONTIENE LA SEMANA 1

COMPONENTES DE UN SISTEMA OPERATIVO

OBJETIVOS ESPECFICOS

Reconocer las principales caractersticas de un sistema operativo.

Determinar la importancia de un sistema operativo.

INTRODUCCIN
Un computador tal y como se le conoce hoy se conecta internamente a diversos dispositivos, lo
que lo transforma en una mquina compleja. Si para lograr conectar estos dispositivos cada uno
de los fabricantes tuviera que escribir sus cdigos de conexin para los distintos computadores,
sera un trabajo imposible de sostener, por lo que la mejor forma de estandarizar el mecanismo es
que todos los computadores usen un sistema comn y as los fabricantes solo programan sus
cdigos para dicho sistema. Este sistema es el llamado sistema operativo.
Esta semana se revisar un poco de la historia de los sistemas operativos, reconociendo los inicios
del software y su evolucin hasta el da de hoy. Adems, se abordarn los distintos tipos de
sistemas operativos y sus caractersticas.
Se estudiar, adems, cmo trabajar con sistemas operativos como mquinas virtuales,
identificando sus caractersticas y fortalezas a la hora de utilizarlos. Por ltimo, se repasarn las
distintas estructuras y arquitecturas informticas existentes.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

1. QUE ES UN SISTEMA OPERATIVO?


De acuerdo a lo expresado por Dhamdhere (2008), un sistema operativo posee distintos
significados de acuerdo a los distintos usuarios que lo utilice, y cada una de esas visiones recibe el
nombre de visin abstracta, debido a que enfatiza las caractersticas ms importantes para cada
usuario, sin importar todos los otros aspectos o funcionalidades disponibles.
Por ejemplo:

Para un estudiante universitario o de colegio, un sistema operativo es el software que le


permite tener acceso al conocimiento disponible en internet.

Para un colaborador de una empresa que utiliza un paquete de aplicaciones, un sistema


operativo es el software que hace posible que use cada uno de los paquetes de
aplicaciones que le permiten cumplir con sus labores diarias.

En relacin a los ejemplos anteriores, cada usuario percibe al sistema operativo como el medio
que le ayuda a lograr utilizar las aplicaciones necesarias para cumplir con sus necesidades.
En la siguiente tabla se describen los usos de un sistema operativo, segn las visiones abstractas
(Dhamdhere, 2008, p. 3):
USO
Recopilacin de los requerimientos del sistema

DESCRIPCIN
La visin abstracta del usuario indica los
servicios importantes que un sistema debe
suministrar. Puede usarse un conjunto de
visiones abstractas para integrar una
especificacin de los requerimientos del
sistema.

Diseo del sistema

El uso de las visiones abstractas permite que un


diseador se centre en una parte especfica del
sistema. Los detalles, a pesar de estar
disponibles, se encuentran ocultos, para
facilitar la visin. Este enfoque ayuda a
controlar la complejidad del proceso de diseo.

Implementacin del sistema

La parte cuyos detalles estn ocultos en una


visin de diseo se convierten en un mdulo,
que puede invocarse desde otros mdulos. Este
hecho conduce a una implementacin modular.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

Segn Dhamdhere (2008), desde el punto de vista abstracto, la estructura de un sistema operativo
tiene tres partes principales:
1) El ncleo (kernel) que es el corazn del sistema operativo, llamado as porque controla las
operaciones del computador y proporciona las funciones y los servicios que permiten
utilizar la CPU y los recursos del equipo.
2) Los programas que no pertenecen al kernel. Estos programas no interactan con el
hardware del equipo, sino que utilizan los recursos provistos por los programas de kernel.
3) Los programas de interfaz de usuario, proporcionan una interfaz de lnea de comandos o
interfaz grfica que le permite al usuario interactuar con el sistema para solicitar el uso de
recursos y servicios.
Ubicacin del sistema operativo

Fuente: Tanenbaum (2009, p. 2).

El programa de interfaz de usuario (shell) es el nivel ms bajo del software en modo usuario y
permite la ejecucin de otros programas como el navegador web, correo electrnico,
procesadores de texto, etc. De acuerdo a la figura anterior, el sistema operativo se ejecuta sobre
el hardware y proporciona la base para el funcionamiento de las dems aplicaciones del software.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

2. SISTEMAS OPERATIVOS

2.1. HISTORIA DE LOS SISTEMAS OPERATIVOS


A continuacin se describirn algunos de los hitos ms importantes en la historia de los sistemas
operativos (Tanenbaum, 2009, p. 7):
1974: La empresa Intel (mayor fabricante de circuitos integrados en el mundo) present el
microprocesador 8080 (la primera CPU de 8 bits). Para poder probar su rendimiento, Intel
solicit a Gary Kildall, uno de sus consultores, construir un sistema operativo para este
propsito. Kildall y un amigo construyeron primero un dispositivo controlador para discos
flexibles de 8 pulgadas (que recin haba sido lanzado al mercado) y con eso conectaron el
disco flexible con el 8080, con lo cual produjeron el primer computador con un disco.
Posteriormente, Kildall desarroll un sistema operativo basado en un disco conocido como
CP/M (Control Program for Microcomputers). En 1977, Digital Research (primera empresa
dedicada al desarrollo de softwares para microcomputadores) redise el CP/M para adaptarlo
de manera que se pudiera ejecutar en todos los computadores que utilizaban los chips 8080.
Con el tiempo, se desarrollaron muchos programas de aplicacin para ser ejecutados en CP/M,
lo que le permiti dominar el mercado por 5 aos.
1980: IBM dise la IBM PC y busc un software para ser ejecutado en ella. Se pusieron en
contacto con Bill Gates para obtener una licencia de su intrprete de BASIC. Por ese entonces
Gates se haba enterado de un fabricante de computadores que tena un sistema operativo
llamado DOS (Disk Operating System) y se ofreci a comprarlo, a lo que ellos accedieron. Con
esto Gates vendi a IBM un paquete con DOS/BASIC. Para dicho sistema, IBM solicit
modificaciones, para lo que Gates contrat a Tim Paterson (desarrollador de DOS) como
miembro de Microsoft para hacer las modificaciones. El sistema rediseado cambi su nombre
a MS-DOS (Microsoft Disk Operanting System). La versin inicial de MS-DOS fue muy primitiva,
pero en sus siguientes versiones fue incorporando caractersticas ms avanzadas, muchas de
ellas tomadas de UNIX.
Los primeros sistemas operativos se basaban en que los usuarios escribieran los comandos con el
teclado, pero con el tiempo esto cambi tras la invencin de la GUI (Graphical User Interface o
Interfaz Grfica de Usuario) creada por Doug Engelbart. Por ese entonces, Steve Jobs (coinventor
de Apple) vio el potencial de GUI y emprendi el proyecto de construir un sistema operativo Apple
con una GUI. Este proyecto finalmente fracas por sus costos. Luego de un segundo intento, Jobs
cre la Apple Macintosh mucho ms econmica, dispositivo que fue un xito no solo por su costo,
sino porque era amigable para el usuario.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

Cuando Microsoft decidi crear un sucesor para MS-DOS estaba influenciado por el xito de
Macintosh y cre un sistema basado en una GUI llamado Windows, el que hasta 1995 se ejecutaba
bajo MS-DOS.
Otro importante miembro de los sistemas operativos es UNIX (y sus variantes), software muy
potente en el mbito de los servidores de redes como empresariales, pero que tambin est cada
vez ms presente en los computadores de escritorio. Por ejemplo, todos los Macintosh utilizan
una versin modificada de FreeBSD, sistema operativo derivado de UNIX.
Muchos de los programadores experimentados prefieren una interfaz de lnea de comando que
una GUI, pero casi todos los sistemas UNIX presentan un sistema de ventanas llamado X11 (X
Windows System) producido por el (Massachusetts Institute of Technology) que permite crear,
eliminar, desplazar y cambiar el tamao de las ventanas mediante el uso de un mouse. Con
frecuencia est disponible una GUI como Gnome o KDE, lo que proporciona a UNIX una apariencia
parecida a la Macintosh o Microsoft Windows, para aquellos usuarios de UNIX que lo deseen.

2.2. TIPOS DE SISTEMAS OPERATIVOS


Desde el inicio de los sistemas operativos se han desarrollado una gran variedad, sin embargo no
todos fueron popularmente conocidos o comercializados. A continuacin se describen algunos de
los ms importantes (Tanenbaum, 2009):
Sistemas operativos mainframe: estos sistemas operativos estn orientados hacia el
procesamiento de muchos trabajos a la vez, por lo tanto se requieren muchas operaciones de
Entrada/Salida. Por lo general, ofrecen tres tipos de servicios: procesamiento por lotes,
procesamiento de transacciones y tiempo compartido. Un ejemplo de sistema operativo de
mainframe es el OS/390, descendiente del OS/360.
Sistemas operativos de servidores: se ejecutan en servidores, que son computadores
personales, pero con mayor capacidad, dan servicio a varios usuarios a la vez a travs de una
red y les permiten compartir recursos de hardware y software. Ejemplos de estos sistemas
operativos son Linux Red Hat y Windows Server.
Sistemas operativos de multiprocesadores: son variaciones de los sistemas operativos de
servidores con caractersticas especiales para la comunicacin, conectividad y consistencia. Son
utilizados en sistemas en los cuales se conectan varios computadores conocidos como
multicomputadores o multiprocesadores. Muchos de los sistemas operativos que existen
trabajan con multiprocesadores, por ejemplo Windows y Linux.
Sistemas operativos de computadores personales: su propsito es proporcionar soporte a un
solo usuario y se utilizan principalmente para el procesamiento de texto y acceso a Internet.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

Algunos ejemplos de sistemas operativos de escritorio son Linux Ubuntu, Windows 8 y OS X


Mavericks.
Sistemas operativos de computadoras de bolsillo: estos sistemas operan en dispositivos que
generalmente tienen la habilidad de proporcionar telefona, fotografa digital, captura de video
y acceso a Internet. Algunos de estos sistemas operativos son: Android, Windows Mobile e iOS.
Sistemas operativos integrados (embedded): operan en dispositivos que no son considerados
como computadores, ya que no aceptan softwares instalados por el usuario. Por ejemplo:
hornos de microondas.

2.3. EL SISTEMA OPERATIVO: UN GRAN GESTOR DE RECURSOS


Una de las funciones principales de un sistema operativo es administrar todas las piezas de un
sistema complejo, ordenando y controlando los procesadores, memorias y dispositivos de E/S,
entre los diversos programas que compiten por estos recursos.
Algunos de los sistemas operativos permiten la ejecucin simultnea de varios programas, por lo
que debe imponer el orden de ejecucin para cada uno, evitando que se mezclen sus procesos y
lograr el correcto funcionamiento de ellos.
En una red, es necesario administrar y proteger la memoria de los dispositivos de E/S para que los
procesos no se interfieran entre s. Su principal objetivo es compartir recursos de software y
hardware, es decir, para este contexto, un sistema operativo requiere llevar un registro que
indique cul software est utilizando qu tipo de recursos para otorgar los permisos de acuerdo a
las peticiones.
La administracin de recursos incluye multiplexaje (compartir) de recursos en dos formas: tiempo
y espacio. Cuando un recurso se multiplexa, los distintos softwares y usuarios toman turno para
utilizarlo. La tarea de determinar cmo se multiplexa el recurso en el tiempo, es responsabilidad
del sistema operativo. Por otro lado, est el multiplexaje en el espacio, donde en vez de que los
clientes tomen turnos, cada uno obtiene una parte del recurso.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

3. SISTEMAS OPERATIVOS COMO MAQUINAS VIRTUALES


Una organizacin que desee gestionar distintos servicios (por ejemplo servidor de correo
electrnico, servidor web o servidor FTP) deber considerar mltiples computadores (o servidores)
para sostener el funcionamiento de sus sistemas, esto con la finalidad de optimizar el manejo de
carga, como tambin considerar una red de multicomputadores para estar conectados entre s.
Gestionar estos servicios en equipos distintos es una medida de seguridad que garantiza la
continuidad del negocio, es decir, si uno de ellos falla, no necesariamente se involucran el resto de
los servidores.
Para la necesidad antes descrita, existe una solucin para facilitar la administracin y mantencin
de los servicios, las llamadas mquinas virtuales (virtualizacin). Esta tecnologa permite que un
solo computador contenga varias mquinas virtuales independientes entre s, que incluso pueden
tener distintos sistemas operativos.
Al consolidar todos los servidores de esta forma, existe el riesgo de que si falla el servidor que est
ejecutando las mquinas virtuales, fallan todas ellas. Sin embargo, la razn por la que la
virtualizacin es confiable es que la mayora de las fallas no se deben a problemas de hardware
defectuoso, sino al software, especialmente a los sistemas operativos. Con la tecnologa de
mquinas virtuales, el nico software que se ejecuta en el kernel es el hipervisor, el cual tiene 100
veces menos lneas de cdigo que un sistema operativo y, con eso, 100 veces menos probabilidad
de errores y vulnerabilidades.
Las mquinas virtuales tambin son tiles para los usuarios finales, ya que permite instalar nuevas
aplicaciones para pruebas sin que se interfieran entre s. Por ejemplo: un desarrollador de
software puede construir en su equipo una red de multicomputadores para simular un entorno
especfico, adems puede respaldar dichos entornos para posteriormente mostrar o entregar a sus
clientes.
Las licencias de la mayora de los softwares son por cada CPU, es decir cuando se compra la
licencia de un software, se tiene derecho a ejecutarlo solamente en una CPU. Por esto, algunos de
los distribuidores de software han colocado una clusula en el contrato que declara la no
autorizacin de uso de dicha licencia en una mquina virtual no autorizada.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

10

4. CONCEPTOS FUNDAMENTALES

Fuente: Dhamdhere (2008, p. 28).

De acuerdo al libro Sistemas operativos modernos de Andrew S. Tanenbaum (2009), los conceptos
bsicos de los sistemas operativos son los siguientes:
Procesos: son programas de ejecucin, que tienen asociado un espacio de direcciones y una
lista de ubicaciones de memoria, desde un valor mnimo hasta cierto valor mximo. El espacio
de direcciones contiene el programa ejecutable, sus datos y su pila. Adems, a cada proceso se
le asocia un conjunto de recursos que comnmente incluyen registros. En resumen, un proceso
es un recipiente que guarda toda la informacin necesaria para ejecutar un programa.
Espacios de direcciones: cada computador utiliza cierta memoria para mantener los programas
en ejecucin. En un sistema operativo simple solamente se ejecuta un programa a la vez, por lo
cual para ejecutar un segundo programa es necesario cerrar el primero. Los sistemas
operativos que permiten ejecutar ms de un programa en memoria a la vez, necesitan evitar
que se interfieran entre s por lo que necesitan implementar un mecanismo de proteccin que
debe estar ubicado en el hardware y controlado por el sistema operativo.
Archivos: una de las principales caractersticas de los sistemas operativos es el manejo de
archivos (crearlos, eliminarlos, leerlos y escribir en ellos). El sistema operativo provee un lugar
donde almacenar los archivos, el cual se denomina directorios, que cumple con la funcin de
agrupar los archivos segn la necesidad. Para especificar cada archivo dentro de un directorio,
el sistema proporciona su nombre de ruta, dichos nombres de ruta absolutos marcan la lista de
directorios que deben recorrese para llegar al archivo.
Entrada/Salida: todos los computadores tienen dispositivos fsicos que le permiten adquirir
entradas y producir salidas. Existen muchos tipos de dispositivos de entrada y salida por
ejemplo: teclado, monitor, impresora, etc. Es responsabilidad del sistema operativo administrar
estos dispositivos.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

11

Proteccin: los computadores almacenan gran cantidad de informacin que, en general, suele
ser de vital importancia para su dueo. Esta informacin puede ser de correos electrnicos,
archivos de texto, fotografas, etc. Por esto, es necesario que el sistema operativo administre la
seguridad y confidencialidad de estos.
Shell: el sistema operativo es el cdigo que lleva a cabo las llamadas del sistema. Los editores,
compiladores, ensambladores, enlazadores e intrpretes de comandos no forman parte del
sistema operativo, aun cuando son importantes y tiles. Por ejemplo, el intrprete de
comandos de UNIX conocido como shell (sh), aunque no forma parte del sistema operativo,
utiliza caractersticas del mismo y es la interfaz principal entre el usuario y el sistema operativo.

5. ESTRUCTURA DE LOS SISTEMAS OPERATIVOS

5.1. SISTEMAS OPERATIVOS CON ESTRUCTURA MONOLTICA


Los primeros sistemas operativos tenan una estructura monoltica, es decir que el cdigo del
sistema operativo no consista en un conjunto de mdulos con interfaces, sino que estaba
compuesto solamente por un mdulo (Dhamdhere, 2008).
Sistema operativo monoltico

Fuente: Dhamdhere (2008, p. 603).

5.2. SISTEMAS OPERATIVOS BASADOS EN EL KERNEL


El kernel proporciona un conjunto de funciones y servicios para apoyar las funcionalidades del
sistema operativo. El resto del sistema est organizado como un conjunto de programas que
implementan operaciones en procesos y recursos para los usuarios. La operacin del kernel es

ESTE DOCUMENTO CONTIENE LA SEMANA 1

12

invocada por interrupciones, es decir, que obtiene control cuando una interrupcin sealiza la
ocurrencia de un evento que requiere la atencin del sistema operativo (Dhamdhere, 2008).
Visin abstracta de un sistema operativo basado en kernel

Fuente: Dhamdhere (2008, p. 610).

5.3. SISTEMAS OPERATIVOS BASADOS EN MICROKERNEL


De acuerdo a Dhamdhere (2008) la estrategia de colocar el cdigo dependiente de la arquitectura
del kernel, proporciona una buena portabilidad, sin embargo, el kernel tambin incluye cdigo
independiente de la arquitectura. Esta caracterstica tiene como desventaja que requiere un
kernel de gran tamao lo que elimina la ventaja de portabilidad.
El microkernel fue desarrollado en los 90 con la finalidad de superar las desventajas de
portabilidad, extensibilidad y confiabilidad. Un microkernel es una parte central del cdigo del
sistema operativo, por lo cual, contiene un subconjunto de mecanismos que normalmente estn
incluidos en un kernel y admite solamente un pequeo nmero de llamadas al sistema. Esta
caracterstica es la que aumenta la portabilidad y confiabilidad del microkernel.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

13

Estructura de sistemas operativos basados en microkernel

Fuente: Dhamdhere (2008, p. 613).

5.4. ARQUITECTURA DE UNIX


UNIX es un sistema operativo basado en kernel que consiste en dos componentes: la
administracin de procesos y la administracin de archivos. Estos componentes son activados
mediante interrupciones declaradas en el hardware y llamadas al sistema hechas por programas
no kernel del sistema operativo (Dhamdhere, 2008).
Kernel del sistema operativo UNIX

Fuente: Dhamdhere (2008, p. 616).

ESTE DOCUMENTO CONTIENE LA SEMANA 1

14

5.5. ARQUITECTURA DE WINDOWS


La capa de abstraccin de hardware (HAL) se comunica con el hardware y proporciona
abstracciones de las interfaces de E/S, controladores de interrupciones y mecanismos de
comunicacin entre procesadores en un sistema multiprocesador. El kernel usa las abstracciones
proporcionadas por HAL para ofrecer servicios bsicos, como el procesamiento de interrupciones y
la sincronizacin de multiprocesadores. Con esto, el kernel queda protegido de las arquitecturas
especficas, lo que le da una gran ventaja de portabilidad.
Arquitectura de Windows

Fuente: Dhamdhere (2008, p. 618).

ESTE DOCUMENTO CONTIENE LA SEMANA 1

15

COMENTARIO FINAL
Saber identificar los distintos sistemas operativos, reconociendo sus componentes, partes y
arquitectura es fundamental para un profesional de la informtica. Adems como cultura general
es bueno saber el comienzo de los sistemas operativos y como ha sido su avance durante los aos.
Tambin es necesario que un profesional de la TI entienda y sepa exponer, en caso de ser
necesario, la arquitectura de UNIX y Windows. Estos sistemas operativos estn hoy en da
disponibles en la mayora de las empresas o fbricas.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

16

REFERENCIAS
Dhamdhere, D. (2008). Sistemas operativos. Mxico: McGraw-Hill.

Matthews, M. (2009). Windows Server 2008. Gua para el administrador. Mxico: McGraw-Hill.

Petersen, R. (2009). Manual de referencia Linux. Mxico: McGraw-Hill.

Ruest, D. y Ruest, N. (2009). Manual de referencia Microsoft Windows Server 2008. Espaa:
McGraw-Hill.

Tanenbaum, A. (2009). Sistemas operativos modernos. Mxico: Pearson.

PARA REFERENCIAR ESTE DOCUMENTO, CONSIDERE:


IACC (2014). Componentes de un sistema operativo. Fundamentos de Sistemas Operativos.
Semana 1.

ESTE DOCUMENTO CONTIENE LA SEMANA 1

17

ESTE DOCUMENTO CONTIENE LA SEMANA 1

18

You might also like