Enfoque general a los sistemas operativos

32
ENFOQUE HIST ´ ORICO Y TE ´ ORICO DE LOS SISTEMAS OPERATIVOS. Andr´ es Camilo Santacruz Borda. UNIVERSIDAD ANTONIO NARI ˜ NO FACULTAD DE INGENIER ´ IA DE SISTEMAS Y COMPUTACI ´ ON ARQUITECTURA DE COMPUTADORES BOGOT ´ A D.C. 28 OCTUBRE 2015

description

Enfoque general a los sistemas operativos

Transcript of Enfoque general a los sistemas operativos

Page 1: Enfoque general a los sistemas operativos

ENFOQUE HISTORICO Y TEORICO DE LOS SISTEMASOPERATIVOS.

Andres Camilo Santacruz Borda.

UNIVERSIDAD ANTONIO NARINO

FACULTAD DE INGENIERIA DE SISTEMAS Y COMPUTACION

ARQUITECTURA DE COMPUTADORES

BOGOTA D.C.

28 OCTUBRE 2015

Page 2: Enfoque general a los sistemas operativos

ENFOQUE HISTORICO Y TEORICO DE LOS SISTEMASOPERATIVOS.

Autor: Andres Camilo Santacruz Borda.

Cod 11161228391

[email protected]

Tercer parcial

Presentado a: Ing. Luis Fernando Montilla Trespalacios

UNIVERSIDAD ANTONIO NARINO

FACULTAD DE INGENIERIA DE SISTEMAS Y COMPUTACION

ARQUITECTURA DE COMPUTADORES

BOGOTA D.C.

28 OCTUBRE 2015

Page 3: Enfoque general a los sistemas operativos

TABLA DE CONTENIDOS

1. OBJETIVOS 3

1.1. Objetivo general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2. Objetivos especıficos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2. INTRODUCCION 4

3. HISTORIA Y DESARROLLO DE LOS SISTEMAS OPERATIVOS. 5

4. TIPOS DE SISTEMAS OPERATIVOS. 7

4.1. Administracion de Tareas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4.1.1. SO Monotarea. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

4.1.2. SO Multitarea. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

4.2. Administracion de Usuarios. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.2.1. SO Monousuario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4.2.2. SO Multiusuario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4.3. Tipo de dispositivo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4.3.1. Super computadoras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.3.2. Servidores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.3.3. Computadoras Personales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.3.4. Dispositivos de bolsillo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.3.5. Dispositivos Integrados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.4. Numero de procesadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5. SERVICIOS Y PRINCIPIOS FUNCIONALES DE LOS SISTEMAS OPERA-

TIVOS 15

1

Page 4: Enfoque general a los sistemas operativos

6. FUNCIONES DE UN SISTEMA OPERATIVO 18

6.1. Gestion de procesos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

6.2. Gestion de memoria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.3. Gestion de archivos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

7. PLANIFICACION DE PROCESOS EN SISTEMAS OPERATIVOS 22

8. SISTEMAS OPERATIVOS ACTUALES. 24

8.1. LINUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

8.1.1. UBUNTU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

8.1.2. WINDOWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

8.1.3. Windows Vs Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

9. Conclusion. 27

2

Page 5: Enfoque general a los sistemas operativos

1. OBJETIVOS

1.1. Objetivo general.

Realizar un breve recorrido historico de los SO. Posteriormente abordar topicos referentes al fun-

cionamiento, tipos, ventajas y desventajas. Se considera necesario tambien, abordar una sencilla

comparacion entre los SO Windows y Linux.

1.2. Objetivos especıficos.

Realizar una investigacion que de apertura conceptual a los sistemas operativos.

Deducir o concluir los enfoques y tendencias actuales en cuanto a desarrollo e implementacion

de Sistemas operativos.

Establecer o aterrizar conceptos referentes al funcionamiento externo e interno de un sistema

Operativo.

3

Page 6: Enfoque general a los sistemas operativos

2. INTRODUCCION

Los sistemas operativos son un soporte logico que permite la interaccion hombre maquina; es

decir, el medio que hace usable un conjunto de piezas y/o dispositivos fısicos conocidos como

Hardware (Abreviado de ahora en adelante como HW). Las distintas funciones o tareas de un

sistema operativo son encapsulales en los siguientes 3 grupos: Administrar, Coordinar y Organizar.

Ası mismo, los sistemas operativos son clasificables en funcion de las prestaciones que brindan. Los

cuatro tipos de sistemas operativos son:

Multitramo.

Multiprocesador.

Multitarea.

Tiempo Real.

Los SO actuales permiten sobre ellos, el funcionamiento y ejecucion de otros programas a los que

se les conoce como aplicaciones; es importante anotar que la eleccion de dicho SO determina en

gran medida el tipo de aplicaciones que se pueden o no usar.

En el presente documento se realizara el recorrido historico de los sistemas operativos a fin de

