Está en la página 1de 5

SISTEMAS OPERATIVOS, 3 EDICION, GARY NUTT, PEARSON Addison Wesley El sistema operativo o SO es como un director.

Es el responsable de coordinar todos los componentes individuales del computador de forma que operan juntos siguiendo un solo plan. El SO asigna los recursos del computador a los diversos programas, sincroniza sus actividades individuales, y proporciona los mecanismos necesarios para que los programas funcionen y se ejecuten ordenadamente. La eficiencia y la funcionalidad son las partes claves de un sistema operativo. La eficiencia porque fija un estndar de prestaciones para todo el software de un computador. Un sistema operativo tambin proporciona una gran cantidad de funciones que asisten a la ejecucin de un programa. Un SO de altas prestaciones que proporcione poca funcionalidad fuerza a trabajar ms sobre los programas de aplicacin. Todos los sistemas operativos estn diseados bajo ciertas restricciones y circunstancias. Se debe tomar en cuenta que el diseo de un SO es sumamente importante, ya que es la manera por la cual, el usuario final (o programador) se comunica con el computador. Dicha interfaz debe ser intuitiva, fluida y, por ltimo, y no tan importante, amigable con el usuario que est usando el PC. El diseo puede dar la impresin de tener discontinuidades o inconsistencias lgicas si no se hace de manera correcta y teniendo en cuenta los dos aspectos anteriormente mencionados. (Buscar definicin de intuitivo, fluidez e interfaz). Cita de autor: los sistemas operativos se han ganado la reputacin de ser el software ms crtico en un sistema de computadores. Slo a los programadores ms hbiles y experimentados se les permite disear y modificar el sistema operativo de un computador. Los sistemas informticos constan de software y hardware que combinados proporcionan herramientas que resuelven problemas concretos. El software se divide en dos partes: el software de aplicaciones y el de sistema. El de aplicaciones tratan de resolver problemas especficos o proporcionar herramientas genricas para los usuarios finales. Como por ejemplo, un software de aplicacin para el control de inventario usa el computador para seguir la pista e informar a una compaa de su inventario, tambin est el software de correo electrnico (Outlook, Thunderbird) que permite que la gente se comunique, los programas de edicin de texto (Word, Wordpad), y los programas de hoja de clculo (Excel) que manejan todo tipo de bases de datos e informacin para llevar el registro de cuentas de una compaa. Hoy en da, aunque parezca extrao, generalmente el precio de un computador se obtiene de los programas y SO instalados en l. Los componentes fsicos o hardware, pasaran a un segundo plano. El software de sistema proporciona un entorno de programacin general en el que los programadores pueden crear aplicaciones especficas para las necesidades de sus clientes. Este entorno se compone de herramientas de programacin (como por ejemplo, Microsoft Visual Basic, Netbeans, Dev C++, entre otros) y abstracciones (archivos, carpetas y objetos). El programador de aplicaciones usa el software del sistema, que incluye el SO, para proporcionar un conjunto de

