so_intro
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
so_intro [2019/06/24 01:59] – mariano | so_intro [2019/06/24 12:39] (actual) – editor externo 127.0.0.1 | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
===== Introducción ===== | ===== Introducción ===== | ||
+ | {{ : | ||
Línea 7: | Línea 7: | ||
Dado que un sistema operativo es un software grande y complejo, debe crearse pieza por pieza. Cada una de estas piezas deberá ser una parte bien diseñada del sistema, con entradas, salida y funciones cuidadosamente definidas. | Dado que un sistema operativo es un software grande y complejo, debe crearse pieza por pieza. Cada una de estas piezas deberá ser una parte bien diseñada del sistema, con entradas, salida y funciones cuidadosamente definidas. | ||
- | ¿Qué hace? | + | **¿Qué hace?** |
Un sistema informático puede dividirse a grandes rasgos en cuatro componentes: | Un sistema informático puede dividirse a grandes rasgos en cuatro componentes: | ||
- | El hardware, la unidad central de procesamiento, | + | El hardware, la unidad central de procesamiento, |
También podemos ver un sistema informático como hardware, software y datos. El sistema operativo proporciona los medios para hacer un uso adecuado de estos recursos durante el funcionamiento del sistema informático. Un sistema operativo es similar a un gobierno. Como un gobierno, no realiza ninguna función útil por sí mismo: simplemente proporciona un entorno en el que otros programas pueden llevar a cabo un trabajo útil. | También podemos ver un sistema informático como hardware, software y datos. El sistema operativo proporciona los medios para hacer un uso adecuado de estos recursos durante el funcionamiento del sistema informático. Un sistema operativo es similar a un gobierno. Como un gobierno, no realiza ninguna función útil por sí mismo: simplemente proporciona un entorno en el que otros programas pueden llevar a cabo un trabajo útil. | ||
- | Para comprender mejor el papel de un sistema operativo, a continuación vamos a abordar los | + | Para comprender mejor el papel de un sistema operativo, a continuación vamos a abordar los sistemas operativos desde dos puntos de vista: |
- | sistemas operativos desde dos puntos de vista: el del usuario y el del sistema. | + | |
+ | **Punto de vista del usuario** | ||
+ | |||
+ | La visión del usuario de la computadora varía de acuerdo con la interfaz que utilice. La mayoría de los usuarios que se sientan frente a un PC disponen de un monitor, un teclado, un ratón y una unidad de sistema. Un sistema así se diseña para que un usuario monopolice sus recursos. El objetivo es maximizar el trabajo (o el juego) que el usuario realice. En este caso, el sistema operativo se diseña principalmente para que sea de fácil uso, prestando cierta atención al rendimiento y ninguna a la utilización de recursos (el modo en que se comparten los recursos hardware y software). Por supuesto, el rendimiento es importante para el usuario, pero más que la utilización de recursos, estos sistemas se optimizan para el uso del mismo por un solo usuario. | ||
+ | |||
+ | |||
+ | En otros casos, un usuario se sienta frente a un terminal conectado a un mainframe o una microcomputadora. Otros usuarios acceden simultáneamente a través de otros terminales. Estos usuarios comparten recursos y pueden intercambiar información. En tales casos, el sistema operativo se diseña para maximizar la utilización de recursos, asegurar que todo el tiempo de CPU, memoria y E/S disponibles se usen de forma eficiente y que todo usuario disponga sólo de la parte equitativa que le corresponde. | ||
+ | |||
+ | En otros casos, los usuarios usan estaciones de trabajo conectadas a redes y servidores. Estos usuarios tienen recursos dedicados a su disposición, | ||
+ | |||
+ | Recientemente, | ||
+ | |||
+ | ** | ||
+ | Vista del sistema** | ||
+ | |||
+ | Desde el punto de vista de la computadora, | ||
+ | |||
+ | Un punto de vista ligeramente diferente de un sistema operativo hace hincapié en la necesidad de controlar los distintos dispositivos de E/S y programas de usuario. Un sistema operativo es un programa de control. Como programa de control, gestiona la ejecución de los. programas de usuario para evitar errores y mejorar el uso de la computadora. Tiene que ver especialmente con el funcionamiento y control de los dispositivos de E/S. | ||
+ | |||
+ | **Definición de sistema operativo** | ||
+ | |||
+ | Hemos visto el papel de los sistemas operativos desde los puntos de vista del usuario y del sistema. Pero, ¿cómo podemos definir qué es un sistema operativo? En general, no disponemos de ninguna definición de sistema operativo que sea completamente adecuada. Los sistemas operativos existen porque ofrecen una forma razonable de resolver el problema de crear un sistema informático utilizable. El objetivo fundamental de las computadoras es ejecutar programas de usuario y resolver los problemas del mismo fácilmente. Con este objetivo se construye el hardware de la computadora. Debido a que el hardware por sí solo no es fácil de utilizar, se desarrollaron programas de aplicación. Estos programas requieren ciertas operaciones comunes, tales como las que controlan los dispositivos de E/S. Las operaciones habituales de control y asignación de recursos se incorporan en una misma pieza del software: el sistema operativo. | ||
+ | |||
+ | Además, no hay ninguna definición universalmente aceptada sobre qué forma parte de un sistema operativo. Desde un punto de vista simple, incluye todo lo que un distribuidor suministra cuando se pide "el sistema operativo" | ||
+ | |||
+ | La cuestión acerca de qué constituye un sistema operativo está adquiriendo una importancia creciente. En 1998, el Departamento de Justicia de Estados Unidos entabló un pleito contra Microsoft, aduciendo en esencia que Microsoft incluía demasiada funcionalidad en su sistema operativo, impidiendo a los vendedores de aplicaciones competir. Por ejemplo, un explorador web era una parte esencial del sistema operativo. Como resultado, Microsoft fue declarado culpable de usar su monopolio en los sistemas operativos para limitar la competencia. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **Funcionamiento de una computadora** | ||
+ | |||
+ | Una computadora moderna de propósito general consta de una o más CPU y de una serie de controladoras de dispositivo conectadas a través de un bus común que proporciona acceso a la memoria compartida. Cada controladora de dispositivo se encarga de un tipo específico de dispositivo, | ||
+ | |||
+ | Para que una computadora comience a funcionar, por ejemplo cuando se enciende o se reinicia, es necesario que tenga un programa de inicio que ejecutar. Este programa de inicio, o programa de arranque, suele ser simple. Normalmente, | ||
+ | |||
+ | La ocurrencia de un suceso normalmente se indica mediante una interrupción de hardware o de software. El hardware puede activar una interrupción en cualquier instante enviando una señal a la CPU, normalmente a través del bus del sistema. El software puede activar una interrupción ejecutando una operación especial denominada llamada del sistema (o también llamada de | ||
+ | monitor). | ||
+ | |||
+ | Cuando se interrumpe a la CPU, deja lo que está haciendo e inmediatamente transfiere la ejecución a una posición fijada (establecida). Normalmente, | ||
+ | |||
+ | La interrupciones son una parte importante de la arquitectura de una computadora. Cada diseño de computadora tiene su propio mecanismo de interrupciones, | ||
+ | |||
+ | El método más simple para tratar esta transferencia consiste en invocar una rutina genérica parra examinar la información de la interrupción; | ||
+ | |||
+ | La arquitectura de servicio de las interrupciones también debe almacenar la dirección de la instrucción ininterrumpida. Muchos diseños antiguos simplemente almacenaban la dirección de interrupción en una posición fija o en una posición indexada mediante el número de dispositivo. Las arquitecturas más recientes almacenan la dirección de retorno en la pila del sistema. Si la rutina | ||
+ | |||
+ | |||
+ | **Estructura de sistemas operativos** | ||
+ | |||
+ | Un sistema operativo proporciona el entorno en el que se ejecutan los programas. Internamente, | ||
+ | |||
+ | Podemos ver un sistema operativo desde varios puntos de vista. Uno de ellos se centra en los servicios que el sistema proporciona; | ||
+ | |||
+ | |||
+ | **Servicios del sistema operativo** | ||
+ | |||
+ | Un sistema operativo proporciona un entorno para la ejecución de programas. El sistema presta ciertos servicios a los programas y a los usuarios de dichos programas. Por supuesto, los servicios específicos que se suministran difieren de un sistema operativo a otro, pero podemos identificar perfectamente una serie de clases comunes. Estos servicios del sistema operativo se proporcionan para comodidad del programador, | ||
+ | |||
+ | |||
+ | Un cierto conjunto de servicios del sistema operativo proporciona funciones que resultan útiles al usuario: | ||
+ | |||
+ | * Interfaz de usuario. Casi todos los sistemas operativos disponen de una interfaz de usuario (UI, user interface), que puede tomar diferentes formas. Uno de los tipos existentes es la interfaz de línea de comandos (CLI, command line interface), que usa comandos de textos y algún tipo de método para introducirlos, | ||
+ | |||
+ | * Ejecución de programas. El sistema tiene que poder cargar un programa en memoria y ejecutar dicho programa. Todo programa debe poder terminar su ejecución, de forma normal o anormal (indicando un error). | ||
+ | |||
+ | * Operaciones de E/S. Un programa en ejecución puede necesitar llevar a cabo operaciones de E/S, dirigidas a un archivo o a un dispositivo de E/S. Para ciertos dispositivos específicos, | ||
+ | |||
+ | * Manipulación del sistema de archivos. El sistema de archivos tiene una importancia especial. Obviamente, los programas necesitan leer y escribir en archivos y directorios. También necesitan crearlos y borrarlos usando su nombre, realizar búsquedas en un determinado archivo o presentar la información contenida en un archivo. Por último, algunos programas incluyen mecanismos de gestión de permisos para conceder o denegar el acceso a los archivos o directorios basándose en quién sea el propietario del archivo. | ||
+ | |||
+ | * Comunicaciones. Hay muchas circunstancias en las que un proceso necesita intercambiar información con otro. Dicha comunicación puede tener lugar entre procesos que estén ejecutándose en la misma computadora o entre procesos que se ejecuten en computadoras diferentes conectadas a través de una red. Las comunicaciones se pueden implementar utilizando memoria compartida o mediante paso de mensajes, procedimiento éste en el que el sistema operativo transfiere paquetes de información entre unos procesos y otros. | ||
+ | * Detección de errores. El sistema operativo necesita detectar constantemente los posibles errores. Estos errores pueden producirse en el hardware del procesador y de memoria (como, por ejemplo, un error de memoria o un fallo de la alimentación) en un dispositivo de E/S (como un error de paridad en una cinta, un fallo de conexión en una red o un problema de falta papel en la impresora) o en los programas de usuario (como, por ejemplo, un desbordamiento aritmético, | ||
+ | Hay disponible otro conjunto de funciones del sistema de operativo que no están pensadas para ayudar al usuario, sino para garantizar la eficiencia del propio sistema. Los sistemas con múltiples usuarios pueden ser más eficientes cuando se comparten los recursos del equipo entre los distintos usuarios: | ||
+ | * Asignación de recursos. Cuando hay varios usuarios, o hay varios trabajos ejecutándose al mismo tiempo, deben asignarse a cada uno de ellos los recursos necesarios. El sistema operativo gestiona muchos tipos diferentes de recursos; algunos (como los ciclos de CPU, la memoria principal y el espacio de almacenamiento de archivos) pueden disponer de código software especial que gestione su asignación, | ||
+ | |||
+ | * Responsabilidad. Normalmente conviene hacer un seguimiento de qué usuarios emplean qué clase de recursos de la computadora y en qué cantidad. Este registro se puede usar para propósitos contables (con el fin de poder facturar el gasto correspondiente a los usuarios) o simplemente para acumular estadísticas de uso. Estas estadísticas pueden ser una herramienta valiosa para aquellos investigadores que deseen reconfigurar el sistema con el fin de mejorar los servicios informáticos. | ||
+ | |||
+ | |||
+ | * Protección y seguridad. Los propietarios de la información almacenada en un sistema de computadoras en red o multiusuario necesitan a menudo poder controlar el uso de dicha información. Cuando se ejecutan de forma concurrente varios procesos distintos, no debe ser posible que un proceso interfiera con los demás procesos o con el propio sistema operativo. La protección implica asegurar que todos los accesos a los recursos del sistema estén controlados. También es importante garantizar la seguridad del sistema frente a posibles intrusos; dicha seguridad comienza por requerir que cada usuario se autentique ante el sis- tema, usualmente mediante una contraseña, | ||
+ | |||
+ | **Interfaz de usuario del sistema operativo** | ||
+ | |||
+ | Existen dos métodos fundamentales para que los usuarios interactúen con el sistema operativo. Una técnica consiste en proporcionar una interfaz de línea de comandos o intérprete de comandos- que permita a los usuarios introducir directamente comandos que el sistema operativo pueda ejecutar. El segundo método permite que el usuario interactúe con el sistema operativo a través interfaz gráfica de usuario o GUI. | ||
+ | ** | ||
+ | Llamadas al sistema** | ||
+ | |||
+ | Las llamadas al sistema proporcionan una interfaz con la que poder invocar los servicios que el sistema operativo ofrece. Estas llamadas, generalmente, | ||
×
iphelper toolbox
you see this when javscript or css is not working correct
Untested
so_intro.1561341557.txt.gz · Última modificación: 2019/06/24 01:59 (editor externo)