brindar al lector una breve guıa acerca del tema en cuestion. Posteriormente se abordaran de

forma mas detallada topicos referentes al funcionamiento, tipos, objetivos, caracterısticas, ventajas

y desventajas.

Como ayuda extra, al final se encuentra un glosario tecnico que explica de forma sencilla y general

cada concepto allı contenido. Esto se realiza para para facilitar la comprension de aquellos lectores

que no dominan la terminologıa empleada.

4

Page 7: Enfoque general a los sistemas operativos

3. HISTORIA Y DESARROLLO DE LOS SISTEMAS

OPERATIVOS.

Los Sistemas Operativos, al igual que el HW de los computadores, han sufrido una serie de cambios

llamados generaciones. Como gran parte de los avances tecnologicos de los cuales hoy se hace uso

continuo y se les considera imprescindibles, los SO y en general la informatica actual son productos

de la guerra, en este caso la Segunda Guerra Mundial.

Para ese entonces (1940), se tenıa a la generacion cero. En dicha generacion, el concepto de SO

aun no se usaba, sin embargo las plataformas mediante las cuales los usuarios interactuaban con

las maquinas (En este caso maquina es sinonimo de computador) lo eran. En estos primeros SO

las instrucciones se codificaban a mano, lo que provocaba que solo personas capacitadas en el

area, fueran capaces de interactuar con las maquinas haciendo uso directo del lenguaje maquina

(Binario).

En los anos 50’s el procesamiento por lotes dio apertura a lo que se conocerıa como la primera

generacion de SO. El procesamiento por lotes es un mecanismo para la ejecucion de tareas en

donde cada instruccion o tarea es agrupada en un lote que esta a la espera de su procesamiento.

Es decir, que en este mecanismo, cuando una instruccion se estaba ejecutando, todos los recursos

de la maquina funcionaban en torno a ella y solamente cuando se terminaba dicha ejecucion, los

recursos volvıan a ser controlados por el SO o la siguiente instruccion a ejecutar.

Paralelamente la aparicion de las tarjetas perforadas dio lugar a una mejora notable en el ren-

dimiento del procesamiento de la informacion y el desarrollo de programas que realizaban tareas

especıficas como sumar o restar.

Finalmente la creacion el transistor dio paso al desarrollo de computadores mas potentes y de

menor tamano que demandaban a su vez SO mas capaces y robustos; segunda generacion.

Los SO de esta generacion, destacan en contraposicion a las generaciones anteriores por la per-

mision de multiprocesamiento y multiprogramacion. En los sistemas con multiprocesamiento y

multiprogramacion varios programas de usuario se encuentran almacenados al tiempo en la memo-

ria principal logrando que los procesadores cambien de una tarea a otra sin necesidad de esperar

grandes intervalos de tiempo. Para ese entonces, no existıan los procesadores multinucleo lo que

obligaba a usar multiples procesadores en un mismo sistema computacional.

La aparicion de sistemas compartidos es causada por la demanda de productividad y fluidez. En

un sistema de este tipo, varias terminales son conectadas a la maquina, asignandosele a cada una

de ella uno mas procesos especıficos. El encargado de garantizar la comunicacion entre terminales

era el sistema operativo.

5

Page 8: Enfoque general a los sistemas operativos

La transicion entre los SO de segunda y tercera generacion hace referencia al desarrollo de maquinas

para usos generales. Dichos computadores soportaban simultaneamente procesos por lotes, tiempo

compartido, procesamiento de tiempo real y multiprocesamiento lo que hizo que se tornaran mas

complejos para el usuario.

Finalmente se tiene a la cuarta generacion de SO. Los sistemas de la cuarta generacion constituyen

el estado actual de la tecnologıa. Los computadores dejan de ser un lujo del Gobierno y las grandes

universidades pasando a ser maquinas al servicio de la gente del comun. Este cambio de paradigma

se debe a la minimizacion constante del tamano y consumo de los computadores. Como se nombro

anteriormente, los sistemas operativos solo eran administrados o usados per personas capacitadas

para ello, sin embargo ahora se hizo necesario el desarrollo de sistemas mas intuitivos y generales

que permitieran la interaccion fluida entre la maquina y personan sin conocimiento avanzados en

sistemas computacionales.

En resumen, para la generacion actual de SO la prioridad es el desarrollo de plataformas sencillas y

de facil uso que permitan que usuarios de cualquier nivel (basico, medio, avanzado) puedan realizar

cualquier tipo de tarea computacional sin mayos dificultad.

A causa de tal cambio de paradigma, empiezan a nacer empresas como Microsoft, Apple o Unix.

Cada una de ellas entendio la importancia del Software (Sw) sobre el HW lanzando asi al mercado

SO con distintos enfoques. Un recuento de dichos sistemas operativos sera realizado en un capitulo

posterior.

6

Page 9: Enfoque general a los sistemas operativos