aplicaciones a los usuarios finales. Desde la perspectiva de un programador de aplicaciones, el software del sistema muy importante puesto que define el entorno en que pueden implementarse los programas para su envo al usuario final. Sin embargo, desde la perspectiva del usuario final, el software del sistema no parece ms importante que, por ejemplo, la fuente de poder. El hardware y software trabajan en conjunto para poder hacer funcionar las aplicaciones. El sistema debera administrar y manejar de forma eficiente los recursos de manera mnima (reloj de procesador, memoria RAM.) para maximizar el tiempo en que dichos recursos estn disponibles para los programas de aplicacin. Se podra minimizar el uso de los recursos, por parte del sistema, eliminando todo lo que tiene que ver con aplicaciones. Al crear un SO, se debe tener en cuenta el nmero de funciones que debe tener, eso depende de la empresa que lo desarrolla, por ejemplo: Apple, que proporciona un conjunto de herramientas de programacin, los entornos Microsoft proveen un conjunto de herramientas diferente (Visual Basic, C#), Java tiene su propio conjunto de funciones para software de sistema, y los sistemas UNIX ofrecen un modelo ms de herramientas de programacin. El motivo por el cual existe el software de sistema es el de ofrecer funciones que un programador pudiera usar para implementar software de aplicacin. Con el paso del tiempo, apareci otro objetivo importante del SO: permitir que el software de aplicacin pudiera compartir el hardware de una forma ordenada. Por ejemplo, un programa puede estar leyendo informacin de un disco, mientras que otro est haciendo clculos. Esta gran funcionalidad increment el rendimiento del sistema al permitir que diferentes programas estuvieran corriendo al mismo tiempo (sistema operativo multitarea). Para garantizar que esto no produjera errores, el sistema operativo, administra los componentes de hardware a travs de los diversos programas de aplicacin en ejecucin. Por esta razn, se dice que un SO es el software ms cercano al hardware. Un sistema operativo ofrece dos tipos de entorno: uno que permite que el usuario interacte con el computador y un segundo que da herramientas empleadas en los entornos de aplicacin. La interfaz de usuario facilita soporte tanto al usuario final, como a los programadores suministrndoles herramientas como editores de texto y hojas de clculo para poder gestionar la informacin. Los usuarios finales pueden manejar su correo electrnico, documentos, imgenes, videos, inclusive hasta juegos. Los usuarios que se dedican a programar y disear el software de aplicaciones, usan software del sistema (compiladores, editores de lenguaje de programacin) que usan API (interfaz de programacin de aplicaciones o application programming interface) para traducir el programa en una forma adecuada para su ejecucin, un cargador para copiar el programa en memoria para ser ejecutado, y bibliotecas que realizan funciones como formatear la entrada/salida o crear un objeto. Por ejemplo, en los entornos de programacin C y C++, se implementan

importantes herramientas en las bibliotecas de tiempo de ejecucin del software del sistema (a las que accede usando varios archivos tipo .h), incluyendo: La biblioteca estndar de entrada/salida (I/O) proporciona procedimientos para realizar la entrada/salida con bfer, como printf() y scanf(), sobre un flujo de datos. La biblioteca matemtica proporciona funciones como sqrt(), para calcular funciones matemticas. Las bibliotecas grficas aportan funciones como drawCircle(), para mostrar imgenes sobre un dispositivo.

Otro software del sistema implementa componentes lgicos del sistema. Mientras que las bibliotecas proveen conjuntos de funciones que pueden ser llamadas desde los programas de aplicacin, estos componentes son elementos esenciales del entorno de computacin. Aqu se definen algunos ejemplos de este tipo de componentes: Un intrprete de lnea de rdenes o Shell que es un programa basado en texto al que invoca un usuario para interactuar con el software del sistema. El usuario enva mandatos, tales como dir a Windows y ls a Linux (estos dos sistemas operativos son los ms usados en los computadores de todo el mundo, por tal razn, se har mucho nfasis y comparacin entre ellos), al intrprete que ordenan al software del sistema la realizacin de acciones deseadas, tal como listar entradas de bases de datos o en un directorio activo. Los programas sh y csh de UNIX, el programa bash de Linux y el programa cmd.exe de Windows son ejemplos de intrpretes de lneas de rdenes. Un sistema de ventanas es un sistema software que ofrece un terminar virtual a un programa de aplicacin. La ventana se califica como virtual porque el programador construye la aplicacin usando funciones para leer y escribir en la ventana como si fuera un dispositivo incluso aunque no haya un terminar fsico nico asociado a la ventana. El software del sistema aplica estas operaciones de dispositivo virtual sobre una regin fsica concreta de la pantalla. Despus traduce las operaciones del software sobre el terminal virtual en las operaciones apropiadas sobre el dispositivo fsico. ste puede soportar varios dispositivos virtuales. Por ejemplo, el escritorio de Mac OSX, el de Windows o el de Linux. Un sistema de gestin de base de datos (DBMS o database management system) puede usarse para almacenar informacin en los dispositivos de almacenamiento permanente del computador. El sistema de base de datos proporciona tipos abstractos de datos (denominados esquemas) y crea un nuevo software especfico de la aplicacin optimizado para la realizacin eficiente de consultas y actualizaciones de los datos segn la definicin del esquema. Cuanto ms complejas y ms numerosas sean las estructuras de datos que usa una aplicacin, mayor es el beneficio que se extrae de usar un sistema de gestin de base de datos. Algunos

ejemplos de gestin de base de datos son los sistemas de base de datos relacionales Oracle y MySQL. Las personas y las empresas compran computadores para resolver problemas de procesamiento de informacin. Por ejemplo, un negocio compra algunos computadores para tratar la informacin de contabilidad; una organizacin militar puede comprar un computador para calcular trayectorias balsticas; y cierta persona lo compra para navegar por internet y correr juegos de ms de 16 GB de capacidad. Cada una de estas razones para comprar un equipo define un dominio de aplicacin, o coleccin de problemas que pueden resolverse mediante un computador. En el dominio de aplicacin de la contabilidad, los programas interesantes pueden ser mantener balances, presentar informes, crear facturas y ms. En el dominio de las trayectorias balsticas, los programas deben resolver problemas relacionados con controlar y saber exactamente dnde va a caer un misil. Y en el dominio de la computacin personal, los programas deben permitir dar soporte a programas de juego con grficos realistas, edicin de texto y navegacin web. Ciertas partes del software del sistema pueden ser tiles en un dominio de aplicacin pero no serlo en otro. Otros programas del sistema, como las bases de datos relacionales, pretender servir para un uso bastante general. Pueden soportar programas escritos para muchos dominios de aplicaciones diferentes. Por ejemplo, pueden tener dentro de su software, una base de datos para procesamiento de imgenes o tambin esta base de datos de imgenes podra servir para soportar solamente imgenes topogrficas monocromticas. Se sabe que un SO hace parte del software del sistema (de hecho es casi en totalidad el software de sistema), por lo cual se debe saber diferenciar de entre las bases de datos y compiladores. Un SO interacta directamente con el hardware para proveer una interfaz que se emplea en el resto del software del sistema y en el software de aplicacin. Un sistema operativo de propsito general es independiente del dominio de software que puede manejar. Esto significa que puede usar el mismo SO para dar soporte a una amplia gama de dominios de aplicacin, tales como los programas de gestin de inventarios y hojas de clculo. El programa de aplicaciones usa recursos abstractos provistos por el SO para determinar su interaccin concreta con los componentes fsicos (hardware). Un sistema operativo permite que diferentes aplicaciones compartan los recursos de hardware en virtud de sus normas de gestin de recursos.

La abstraccin de recursos y la comparticin son los dos aspectos clave de un sistema operativo. La abstraccin funciona de forma oculta haca al usuario, ya que se hacen procesos concretos del sistema que hacen que funcione correctamente y que al

usuario final no se preocupa por la forma en que esto funcione, l slo se conforma con que la mquina les resuelva sus problemas y necesidades. Estos procesos son abstractos al usuario y no se elaboran con el objetivo de que stos los modifiquen o los manipulen. Esto se puede comparar con un carro. Al usuario generalmente no le interesa cmo funciona cada parte interna del vehculo, slo le interesa que funcione y le ayude a transportarse. La comparticin hace referencia a qu tan rpido funciona un computador con respecto a otro, o qu tan rpido realizan clculos complejos. Un PC puede calcular en cuestin de microsegundos una expresin algebraica, pero un una persona le podra llevar muchos minutos. Esta diferencia de velocidad de clculo hace que pareciera que el computador est haciendo varios procesos a la vez. A veces los computadores son capaces de hacer multitarea de forma muy eficaz, por ejemplo, si un programa desea hacer un clculo numrico a la vez que otro desea leer un dispositivo de disco, entonces el sistema operativo puede planificar el uso del hardware para que ambos programas se ejecuten a la vez. Esto tambin es comparacin, ya que reparte los recursos de forma adecuada para que el usuario pueda realizar sus tareas de forma rpida y cmoda. La ejecucin concurrente y paralela est relacionada con la nocin de comparticin de recursos: Para que los programas en ejecucin sean concurrentes o paralelos, deben compartir el mismo computador. Un SO gestiona algunos de los recursos y los programadores de aplicaciones no son conscientes de que los recursos estn siendo compartidos. Un SO tambin permite comparticin explcita entre programas en ejecucin dando mecanismos por los cuales los programadores de aplicaciones gestionan la forma en que se comparten los recursos de la mquina. Estrategias de sistemas operativos: Durante la corta historia de los sistemas operativos se han usado diferentes estrategias para proporcionar los servicios del SO. En este caso, con estrategia se refiere a las caractersticas generales de la mquina abstracta (proceso oculto) del programador. Por ejemplo, el que haya un nmero fijo de procesos ocultos en el sistema, o que puedan disearse procesos especialmente para que los usuarios finales puedan interactuar con el software. Antes que los sistemas multitarea aparecieran, los monotarea o secuenciales slo podan ejecutar un programa a la vez y adems era muy limitado. La tecnologa de ese entonces no permita que un dispositivo electrnico como lo es un computador, hiciera tantas tareas a la vez, generando incomodidad y prdida de tiempo para la persona que lo usaba o tambin para la compaa o empresa que adquiriera un PC con un SO de ese tipo. Adems los computadores los usabas ms las compaas que los usuarios particulares, ya que eran demasiado caros y slo se usaban para momentos crticos.

También podría gustarte