Un sistema operativo es un software de sistema, es decir, un conjunto de programas de
computadora destinado a permitir una administracin eficaz de sus recursos. Comienza a trabajar cuando es cargado en memoria por un programa especifico, que se ejecuta al iniciar el equipo, o al iniciar una mquina virtual, y gestiona el hardware de la mquina desde los niveles ms bsicos, brindando una interfaz con el usuario. Un sistema operativo se puede encontrar normalmente en la mayora de los aparatos electrnicos que utilicen microprocesadores para funcionar, ya que gracias a stos podemos entender la mquina y que sta cumpla con sus funciones (telfonos mviles, reproductores de DVD, autoradios, computadoras, radios,etc).
Funciones bsicas:
Los sistemas operativos, en su condicin de capa de software que posibilita y simplifica el manejo de la computadora, desempea una serie de funciones bsicas esenciales para la gestin del equipo. Entre las ms destacables, cada una ejercida por un componente interno (mdulo en ncleos monolticos y servidor en microncleos), podemos resear las siguientes:
Gestionar de manera eficiente los recursos del equipo, ejecutando servicios para los procesos (programas) Brindar una interfaz al usuario, ejecutando instrucciones (comandos), proporcionando ms comodidad en el uso del computador. Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban (evolutividad). Un sistema operativo desempea 5 funciones bsicas en la operacin de un sistema informtico: administracin de recursos, administracin de archivos, administracin de tareas y servicio de soporte y utilidades y suministro de interfaz al usuario.
Un sistema operativo (SO o, frecuentemente, OS del ingls Operating System) es un programa o conjunto de programas que en un sistema informtico gestiona los recursos de hardware y provee servicios a los programas de aplicacin, ejecutndose en modo privilegiado respecto de los restantes y anteriores prximos y viceversa (aunque puede que parte del mismo se ejecute en espacio de usuario).2
Ntese que es un error comn muy extendido denominar al conjunto completo de herramientas sistema operativo, es decir, la inclusin en el mismo trmino de programas como el explorador de ficheros, el navegador web y todo tipo de herramientas que permiten la interaccin con el sistema operativo, tambin llamado ncleo o kernel. Esta identidad entre kernel y sistema operativo es solo cierta si el ncleo es monoltico. Otro ejemplo para comprender esta diferencia se encuentra en la plataforma Amiga, donde el entorno grfico de usuario se distribua por separado, de modo que, tambin poda reemplazarse por otro, como era el caso de directory Opus o incluso manejarlo arrancando con una lnea de comandos y el sistema grfico. De este modo, al arrancar un Amiga, comenzaba a funcionar con el propio sistema operativo que llevaba incluido en una ROM, por lo que era cuestin del usuario decidir si necesitaba un entorno grfico para manejar el sistema operativo o simplemente otra aplicacin. Uno de los ms prominentes ejemplos de esta diferencia, es el ncleo Linux, usado en las llamadas distribuciones Linux, ya que al estar tambin basadas en Unix, proporcionan un sistema de funcionamiento similar. Este error de precisin, se debe a la modernizacin de la informtica llevada a cabo a finales de los 80, cuando la filosofa de estructura bsica de funcionamiento de los grandes computadores3 se redise a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (nicamente un usuario al mismo tiempo) ms sencillo de gestionar.4 (Vase AmigaOS, beOS o Mac OS como los pioneros5 de dicha modernizacin, cuando los Amiga fueron bautizados con el sobrenombre de Video Toasters6 por su capacidad para la Edicin de vdeo en entorno multitarea round robin, con gestin de miles de colores e interfaces intuitivos para diseo en 3D.
Uno de los propsitos del sistema operativo que gestiona el ncleo intermediario consiste en gestionar los recursos de localizacin y proteccin de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. La mayora de aparatos electrnicos que utilizan microprocesadores para funcionar, llevan incorporado un sistema operativo (telfonos mviles, reproductores de DVD, computadoras, radios, enrutadores, etc.). En cuyo caso, son manejados mediante una interfaz grfica de usuario, un gestor de ventanas o un entorno de escritorio, si es un celular, mediante una consola o control remoto si es un DVD y, mediante una lnea de comandos o navegador web si es un enrutador. DEFINICION 2: Qu es un Sistema Operativo? Un Sistema Operativo (SO) es el software bsico de una computadora que provee una interfaz entre el resto de programas del ordenador, los dispositivos hardware y el usuario. Las funciones bsicas del Sistema Operativo son administrar los recursos de la mquina, coordinar el hardware y organizar archivos y directorios en dispositivos de almacenamiento. Los Sistemas Operativos ms utilizados son Dos, Windows, Linux y Mac. Algunos SO ya vienen con un navegador integrado, como Windows que trae el navegador Internet Explorer. Definicin de Sistema Operativo El sistema operativo es el programa (o software) ms importante de un ordenador. Para que funcionen los otros programas, cada ordenador de uso general debe tener un sistema operativo. Los sistemas operativos realizan tareas bsicas, tales como reconocimiento de la conexin del teclado, enviar la informacin a la pantalla, no perder de vista archivos y directorios en el disco, y controlar los dispositivos perifricos tales como impresoras, escner, etc.
En sistemas grandes, el sistema operativo tiene incluso mayor responsabilidad y poder, es como un polica de trfico, se asegura de que los programas y usuarios que estn funcionando al mismo tiempo no interfieran entre ellos. El sistema operativo tambin es responsable de la seguridad, asegurndose de que los usuarios no autorizados no tengan acceso al sistema.
Clasificacin de los Sistemas Operativos
Los sistemas operativos pueden ser clasificados de la siguiente forma:
Multiusuario: Permite que dos o ms usuarios utilicen sus programas al mismo tiempo. Algunos sistemas operativos permiten a centenares o millares de usuarios al mismo tiempo. Multiprocesador: soporta el abrir un mismo programa en ms de una CPU. Multitarea: Permite que varios programas se ejecuten al mismo tiempo. Multitramo: Permite que diversas partes de un solo programa funcionen al mismo tiempo. Tiempo Real: Responde a las entradas inmediatamente. Los sistemas operativos como DOS y UNIX, no funcionan en tiempo real. Cmo funciona un Sistema Operativo
Los sistemas operativos proporcionan una plataforma de software encima de la cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones se programan para que funcionen encima de un sistema operativo particular, por tanto, la eleccin del sistema operativo determina en gran medida las aplicaciones que puedes utilizar.
DEFINICION 3: Que es el sistema operativo? Un sistema operativo puede ser definido como un conjunto de programas especialmente hechos para la ejecucin de varias tareas, en las que sirve de intermediario entre el usuario y la computadora. Este conjunto de programas que manejan el hardware de una computadora u otro dispositivo electrnico. Provee de rutinas bsicas para controlar los distintos dispositivos del equipo y permite administrar, escalar y realizar interaccin de tareas. Un sistema operativo, tiene tambin como funcin, administrar todos los perifricos de una computadora. Es el encargado de mantener la integridad del sistema. Podemos decir que el sistema operativo es el programa ms importante de la computadora.
Existen muchos tipos de Sistemas Operativos, cuya complejidad vara dependiendo de qu tipo de funciones proveen, y en qu tipo de equipo puede ser usado. Algunos sistemas operativo permiten administrar gran cantidad de usuarios, en cambio otros controlan dispositivos de hardware como bombas de petrleo.
Cuando el sistema operativo comienza a funcionar, inicia los procesos que luego va a necesitar para funcionar correctamente. Esos procesos pueden ser archivos que necesitan ser frecuentemente actualizados, o archivos que procesan datos tiles para el sistema. Es posible tener acceso a distintos procesos del sistema operativo, a travs del administrador de tareas, donde se encuentran todos los procesos que estn en funcionamiento desde la inicializacin del sistema operativo hasta su uso actual. Una de las atribuciones del sistema operativo es cargar en la memoria y facilitar la ejecucin de los programas que el usuario utiliza. Cuando un programa est en ejecucin, el sistema operativo contina trabajando. Por ejemplo, muchos programas necesitan realizar acceso al teclado, vdeo e impresora, as como accesos al disco para leer y grabar archivos. Todos esos accesos son realizados por el sistema operativo, que se encuentra todo el tiempo activo, prestando servicios a los programas que estn siendo ejecutados. El sistema operativo tambin hace una adminstracin de los recursos de la computadora, para evitar que los programas entren en conflicto. Por ejemplo, el sistema operativo evita que dos programas accedan simultneamente al mismo sector de la memoria, lo que podra causar grandes problemas. El sistema operativo funciona como un "maestro", procurando que todos los programas y todos los componentes de la computadora funcionen de forma armnica.
Funciones bsicas del Sistema Operativo
El sistema operativo es un conjunto de programas que:
Inicializa el hardware del ordenador Suministra rutinas bsicas para controlar dispositivos Permite administrar, escalonar e interactuar tareas Mantiene la integridad de sistema Un Sistema Operativo muy simple, por ejemplo, para un sistema de control de seguridad, podra ser almacenado en una memoria ROM (Memoria de slo Lectura: un chip que mantiene las instrucciones para el dispositivo), y tomar el control al ser conectado al equipo. Su primera tarea sera reajustar (y probablemente probar) los sensores de hardware y alarmas, y entonces activar una rutina que escucha ininterrumpidamente todos los sensores del sistema. Si el estado de cualquier sensor de entrada cambiara, se activara una rutina de alarma. En un gran servidor multiusuario, con muchas computadoras conectadas a l, el Sistema Operativo es mucho ms complejo. Tiene que administrar y ejecutar todos los pedidos de los usuarios y asegurar que ellos no interfieran entre s. Tiene que compartir todos los dispositivos que son del tipo serial por naturaleza (equipos que slo pueden ser usados por un usuario de cada vez, como impresoras y discos) entre todos los usuarios que piden utilizar este tipo de servicios. El Sistema Operativo puede ser almacenado en un disco, y determinadas partes de l son cargadas en la memoria del ordenador (RAM) cuando es necesario.
El sistema operativo provee utilidades para:
Administracin de Archivos y Documentos creados por usuarios Ejecucin controlada de Programas Comunicacin entre usuarios y con otras computadoras Administracin de pedidos de usuarios para usar programas y espacio de almacenamiento. Adicionalmente, el Sistema Operativo necesitara presentar a cada usuario una interfaz que acepte, interprete, y ejecute comandos o programas del usuario. Esta interfaz es normalmente llamada SHELL o intrprete de lnea de comando (CLI). En algunos sistemas podra ser una simple lnea de texto que utilicen palabras claves; en otros sistemas podran ser grficas, usando ventanas y un dispositivo sealador como un mouse. El ncleo de un sistema operativo es algunas veces llamado EJECUCION en tiempo real. Algunas de las funciones ejecutadas son:
Intercambio entre programas Control y programacin de los dispositivos de hardware Administracin de memoria Administracin de procesos Escalonamiento de tareas Comunicacin entre procesos Procesamiento de excepciones y de interrupciones Nuestro sistema simple de monitorizacin de seguridad (que vimos arriba) no tendra todas las funciones mencionadas, ya que probablemente sera un sistema mono-tarea, ejecutando slo un programa. Por lo tanto, no necesitara gestionar cambios entre ms de un programa o permitir comunicacin entre programas (comunicacin entre procesos). La administracin de la memoria sera innecesaria, ya que el programa residira permanentemente en la ROM o en una EPROM (una forma programable especial de ROM).
Un sistema operativo diseado para administrar un gran nmero de usuarios necesitara de un ncleo para ejecutar todas las funciones descriptas. Los programas de los usuarios generalmente son almacenados en disco y necesitan ser cargados en memoria antes de ser ejecutados. Esto plantea la necesidad de administrar la memoria, ya que la memoria de la computadora necesitara ser explorada para localizar un rea libre para cargar un programa de usuario en la misma. Cuando el usuario finaliza la ejecucin del programa, la memoria consumida por ste necesita ser liberada y puesta a disposicin de otro usuario cuando la solicite.
Los sistemas operativos ms populares:
- Microsoft Windows (para computadoras) - Windows Server (para servidores) - Linux (para computadoras y servidores) - Mac OS (para computadoras) - Chrome OS (para computadoras) - Android (para smartphones) - Windows Phone(para smartphones) - iOS (para smartphones) - BlackBerry OS (para smartphones)
Que es un Sistema Operativo de Internet
Cuando nos preguntamos cual es la aplicacin ms utilizada actualmente, todo indica al navegador de internet. Esto lleva a la deduccin, que el actual DOS (sigla que determina el tipo de sistema operativo que utilizamos actualmente como un "sistema operativo de disco"), ser sustituido por el IOS, el sistema operativo de Internet, dnde todo depende de la red de redes. La primera objecin a este cambio podra haber sido el hecho de que internet en general suele ser ms lenta que el disco, sin embargo, eso cambi , ya que las conexiones de hoy permiten un acceso a datos estable y rpido.
Funciones y Caractersticas de un Sistema Operativo Funciones Se tendr como punto de partida la mquina tal cual, es decir, el hardware bsico del computador, con una CPU, memoria central y perifricos. Sin ayuda del software las operaciones de cargar y ejecutar un programa se debe realizar de forma manual, es decir totalmente bajo control humano. El operador debe llevar a cabo una secuencia de tareas:
Colocar el programa fuente almacenado en el dispositivo de entrada adecuado (cintas, tarjetas, discos...). Desencadenar la ejecucin de un programa de lectura para el dispositivo elegido. Desencadenar la ejecucin de un compilador que traduzca el programa fuente. Colocar los datos de entrada en el dispositivo adecuado. Ejecutar el programa objeto. Sacar los resultados por impresora.
Tipos de Servicios
Un sistema operativo crea un entorno para la ejecucin de programas. Ofrece ciertos servicios a los programas y a los usuarios de estos programas. Dependen del tipo de Sistema Operativo, pero las funciones bsicas son:
De cara al usuario:
Ejecucin de programas. El sistema debe ser capaz de cargar un programa en memoria y ejecutarlo.
Operacin de I/O. Un programa de usuario no puede ejecutar directamente operaciones de I/O. El sistema operativo debe facilitar medios para realizarla.
Manipulacin de ficheros: Lectura, escritura y borrado a partir del identificador de los mismos.
Deteccin de errores: Para cada tipo de error el sistema operativo debe adoptar la iniciativa apropiada que garantice una computacin correcta y consistente. No confundir esta deteccin de errores con la producida durante la compilacin de un programa. Esta deteccin se hace de cara a un funcionamiento eficiente.
De funcionamiento eficiente:
Asignacin de recursos.
Contabilidad: control del uso del ordenador por cada usuario.
Proteccin: de datos, recursos, programacin, etc.
Caractersticas de un Sistema Operativo 1.
Concurrencia.
Consiste en la existencia de varias actividades simultneas o paralelas. Ejemplo de ello lo son la superposicin de las operaciones de I/O con el proceso de computacin, as como la coexistencia en memoria de varios programas. La concurrencia lleva asociado el problema de conmutar de una tarea a otra, as como proteger una determinada actividad de los efectos de las otras, as como la sincronizacin de tareas que sean mutuamente dependientes.
2.
Utilizacin conjunta de recursos. Comparticin.
Las razones para la comparticin son las siguientes:
a) El coste: es absurdo disponer de suficientes recursos para cada usuario por separado. b) Aprovechamiento de los trabajos de otros. La utilidad es poder utilizar rutinas y programas desarrollados por otras personas. c) Posibilidad de compartir datos: Utilizacin de una misma base de datos para varios programas distintos, asociados posiblemente a distintos usuarios. d) Eliminacin de redundancias: poder disponer de una sola copia de un programa (por ejemplo un compilador) y compartirlo con otros. 3.
Permite que el usuario guarde sus datos o programas en el propio ordenador, y no tener que usar medios externos (portables). Los problemas que se plantean son de proteccin de la informacin frente a terceros y protegerlos frente a fallos del sistema.
4.
Un Sistema Operativo debe ser determinista en el sentido de que el mismo programa ejecutado con los mismos datos, en momentos diferentes, debe producir los mismos resultados. En cambio ser indeterminista porque en caso de variabilidad de las situaciones puede responder de un modo impredecible. Deben tomarse las medidas oportunas. Estas situaciones pueden ser debidas a peticin de recursos, errores de ejecucin en programas o bien interrupcin de perifricos.
1.2 Funciones y Caracteristicas
En general, se puede decir que un Sistema Operativo tiene las siguientes caracteristicas: Conveniencia. Un Sistema Operativo hace mas conveniente el uso de una computadora. Eficiencia. Un Sistema Operativo permite que los recursos de la computadora se usen de la manera mas eficiente posible. Habilidad para evolucionar. Un Sistema Operativo debera construirse de manera que permita el desarrollo, prueba o introduccion efectiva de nuevas funciones del sistema sin interferir con el servicio. Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una mejor manera los recursos de la computadora en cuanto a hardware se refiere, esto es, asignar a cada proceso una parte del procesador para poder compartir los recursos. Relacionar dispositivos (gestionar a traves del kernel). El Sistema Operativo se debe encargar de comunicar a los dispositivos perifericos, cuando el usuario asi lo requiera.
Organizar datos para acceso rapido y seguro. Manejar las comunicaciones en red. El Sistema Operativo permite al usuario manejar con alta facilidad todo lo referente a la instalacin y uso de las redes de computadoras.
Procesamiento por bytes de flujo a travs del bus de datos. Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fcil al usuario el acceso y manejo de los dispositivos de Entrada/Salida de la computadora. Tcnicas de recuperacin de errores. Evita que otros usuarios interfieran. El Sistema Operativo evita que los usuarios se bloqueen entre ellos, informndoles si esa aplicacin esta siendo ocupada por otro usuario. Generacin de estadsticas. Permite que se puedan compartir el hardware y los datos entre los usuarios.
El software de aplicacin son programas que se utilizan para disear, tal como el procesador de palabras, lenguajes de programacin, hojas de clculo, etc. El software de base sirve para interactuar el usuario con la mquina, son un conjunto de programas que facilitan el ambiente plataforma, y permite el diseo del mismo. El Software de base est compuesto por : Cargadores. Compiladores. Ensambladores. Macros.
Clasificacin de los sistemas operativos
Con el paso de los tiempos los sistemas operativos fueron cambiando de muchas maneras, por ejemplo: Sistemas Operativos de multitarea: con este sistema operativo es que la computadora procesa diferentes tareas al mismo tiempo. Existen varios tipos de multitareas. Estos sistemas Se distinguen por sus habilidades para poder soportar la ejecucin de dos o ms trabajos activos (que se estn ejecutado) al mismo tiempo. Esto trae como resultado que la Unidad Central de Procesamiento (UCP) siempre tenga alguna tarea que ejecutar, aprovechando al mximo su utilizacin. Los sistemas operativos que soportan estas multitareas son: UNIX, Windows 95, Windows 98, Windows NT, MAC-OS, OS/2.
Sistema Operativo Monotareas: los sistemas operativos monotareas son ms primitivos y es todo lo contrario a los de multitareas es decir, solo pueden manejar un proceso en cada momento o que solo puede ejecutar las tareas de una en una. Por ejemplo cuando la computadora est imprimiendo un documento, no puede iniciar otro proceso ni responder a nuevas instrucciones hasta que se termine la impresin. El sistema operativo que soporta el monotareas es DOS.
Sistema Operativo Monousuario: Los sistemas monousuarios son aquellos que nada ms puede atender a un solo usuario, gracias a las limitaciones creadas por el hardware, los programas o el tipo de aplicacin que se este ejecutando. Estos tipos de sistemas son muy simples, porque todos los dispositivos de entrada, salida y control dependen de la tarea que se est utilizando, esto quiere decir, que las instrucciones que se dan, son procesadas de inmediato; ya que existe un solo usuarios. Los sistemas operativos que soportan el monousuario son DOS e incluso en el actual Windows XP y sus predecesores.
Sistema Operativo Multiusuario: Es todo lo contrario a monousuario; y en esta categora se encuentran todos los sistemas que cumplen simultneamente las necesidades de dos o ms usuarios, que comparten mismos recursos. Este tipo de sistemas se emplean especialmente en redes. Los sistemas operativos que soportan el multiusuario son con el Linux, Windows 2003 y sus predecesores.
Sistemas Operativos por lotes: Con este sistema operativoprocesan una gran cantidad de trabajos con poca o ninguna interaccin entre los usuarios y los programas en ejecucin. Se renen todos los trabajos comunes para realizarlos al mismo tiempo, evitando la espera de dos o ms trabajos como sucede en el procesamiento en serie. Estos sistemas, pueden tener un tiempo de ejecucin muy alto, porque el procesador es mejor utilizado y los Sistemas Operativos pueden ser simples, debido a la secuenciabilidad de la ejecucin de los trabajos. Los sistemas operativos que soportan por lotes son el SCOPE, del DC6600, y el EXEC II para el UNIVAC 1107.
Sistemas Operativos de tiempo real: este sistema operativo de tiempo real son aquellos en los cuales no tiene importancia el usuario, sino los procesos. Por lo general, estn subutilizados sus recursos con la finalidad de prestar atencin a los procesos en el momento que lo requieran. se utilizan en entornos donde son procesados un gran nmero de sucesos o eventos.Los sistemas operativos que soportan el tiempo real son VxWorks, Solaris, Lyns OS y Spectra.
Sistemas Operativos de tiempo compartido: estos sistemasPermiten la simulacin de que el sistema y sus recursos son todos para cada usuario. El usuario hace una peticin a la computadora, esta 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 ilusin de que tiene el sistema dedicado para s mismo. Los sistemas operativos que soportan el tiempo compartido son Multics, OS/360 y DEC-10.
Sistemas Operativos distribuidos: Este sistema operativo permite 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 bsicos de stos. Un sistema fuertemente acoplado es a aquel que comparte la memoria y un reloj global, cuyos tiempos de acceso son similares para todos los procesadores. En un sistema dbilmente acoplado los procesadores no comparten ni memoria ni reloj, ya que cada uno cuenta con su memoria local.
Sistemas Operativos de red: Los sistemas operativos de red son aquellos que mantienen a dos o ms computadoras unidas a travs de algn medio de comunicacin (fsico o no), con el objetivo primordial de poder compartir los diferentes recursos y la informacin 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 ms utilizados que soportan la red son Novell Netware, Personal Netware, LAN Manager, Windows NT Server, UNIX, LANtastic.
Sistemas Operativos paralelos: En estos tipos de Sistemas Operativos se pretende que cuando existan dos o ms procesos que compitan por algn recurso se puedan realizar o ejecutar al mismo tiempo. En UNIX existe tambin la posibilidad de ejecutar programas sin tener que atenderlos en forma interactiva, simulando paralelismo. As, en lugar de esperar a que el proceso termine de ejecutarse, regresa a atender al usuario inmediatamente.Los sistemas operativos que soportan a los paralelos sonAlpha, PVM, la serie AIX, que es utilizado en los sistemas RS/6000 de IBM.