4. TIPOS DE SISTEMAS OPERATIVOS.

Los sistemas operativos, sin importar el fabricante, son clasificables con base en una de sus tareas

mas importantes; la administracion. Paralelamente, los SO tambien son clasificables de acuerdo

al numero de procesadores y tipo de terminal o dispositivo usado. Entonces, se tiene la siguiente

clasificacion:

1. Administracion de Tareas:

Monotarea

Multitarea

2. Administracion de Usuarios:

Monousuario

Multiusuario

3. Tipo de dispositivo:

Super computadoras

Servidores

Computadoras Personales

Dispositivos de bolsillo

Dispositivos Integrados

4. Numero de procesadores:

Monoprocesador

Multiprocesador

4.1. Administracion de Tareas.

En informatica y ciencias de la computacion, el concepto de tarea es equivalente a proceso y un

proceso puede entenderse informalmente como una actividad en donde un bloque de instrucciones

es ejecutado. Para dicha actividad siempre habra asociado un conjunto Q de estados alcanzables

{q0, q1, q2...qn} en donde qa es el estado actual y qf el estado final. El conjunto de recursos del

sistema W es primordial para la ejecucion de dicho bloque de instrucciones.

En este orden de ideas, existen sistemas operativos que permiten o no la ejecucion de multiples

tareas en un instante de tiempo t. Dichos sistemas operativos se conocen como Multitareas o

Monotareas respectivamente.

7

Page 10: Enfoque general a los sistemas operativos

4.1.1. SO Monotarea.

Un SO Monotarea, como se dijo anteriormente, solo es capaz de ejecutar una instruccion a la vez.

Esta peculiar caracterıstica afecta directamente el rendimiento de la maquina y la productividad

del usuario, ya que ejecutando tareas de una en una, el tiempo de procesamiento de un bloque

completo de tareas es mayor en comparacion al empleado en una maquina que ejecute un SO

multitarea.

En la actualidad este tipo de sistemas operativos no son muy usados por los usuarios finales, por

el contrario, hacen parte fundamental de SO mas robustos como Windows 8 y Ubuntu.

Figura 1: Ejemplo de SO Monotarea: DOS de Windows.

En la anterior figura se muestra a DOS. DOS es un SO monotarea que hace de interprete de

comandos en los SO comerciales de Microsoft. Dicho sistema, solo permite la ejecucion de un

comando en un instante de tiempo t. Es decir, en el caso particular se ejecuta el comando de

limpieza del *tmp /s /f . Si ademas de ello se quisiera realizar un examen logico del disco duro

usando el comando chkdsk es inevitable tener que esperar que la primera instruccion de limpieza

se ejecute en totalidad.

4.1.2. SO Multitarea.

Contrario al modo en que funcionan los SO Monotareas, en los SO Multitareas es posible ejecutar

mas de un proceso en el mismo instante de tiempo t; es decir, que si por ejemplo se tuvieran en

8

Page 11: Enfoque general a los sistemas operativos

un SO Multitarea dado dos bloque de instrucciones A y B, serıa posible ejecutar paralelamente n

instrucciones pertenecientes a A ∪B.

Este tipo de SO es el mas comun en la actualidad o por lo menos en contextos generales como

hogares y oficinas. Ejemplos evidentes de SO Multitarea son las versiones de Windows lanzadas a

partir de Windows NT.

Figura 2: Ejemplo de SO Multitarea: Windows 10.

4.2. Administracion de Usuarios.

Para la Informatica, un usuario se define como un conjunto de dispositivos, permisos o recursos a

los cuales se puede tener acceso. Siendo mas generales, puede decirse que un usuario puede ser una

persona, un programa, una maquina o incluso una instruccion.

En este caso, definiendo al usuario como persona, es posible realizar una clasificacion de los mismos:

Invitado.

Registrados.

Administradores.

9

Page 12: Enfoque general a los sistemas operativos

Cada tipo de usuario posee permisos especıficos en un SO. Por ejemplo, un invitado solo puede

leer, un registrado leer y escribir y un administrador, leer , escribir, y modificar configuraciones del

sistema.

Ya entendido el concepto de usuario, es posible explicar los dos tipos de sistemas operativos refe-

rentes a este inciso.

4.2.1. SO Monousuario.

Los SO Monousuario solo admiten a un usuario, es decir que solo una persona puede tener acceso a

los recursos fısicos y logicos de la computadora. Esta caracterıstica es totalmente independiente de

factores como en numero de tareas ejecutables en un instante de tiempo determinado o la cantidad

de procesadores con los que cuente la maquina.

Es importante aclarar que es diferente la permision de un sistema determinado en cuanto a con-

figuracion de varios usuarios y la utilizacion de los recursos del sistema por dichos usuarios en el

mismo instante de tiempo.

Ejemplos de SO Monousuario son:

Windows Xp

Windows 7

Ubuntu 14.0

4.2.2. SO Multiusuario.

En los SO Multiusuario existe una permision de acceso multiple. De igual forma los recursos logicos

y fısicos se ponen a disposicion de todos los usuarios que estan conectados al sistema. Este tipo de

plataformas son comunes en contextos mus especıficos, contextos como el industrial y cientıfico.

En los SO Multiusuario existe una permision de acceso multiple por parte del SO. De igual forma

los recursos logicos y fısicos se ponen a disposicion de todos los usuarios que estan conectados al

sistema. Este tipo de plataformas son comunes en contextos mus especıficos, contextos como el

industrial y cientıfico.

La permision de acceso multiple se logra principalmente gracias a dos metodos: la interconexion

de una o mas terminales a un computador especifico y el acceso remoto a traves de herramientas

como VNC y Team Viewer.

10

Page 13: Enfoque general a los sistemas operativos

Los recursos que se comparten en un sistema de este tipo son:

Memoria.

Almacenamiento secundario.

Procesador.

Perifericos.

Programas.

El ejemplo tıpico de SO Multiusuario es Windows Server.

Figura 3: Ejemplo de SO Multiusuario: Windows Server.

4.3. Tipo de dispositivo.

Los sistemas operativos tambien son clasificables en funcion del tipo de dispositivo en el que seran

ejecutados. Las prestaciones entre uno y otro dependen del objetivo del dispositivo. Es decir, que

si el dispositivo es una super computadora el SO debe ser robusto y permitir multiprocesamiento

y multiple acceso.

11

Page 14: Enfoque general a los sistemas operativos

4.3.1. Super computadoras

Los SO operativos disenados para Supercomputadoras estan orientados al procesamiento por lotes,

multiple acceso en tiempo compartido y transacciones. Procesamiento por lotes, para este caso

particular debe entenderse como la capacidad de procesamiento sin la intervencion de usuarios.

Por otra parte, multiple acceso en tiempo compartido hace referencia a la ejecucion de un trabajo

por mas de un usuario en el mismo instante de tiempo. Finalmente, transacciones hace referencia

a peticiones de poco tamano.

4.3.2. Servidores

Los SO para servidores deben ser capaces de brindar cualquier tipo de servicio a traves de una

red. Deben ser capaces de gestionar por si solos procesos determinados como copias de seguridad y

ejecucion de planes de contingencia ante posibles eventualidades indeseadas. Durante muchos anos,

el mercado de SO para servidores fue dominado por Microsoft, sin embargo debido a sus notorias

desventajas de rendimiento, ha sido reemplazado paulatinamente por sistemas o distribuciones de

Linux.

4.3.3. Computadoras Personales

Los SO para computadoras personales son los menos robustos. Sin embargo, deben garantizar un

buen rendimiento al momento de ejecutar taras generales como navegacion Web y ediciones de

texto. Ente los SO de este tipo, los mas conocidos son:

Windows 7 - Microsoft

Windows 8 - Microsoft

Windows 10 - Microsoft

Ubuntu - Linux

Debıan - Linux

OS X – Apple

12

Page 15: Enfoque general a los sistemas operativos

Figura 4: Ejemplo de SO para Computadoras Personales: Ubuntu.

4.3.4. Dispositivos de bolsillo

Los sistemas operativos para dispositivos de bolsillo cada dıa son mas versatiles a causa del continuo

cambio de dichos elementos. A pesar de que las plataformas en las cuales son instalados, tienen

recursos fısicos limitados en comparacion a otro tipo de dispositivos, dichos SO brindan al usuario

prestaciones similares, por no decir iguales a las de un equipo personal. Ademas de ello el plus es la

portabilidad del sistema. Entre los mas conocidos SO para dispositivos de bolsillos, se encuentran

Android, Windows Mobile, y IOS de Apple.

4.3.5. Dispositivos Integrados

A los SO de dispositivos integrados tambien se les conoce como Sistemas Embebidos o integrados.

Generalmente son mucho mas simples que los SO anteriormente nombrados y estan disenados para

ejercer tareas muy especıficas. Un ejemplo de Sistema Embebido es WxWorks. WxWorks controla

los elementos electronicos de los automoviles.

13

Page 16: Enfoque general a los sistemas operativos

4.4. Numero de procesadores.

Por ultimo, se tiene la clasificacion segun el numero de procesadores que es capaz de admitir el SO.

Esta clasificacion es muy sencilla y no requiere mayor atencion. Un SO de tipo monoprocesador

es aquel que solo puede ejecutarse en una maquina con una unica CPU. Por el contrario, los SO

Multiprocesadores se pueden ejecutar en maquinas con un numero de CPU mayor a uno.

14

Page 17: Enfoque general a los sistemas operativos

5. SERVICIOS Y PRINCIPIOS FUNCIONALES DE LOS

SISTEMAS OPERATIVOS

Los sistemas operativos, aparte de administrar, organizar y coordinar, brindan y/o proporcionan los

servicios necesarios para la correcta ejecucion de instrucciones. La clasificacion de dichos servicios

se realiza en funcion de su objetivo:

Tareas de programacion.

Administracion de recursos (Compartir)

A continuacion se ilustra un cuadro comparativo entre ambos tipos de servicios.

Cuadro 1: Cuadro comparativo entre tipos de servicios.

Tareas de programacion.Administracion de recursos.

(Compartir)Ejecucion de programas.

(Carga, Ejecucion,Finalizacion).

Asignacion de recursos.

Operacionesde Entrada y Salida.

Contabilidad.(Numero de recursos yusuarios conectados)

Administracion delSistema de ficheros

(Leer, Escribir y Borrar)

Proteccion y controldel uso de informacion.

Deteccion de errores. -

El usuario puede acceder a los servicios del SO a traves de dos metodos:

Llamadas al sistema

Programas del sistema

Ya entendido, que hay una gran cantidad de servicios asociados a una accion concreta, es posible

describir la forma en que el SO realiza todas sus acciones.

Entiendase a los SSOO como programas guiados por acciones. Un programa guiado por acciones

esta a la espera de un suceso s. Cuando se tienen dichos sucesos, estos son senalados por medio de

interrupciones. Entonces, en un sistema operativo existen distintos tipos de interrupciones:

1. Interrupciones de Entrada y Salida: En gran medida, los eventos que cualquier SO operativo

debe controlar son las interrupciones de E/S. Un dispositivo de entrada y salida puede generar

interrupciones al momento de finalizar una peticion del mismo tipo.

15

Page 18: Enfoque general a los sistemas operativos

Cuando se ha dado inicio a una operacion de E/S pueden suceder dos cosas, que se tenga que

esperar la finalizacion de E/S a fin de devolver el control al programa de usuario o devolver

el control al dicho programa sin esperar que termine E/S.

Para el primer caso, dicha espera puede realizarse de dos formas, la detencion de la CPU

hasta la siguiente interrupcion o la creacion de un bucle que espera la aparicion de dicha

interrupcion.

2. Excepciones: Cuando se da lugar a un error de programa, el SO se ve en la obligacion de finali-

zar de forma abrupta y anormal, imprimiendo en pantalla el mensaje de error correspondiente

y entregando el control a la unidad correspondiente.

3. Llamadas de usuario: Cuando ocurre una llamada al sistema, es necesario generar una in-

terrupcion en la CPU, dicha interrupcion para el programa de usuario. Lo que se busca es

extender el control al SO. Todas las llamadas cuentan con un fragmento de codigo particular

que busca realizar la accion correspondiente.

Finalmente, el soporte estructural de un SO esta representado por la siguiente figura:

Figura 5: Estructura de un SO.

La ( extended machine) es el resultante de agregar a las instrucciones de la bare machine dichas

instrucciones especiales. Toda esta informacion se encuentra en el nucleo del SO por lo que evi-

dentemente cada capa posterior al nucleo puede hacer uso de ella. La capa de gestion de memoria

es la encargada de realizar operaciones de liberacion, asignacion y control de memoria. La capa

de E/S permite la interaccion entre procesos y dispositivos. El sistema de ficheros permite que las

16

Page 19: Enfoque general a los sistemas operativos

operaciones de E/S con los diferentes dicos de almacenamiento, puedan realizarse. Finalmente, se

encuentra el usuario, quien interactua con la maquina a traves de un interprete de comandos.

17

Page 20: Enfoque general a los sistemas operativos

6. FUNCIONES DE UN SISTEMA OPERATIVO

Como se dijo anteriormente, las funciones de los sistemas operativos son Administrar, Coordinar

y organizar. Sin embargo es posible profundizar mas y definir las siguientes:

Gestion de procesos.

Gestion de memoria.

Gestion de archivos.

6.1. Gestion de procesos.

A sabiendas de que los programas son un conjunto de datos almacenados en un disco de almace-

namiento cuya funcionalidad es nula por si solos se puede decir que los procesos pueden crearse

de varias formas. Cuando es iniciado el SO este ejecutan paralelamente procesos necesarios para

llevar a cabo distintas tareas requeridas para el arranque de la maquina. Otra forma para crear

procesos es la digitacion e algun comando o la seleccion de algun icono en la Interfaz del SO.

Ası como existen formas de crear procesos, los SO tambien cuentan con formas de eliminar o cerrar

dichos procesos. En primer lugar, se tiene la ejecucion normal del proceso, errores en la ejecucion

y peticiones del usuario a traves de comandos o iconos.

Cuando un proceso se ejecuta, el SO le asigna un espacio y lo agrega a una matriz conocida

como tabla de procesos. Esta tabla contiene datos de cada uno de los procesos en ejecucion. A

continuacion se nombran los campos de la tabla:

Identificacion de procesos: Codigo para identificar los procesos de forma unica = PID (Process

ID).

Informacion del estado del proceso: Preparado, bloqueado o en ejecucion.

Direccion de memoria: Espacio de memoria en donde esta almacenado o cargado el proceso.

Directorio de trabajo: Direcctorio de usuario que esta ejecutando el programa o aplicacion.

Tiempo de procesamiento: Tiempo que ha empleado la CPU para ejecutar dicho proceso.

18

Page 21: Enfoque general a los sistemas operativos

6.2. Gestion de memoria.

El SO tambien gestiona la memoria principal por medio del administrador de memoria. La principal

funcion es llevar un registro de los espacios de memoria que estan siendo o no usados, asignar

espacios de memoria no usados y liberar espacios que estan siendo usados por procesos finalizados.

Algunos de los metodos usados actualmente para la gestion de memoria se relacionan a continua-

cion:

1. En los sistemas operativos monotarea, la memoria es dividida en dos partes. La primera parte

esta asignada unicamente al SO y la segunda parte a los diferentes procesos que pueden tener

lugar en el uso de la maquina. Es importante garantizar la proteccion y el no acceso al espacio

de memoria destinado al SO.

2. El segundo metodo esta destinado a SO multitarea. A cada programa o proceso en ejecucion

se le asigna un espacio de memoria denominado particion. Existen tambien, dos registros

encargados de proteger las asignaciones de espacios. El registro base se cara con la direccion

fısica asociada al inicio del programa y el registro limite carga la longitud total de dicho

programa.

3. La tercera tecnica es conocida como intercambio o swapping. Esa tecnica consiste en inter-

cambiar los procesos entre la memoria principal y los dispositivos de almacenamiento auxiliar.

Hay que garantizar que dicho intercambio sea rapido ya que si no lo es el rendimiento de la

maquina se vera directamente afectado.

4. La paginacion conjunto a la segmentacion hace parte de la cuarta tecnica. Esta tecnica con-

siste en ubicar los programas en forma no contigua. Para este tipo de ubicacion es necesario

garantizar una cantidad de memoria libre mayor o igual a la necesitada. Generalmente pa-

ra realizar paginacion, se hace necesario el uso de HW dedicado a traducir directorios. La

traduccion del numero de pagina o segmento es realizado en una tabla de paginacion.

5. La tecnica mas general para la gestion t de memoria es la memoria virtual. Permite la

ejecucion de programas que no esten almacenados totalmente en memoria. Esta tecnica es

usada en SO multitarea. El SO debe encararse de la ejecucion correcta y exitosa de todos los

procesos.

6.3. Gestion de archivos.

La memoria usada por el SO tiene limitaciones en cuanto a volatilidad de datos y poco espacio

de almacenamiento. La solucion a estos inconvenientes es el uso de dispositivos no volatiles como

19

Page 22: Enfoque general a los sistemas operativos

Discos Duros y discos opticos. El almacenamiento de la informacion se realiza a traves de ficheros

o archivos. Recordando, un archivo es un conjunto de datos almacenados en dispositivos (POR

EJEMPLO, IMAGENES). El sistema de archivos es el medio por el cual el SO gestiona los archivos.

Dos de las caracterısticas de los sistemas de archivos son:

Cada SO utiliza su propio sistema de archivos.

Un SO con un sistema de archivos determinado, no tiene por que leer otro sistema de archivos

distinto

Los archivos tienen un nombre y una extension. El nombre es para identificarlo y la extension

especifica el tipo de archivo.

Cuadro 2: Ejemplo y descripcion de algunos sistemas de archivos.Extension Significado.

.doc Archivos creados en Word.gif Formato grafico WEB

.html Formato del lenguaje de marcado usado en diseno WEB.jpeg Formato grafico comprimido.mp3 Formato de audio digital comprimido.txt Formato para archivos de texto plano.zip Formato de compresion

Los directorios o caretas pueden ser de dos tipos: jerarquicos y de un solo nivel. En los directorios

jerarquicos, un directorio principal contiene a otros directorios tambien jerarquicos o de un nivel.

Los directorios de un nivel contienen unicamente archivos.

Cuadro 3: Sistema de archivos de WindowsSistema de archivos Descripcion

FAT - 16

File Allocation table,,es usadopor Windows 95 y 98.

La norma para losnombres y extensiones

de los archivos es de 8 y 3 letras respectivamente.

FAT - 32

Usado en,Windows NT, 2000, XP yVista.

La norma para los nombres de losarchivos es de 255 letras. Permite archivos con tamano inferior a 4Gb.

NTFSNew Technology file System.,Usado

en Windows XP, Vista, 7, 8, 8.1 Y 10.,Permitearchivos con tamanos superiores a 4Gb.

20

Page 23: Enfoque general a los sistemas operativos

Cuadro 4: Sistema de archivos de LinuxSistema de archivos Descripcion

ext2Second Extended filesystem. Permite particiones de

hasta 4Tb y archivos,de hasta 2Gb.Nombres desde archivos con un maximo de 255 letras

ext3

Third extended filesystem. Modificacion de ext2.Permite,hacer un

registro diariode las modificaciones

realizadas en el sistema de archivos.

21

Page 24: Enfoque general a los sistemas operativos

7. PLANIFICACION DE PROCESOS EN SISTEMAS

OPERATIVOS

La planificacion de procesos en los SO es un conjunto de mecanismos o tecnicas ejecutados a traves

de un modulo conocido como planificador. Este modulo se encarga de dar prioridad a algunos

procesos que requieren mayor atencion. Un punto de enfoque que no debe perder el planificador es

el aprovechamiento maximo de los recursos fısicos y logicos del sistema.

La planificacion de procesos tiene 5 objetivos fundamentales:

Rendimiento.

Equidad.

Tiempo de regreso.

Eficacia.

Tiempo de respuesta.

La equidad hace referencia a que todos los procesos, sin importar su grado de prioridad, deben

ser ejecutados. El rendimiento se enfoca en maximizar la cantidad de procesos ejecutados en un

intervalo de tiempo t[i, j]. La eficacia se encarga de garantizar el uso continuo de la CPU; es decir

esta no debe dejar de funcionar en ningun momento. El tiempo de regreso busca minimizar el tiempo

en que se demora el usuario en obtener los resultados de la ejecucion de un proceso determinado.

Por ultimo, de forma muy parecida al tiempo de regreso, el tiempo de respuesta intenta minimizar

el tiempo en que tarda la maquina en atender la solicitud de un usuario.

Existen diversos algoritmos usados para la planificacion de procesos.

1. Primero en llegar primero en ser servido: Se asigna lugares a los procesos en orden de llegada,

por tal motivo en ese mismo orden se ejecutan.

2. Round Robin: A cada proceso se le asigna un tiempo de ejecucion t. t es el mismo para

todos los procesos. Si un proceso no logra ser ejecutado en su totalidad, se terminara dicha

ejecucion cuando el resto de procesos terminen su ejecucion en t.

3. Prioridad al mas corto: . A cada proceso se le asigna el tiempo que usara cuando vuelva a

estar en ejecucion, y se ira ejecutando el que tenga un menor tiempo asignado. Si se da el

caso de que dos procesos tengan igual valor en ese aspecto emplea el algoritmo Primero en

llegar primero en ser servido.

22

Page 25: Enfoque general a los sistemas operativos

4. Planificacion garantizada: Para realizar planificacion con este algoritmo, el sistema tiene en

cuenta el numero de usuarios que deben ser atendidos. Para un numero n de usuarios se

asignara a cada uno un tiempo de ejecucion igual a 1/n.

5. Planificacion por prioridad: En este tipo de planificacion a cada proceso se le asigna una

prioridad siguiendo un criterio determinado. La ejecucion se realiza en funcion de dicho

orden.

6. Planificacion de Colas Multiples: En este algoritmo la cola de procesos que se encuentran

listos para ejecucion, es dividida en un numero determinado de colas mas pequenas. Cada

cola puede manejar un algoritmo de planificacion diferente a las demas.

23

Page 26: Enfoque general a los sistemas operativos

8. SISTEMAS OPERATIVOS ACTUALES.

Actualmente, dos de las distribuciones de SO dominantes en el contexto informatico general son

Windows y Linux. Tambien dominan segun el tipo de plataforma, UNIX Solaris, Android y Mac

OS.

8.1. LINUX

En pocas palabras: Linux es el kernel de un sistema operativo libre que sirve como una sustitucion

de Windows o Mac OS. Windows y Mac OS son programas privativos, que estan disponibles para

la venta y los usuario no pueden modificar el funcionamiento de estos sistemas operativos. El

kernel de Linux y las aplicaciones GNU que se ejecutan en este sistema operativo alternativo son

(generalmente) disponibles de forma gratuita y libre de ser modificado por el usuario o cualquier

otra comunidad de programadores.

Las distribucion de Linux, tambie conocidas coloquialmente como distros, son una distribucion de

software basada en el nucleo Linux que incluye determinados paquetes de software para satisfa-

cer las necesidades de un grupo especıfico de usuarios, dando ası origen a ediciones domesticas,

empresariales y para servidores.

Cuadro 5: Distribuciones populares de LinuxPuesto Distribucion

1 Ubuntu2 Fedora3 Mint4 openSUSE5 Mandriba6 Debian7 PcLinuxOS8 Sabayon9 Arch10 Puppy

24

Page 27: Enfoque general a los sistemas operativos

8.1.1. UBUNTU

Ubuntu es un sistema operativo de codigo abierto basado en GNU/Linux que incluye Unity, su

propio entorno de escritorio, y se distribuye como Software Libre.

Ubuntu, cuyo nombre procede del concepto sudafricano homonimo que significa ‘humanidad hacia

otros‘, esta predominantemente enfocado a la facilidad de uso e instalacion, la libertad de los

usuarios y las actualizaciones periodicas (cada 6 meses).

Figura 6: Logo de Ubuntu.

8.1.2. WINDOWS

Windows significa en ingles “ventanas”. Esto en representacion de su su interfaz (permite las inter-

comunicaciones entre programas o entre el programa y el usuario) basado en ventanas desplegables

y superpuestas, que muestran diferentes contenidos. Posee una barra de tareas, y un panel de

control.

Es el conjunto de sistemas operativos graficos de mayor uso mundial, desarrollado por la empresa

Microsoft, a partir de 1980, para computadoras, con varias versiones, para particulares, empresas,

computadoras portatiles y telefonos inteligentes.

Es un SO privativo, lo que significa que hay que pagar por su uso y estan prohibidas las modifica-

ciones del mismo.

25

Page 28: Enfoque general a los sistemas operativos

Figura 7: Logo de Windows.

8.1.3. Windows Vs Linux

Los sistemas operativos de Microsoft tienen la mayor compatibilidad entre sus competidores, ası

como el soporte tecnico mas eficiente dado a su alto grado de uso. Igualmente estos SO tienen

el mayor potencial de obtencion de virus, sin embargo esto puede evitarse haciendo uso de un

programa anti-virus. Asimismo, Windows reserva la mayor parte de memoria de la computadora

para su operacion.

En cuestion de interfaz, Linux siempre ha superado a Windows. Si embargo, en lo ultimos anos

Microsoft a intentado dar mejoras a la interfaz de sus SO a fin de hacerlos mas intuitivos y a la

vez llamativos para el usuario.

26

Page 29: Enfoque general a los sistemas operativos

9. Conclusion.

Los SO son de gran importancia, ya que permiten la interaccion entre usuarios y maquinas. De

no ser por ello, las computadoras, y en general los dispositivos tecnologicos nos serian de utilidad

ya que de por sı, el HW solo no tiene mayor uso. Las tendencias de estos sistemas, son la mayor

productividad y ligereza. Ası mismo se trabaja en la creacion de SO multiplataforma, capaces

de corren en gran variedad de dispositivos sin necesidad de realizar grandes alteraciones en su

configuracion. Ejemplos de So multiplataforma son el reciente Windows 10 y Ubuntu en versiones

superiores a 12.0. Windows 10 es capaz de corren en pc, telefonos, tabletas e incluso televisores. En

el diseno de SO es importante definir adecuadamente el trato que se dara a los diferentes procesos.

Este trato depende del enfoque que se quiera dar el SO, es decir para que sera usado. Finalmente,

la eleccion de un SO tambien depende del uso, necesidad o problema que se quiera solventar con

el. Existen gran variedad de opciones en el mercado unas privativas y otras no. Las plataformas

privativas a causa del efecto demandan – oferta, tienen una mayor compatibilidad respecto a

aplicaciones soportadas. Sin embargo las plataformas de codigo abierto, como son la mayorıa de

SO basados en Linux, tienen mayor rendimiento lo que es util para usuarios que demandan eficiencia

y fluidez.

27

Page 30: Enfoque general a los sistemas operativos

Indice de figuras

1. Ejemplo de SO Monotarea: DOS de Windows. . . . . . . . . . . . . . . . . . . . . . 8

2. Ejemplo de SO Multitarea: Windows 10. . . . . . . . . . . . . . . . . . . . . . . . . 9

3. Ejemplo de SO Multiusuario: Windows Server. . . . . . . . . . . . . . . . . . . . . 11

4. Ejemplo de SO para Computadoras Personales: Ubuntu. . . . . . . . . . . . . . . . 13

5. Estructura de un SO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

6. Logo de Ubuntu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

7. Logo de Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

28

Page 31: Enfoque general a los sistemas operativos

Indice de cuadros

1. Cuadro comparativo entre tipos de servicios. . . . . . . . . . . . . . . . . . . . . . 15

2. Ejemplo y descripcion de algunos sistemas de archivos. . . . . . . . . . . . . . . . 20

3. Sistema de archivos de Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4. Sistema de archivos de Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

5. Distribuciones populares de Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

29

Page 32: Enfoque general a los sistemas operativos

Referencias

[1] Andrew Tanembaum Sistemas operativos modernos Pretince Hall - 2003

[2] Ida M. Flynn Sistemas Operativos.Cengage Learning - 2005

[3] Pablo Martınez Cobo, Manuel Cabello Requena, Juan Carlos Dıaz Martin Sistemas operativos:

teorıa y practica. Diaz de Santos 1997.

[4] Tom Carpenter Microsoft Windows Operating System Essentials. SyBEX 2000.

[5] - Sistemas Operativos — Planificacion de procesos http://sistop.gwolf.org/html/03

planificacion de procesos.html

30