Desarrollo Sistema operativo • sistema operativo

Anuncio
Desarrollo
• Sistema operativo
Un sistema operativo (cuyo acrónimo es SO) es un conjunto de programas destinados a permitir la
comunicación del usuario con un computador y gestionar sus recursos de una forma eficaz. Comienza a
trabajar cuando se enciende el computador, y gestiona el hardware de la máquina desde los niveles más
básicos.
Un sistema operativo se puede encontrar normalmente en la mayoría de los aparatos electrónicos que
podamos utilizar sin necesidad de estar conectados a una computadora y que utilicen microprocesadores para
funcionar, ya que gracias a estos podemos entender la máquina y que ésta cumpla con sus funciones (teléfonos
móviles, reproductores de DVD, auto radios... y computadoras)
• Objetivos
Los sistemas operativos, motivados por su condición de capa software que posibilita y simplifica el manejo de
la computadora, desempeñan una serie de funciones básicas esenciales para la gestión del equipo. Entre las
más destacables, cada una ejercida por un componente interno (módulo en núcleos monolíticos y servidor en
microkernels), podemos reseñar las siguientes:
• Gestionar los recursos del equipo ejecutando servicios para los procesos (programas)
• Brindar una interfaz al usuario, ejecutando instrucciones (comandos).
Como gestor de recursos, el Sistema Operativo administra
• El CPU
• Los dispositivos de E/S
• La memoria.
• Las colas de procesos.
• Administración de recursos.
Los sistemas operativos controlan diferentes procesos de la computadora. Un proceso importante es la
interpretación de los comandos que permiten al usuario comunicarse con el ordenador. Algunos intérpretes de
instrucciones están basados en texto y exigen que las instrucciones sean tecleadas.
Otros están basados en gráficos, y permiten al usuario comunicarse señalando y haciendo clic en un icono. Por
lo general, los intérpretes basados en gráficos son más sencillos de utilizar.
Los sistemas operativos pueden ser de tarea única o multitarea. Los sistemas operativos de tarea única, más
primitivos, sólo pueden manejar un proceso en cada momento. Por ejemplo, cuando la computadora está
imprimiendo un documento, no puede iniciar otro proceso ni responder a nuevas instrucciones hasta que se
termine la impresión.
Todos los sistemas operativos modernos son multitarea y pueden ejecutar varios procesos simultáneamente.
En la mayoría de los ordenadores sólo hay una UCP; un sistema operativo multitarea crea la ilusión de que
varios procesos se ejecutan simultáneamente en la UCP. El mecanismo que se emplea más a menudo para
lograr esta ilusión es la multitarea por segmentación de tiempos, en la que cada proceso se ejecuta
individualmente durante un periodo de tiempo determinado. Si el proceso no finaliza en el tiempo asignado, se
suspende y se ejecuta otro proceso. Este intercambio de procesos se denomina conmutación de contexto.
1
El sistema operativo se encarga de controlar el estado de los procesos suspendidos. También cuenta con un
mecanismo llamado planificador que determina el siguiente proceso que debe ejecutarse.
El planificador ejecuta los procesos basándose en su prioridad para minimizar el retraso percibido por el
usuario. Los procesos parecen efectuarse simultáneamente por la alta velocidad del cambio de contexto.
Los sistemas operativos pueden emplear memoria virtual para ejecutar procesos que exigen más memoria
principal de la realmente disponible. Con esta técnica se emplea espacio en el disco duro para simular la
memoria adicional necesaria. Sin embargo, el acceso al disco duro requiere más tiempo que el acceso a la
memoria principal, por lo que el funcionamiento del ordenador resulta más lento.
• Estructura
Los sistemas operativos considerados como un programa, han alcanzado un tamaño muy grande, debido a que
tienen que hacer muchas tareas. Por esta razón para construir un SO es conveniente dividirlo en componentes
más pequeños.
• Gestión de procesos.
• Gestión de memoria.
• Gestión de archivos y directorios.
• Gestión de la E/S (Entrada/Salida).
• Seguridad y protección.
• Comunicación y sincronización entre procesos.
• Intérprete de órdenes
• Gestión de procesos
Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto formado por:
• Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.
• Su estado de ejecución en un momento dado, esto es, los valores de los registros de la CPU para dicho
programa.
• Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.
• Otra información que permite al sistema operativo su planificación.
Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un proceso consta de uno
o más hilos, la memoria de trabajo (compartida por todos los hilos) y la información de planificación. Cada
hilo consta de instrucciones y estado de ejecución.
Los procesos son creados y destruidos por el sistema operativo, así como también este se debe hacer cargo de
la comunicación entre procesos, pero lo hace a petición de otros procesos. El mecanismo por el cual un
proceso crea otro proceso se denomina bifurcación (fork). Los nuevos procesos pueden ser independientes y
no compartir el espacio de memoria con el proceso que los ha creado o ser creados en el mismo espacio de
memoria.
En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La diferencia estriba en que
un proceso solamente puede crear hilos para sí mismo y en que dichos hilos comparten toda la memoria
reservada para el proceso.
• Gestión de memoria.
Memoria de computadora, también llamada simplemente memoria o memoria de ordenador en España, se
2
refiere a componentes de una computadora, dispositivos y medios de grabación que retienen datos
informáticos durante algún intervalo de tiempo. Las memorias de computadora proporcionan una de las
principales funciones de la computación moderna, la retención de información. Es uno de los componentes
fundamentales de todas las computadoras modernos que, acoplados a una Unidad Central de Proceso (CPU
por su acrónimo en inglés), implementa lo fundamental del modelo de computadora de Von Neumann, usado
desde los años 1940.
En la actualidad, memoria suele referirse a una forma de almacenamiento de estado sólido conocido como
memoria de acceso aleatorio (RAM por sus siglas en inglés) y otras veces se refiere a otras formas de
almacenamiento rápido pero temporal. De forma similar, almacenamiento se refiere a formas de
almacenamiento masivo como Discos ópticos y tipos de almacenamiento magnético como discos duros y
otros tipos de almacenamiento más lentos que las memorias RAM, pero de naturaleza más permanente.
Estas distinciones contemporáneas son de ayuda porque son fundamentales para la arquitectura de
computadores en general. Además, se refleja una diferencia técnica importante y significativa entre memoria y
dispositivos de almacenamiento masivo que se ha ido difuminando por el uso histórico de los términos
"almacenamiento primario" (a veces "almacenamiento principal"), para memorias de acceso aleatorio, y
"almacenamiento secundario" para dispositivos de almacenamiento masivo. Esto se explica en las siguientes
secciones, en las que el término tradicional "almacenamiento" se usan como subtítulo por conveniencia.
• Tipos de sistemas operativos
• Linux
Linux es un sistema operativo diseñado por cientos de programadores de todo el planeta, aunque el principal
responsable del proyecto es Linux Tovalds. Su objetivo inicial es propulsar el software de libre distribución
junto con su código fuente para que pueda ser modificado por cualquier persona, dando rienda suelta a la
creatividad. El hecho de que el sistema operativo incluya su propio código fuente expande enormemente las
posibilidades de este sistema. Este método también es aplicado en numerosas ocasiones a los programas que
corren en el sistema, lo que hace que podamos encontrar muchísimos programas útiles totalmente gratuitos y
con su código fuente. Y la cuestión es que, señores y señoras.
Mi máquina corre Linux, y puedo asegurar que es uno de los sistemas que más aprovecha mi computadora, es
decir, con el consigo ejecutar tareas mucho más rápido que con otros sistemas operativos comerciales. Y es
que Linux no requiere grandes prestaciones para funcionar.
• Funciones
Las funciones principales de este magnífico sistema operativo son:
• Sistema multitarea En Linux es posible ejecutar varios programas a la vez sin necesidad de tener que
parar la ejecución de cada aplicación.
• Sistema multiusuario Varios usuarios pueden acceder a las aplicaciones y recursos del sistema Linux
al mismo tiempo. Y, por supuesto, cada uno de ellos puede ejecutar varios programas a la vez
(multitarea).
• Shells programables Un shell conecta las ordenes de un usuario con el Kernel de Linux (el núcleo del
sistema), y al ser programables se puede modificar para adaptarlo a tus necesidades. Por ejemplo, es
muy útil para realizar procesos en segundo plano.
• Independencia de dispositivos Linux admite cualquier tipo de dispositivo (módems, impresoras)
gracias a que cada una vez instalado uno nuevo, se añade al Kernel el enlace o controlador necesario
con el dispositivo, haciendo que el Kernel y el enlace se fusionen. Linux posee una gran adaptabilidad
y no se encuentra limitado como otros sistemas operativos.
• Comunicaciones Linux es el sistema más flexible para poder conectarse a cualquier ordenador del
3
mundo. Internet se creó y desarrollo dentro del mundo de Unix, y por lo tanto Linux tiene las mayores
capacidades para navegar, ya que Unix y Linux son sistemas prácticamente idénticos. Con Linux
podrá montar un servidor en su propia casa sin tener que pagar las enormes cantidades de dinero que
piden otros sistemas.
• Características
• multitarea: varios programas (realmente procesos) ejecutándose al mismo tiempo.
• multiusuario: varios usuarios en la misma máquina al mismo tiempo (y sin licencias para todos).
• multiplataforma: corre en muchas CPUs distintas, no sólo Intel.
• funciona en modo protegido 386.
• tiene protección de la memoria entre procesos, de manera que uno de ellos no pueda colgar el sistema.
• carga de ejecutables por demanda: Linux sólo lee de disco aquellas partes de un programa que están
siendo usadas actualmente.
• política de copia en escritura para la compartición de páginas entre ejecutables: esto significa que
varios procesos pueden usar la misma zona de memoria para ejecutarse. Cuando alguno intenta
escribir en esa memoria, la página (4Kb de memoria) se copia a otro lugar. Esta política de copia en
escritura tiene dos beneficios: aumenta la velocidad y reduce el uso de memoria.
• memoria virtual usando paginación (sin intercambio de procesos completos) a disco: una partición o
un archivo en el sistema de archivos, o ambos, con la posibilidad de añadir más áreas de intercambio
sobre la marcha (se sigue denominando intercambio, es en realidad un intercambio de páginas). Un
total de 16 zonas de intercambio de 128Mb de tamaño máximo pueden ser usadas en un momento
dado con un límite teórico de 2Gb para intercambio.
• la memoria se gestiona como un recurso unificado para los programas de usuario y para el caché de
disco, de tal forma que toda la memoria libre puede ser usada para caché y éste puede a su vez ser
reducido cuando se ejecuten grandes programas.
• librerías compartidas de carga dinámica (DLL's) y librerías estáticas también, por supuesto.
• se realizan volcados de estado (core dumps) para posibilitar los análisis post−mortem, permitiendo el
uso de depuradores sobre los programas no sólo en ejecución sino también tras abortar éstos por
cualquier motivo.
• casi totalmente compatible con POSIX, System V y BSD a nivel fuente.
• mediante un módulo de emulación de iBCS2, casi completamente compatible con SCO, SVR3 y
SVR4 a nivel binario.
• todo el código fuente está disponible, incluyendo el núcleo completo y todos los drivers, las
herramientas de desarrollo y todos los programas de usuario; además todo ello se puede distribuir
libremente. Hay algunos programas comerciales que están siendo ofrecidos para Linux actualmente
sin código fuente, pero todo lo que ha sido gratuito sigue siendo gratuito.
• control de tareas POSIX.
• pseudo−terminales (pty's).
• emulación de 387 en el núcleo, de tal forma que los programas no tengan que hacer su propia
emulación matemática. Cualquier máquina que ejecute Linux parecerá dotada de coprocesador
matemático. Por supuesto, si tu ordenador ya tiene una FPU (unidad de coma flotante), será usada en
lugar de la emulación, pudiendo incluso compilar tu propio kernel sin la emulación matemática y
conseguir un pequeño ahorro de memoria.
• soporte para muchos teclados nacionales o adaptados y es bastante fácil añadir nuevos
dinámicamente.
• consolas virtuales múltiples: varias sesiones de login a través de la consola entre las que se puede
cambiar con las combinaciones adecuadas de teclas (totalmente independiente del hardware de video).
Se crean dinámicamente y puedes tener hasta 64.
• soporte para varios sistemas de archivo comunes, incluyendo minix−1, Xenix y todos los sistemas de
archivo típicos de System V, y tiene un avanzado sistema de archivos propio con una capacidad de
4
hasta 4 Tb y nombres de archivos de hasta 255 caracteres de longitud.
• acceso transparente a particiones MS−DOS (o a particiones OS/2 FAT) mediante un sistema de
archivos especial: no necesitas ningún comando especial para usar la partición MS−DOS, parece un
sistema de archivos normal de Unix (excepto por algunas graciosas restricciones en los nombres de
archivo, permisos, y esas cosas). Las particiones comprimidas de MS−DOS 6 no son accesibles en
este momento, y no se espera que lo sean en el futuro. El soporte para VFAT (WNT, Windows 95) ha
sido añadido al núcleo de desarrollo y estará en la próxima versión estable.
• soporte en sólo lectura de HPFS−2 del OS/2 2.1
• sistema de archivos de CD−ROM que lee todos los formatos estándar de CD−ROM.
• TCP/IP, incluyendo ftp, telnet, NFS, etc.
• Appletalk disponible en el actual núcleo de desarrollo.
• software cliente y servidor Netware disponible en los núcleos de desarrollo.
• MS−DOS
Dos es un acrónimo de Disk Operating System, sistema operativo creado por Microsoft, y que tienen instalado
la mayoría de los ordenadores PC.
Es DOS es a parte de un sistema operativo, un conjunto de programas que nos permiten manipular
información contenida en discos, de esta forma podemos trabajar con facilidad, comodidad y rapidez con
estos; a demás, el DOS coordina el funcionamiento del microprocesador para que todo funcione bien en el
interior de nuestro ordenador.
A lo largo del tiempo Microsoft ha ido mejorando el DOS, desde su primera versión el 1.981. Las versiones
que puedan existir, sirven para corregir errores detectados en la versión anterior o para mejorar ciertas partes
del programa; si la variación está en la primera cifra, significa que se han introducido cambios importantes,
fruto, por ejemplo, de las prestaciones de los nuevos microprocesadores, en gran parte para poder aprovechar
sus ventajas.
• Estructura básica del sistema.
El MS−DOS contiene cinco elementos fundamentales:
• La ROM−BIOS.− Programas de gestión de entrada y salida entre el Sistema Operativo y los
dispositivos básicos del ordenador.
• La IO.SYS.− Son un conjunto de instrucciones para la transferencia de entrada/salida desde
periféricos a memoria. Prepara el sistema en el arranque y contiene drivers de dispositivo residentes.
• MSDOS.SYS.− Es el kernel de MS−DOS, en que figuran instrucciones para control de los disquetes.
Es un programa que gestiona los archivos, directorios, memoria y entornos.
• DBLSPACE.BIN.− Es el controlador del Kernel del compresor del disco duro que sirve para
aumentar la capacidad de almacenamiento del disco, disponible a partir de la versión 6 del MS−DOS.
Este controlador se ocupa de toda la compresión y descompresión de ficheros y se puede trasladar
desde la memoria convencional a la memoria superior.
• COMMAND.COM.− Es el intérprete de comandos, mediante los cuales el usuario se comunica con el
ordenador, a través del prompt \>. Interpreta los comandos tecleados y contiene los comandos
internos de MS−DOS que no se visualizan en el directorio del sistema.
Los ficheros IO.SYS, MSDOS.SYS y DBLSPACE.BIN son ocultos, es decir, no se ven al listar el directorio,
y se cargan desde el disco a la memoria del ordenador al arrancar éste.
Esquema
5
• Introducción.
• Desarrollo.
• Sistemas operativos. (Linux y MS−DOS)
• Objetivos.
• Estructura.
• Tipos de sistemas operativos. (Linux y (MS−DOS)
♦ Funciones.
♦ Características.
♦ Conclusión.
♦ Bibliografía.
Bibliografía
Microsoft MS−DOS guía del usuario, referencias para el usuario.
Versión 3.3.
http://theory.lcs.mit.edu/~rivest
Encarta Microsoft 2006
http://www.wikipdia.com
Introducción
Los sistemas operativos bien los de un registro o los de una serie de registros que cumplan una
condición. Esto quiere decir que es muy importante para el almacenamiento de una información, es
necesario una base de datos para así saber en donde almacenar los datos ya sea de tipo agenda como
el de una persona o empresa como por ejemplo: en las negocios o empresas tienen en su computadora
la cual usa un sistema operativo que rige las funciones principales de dicha empresa la cual es la
facturación y de ella depende cada una de las normas que piden los diferentes tipos de registros de
almacenamiento de datos.
También un sistema operativo es capas de almacenar información tipo agenda que solo aparecerá
nombre, dirección y nif o cedula para realizar la factura e ingresarlo para una nueva facturación, los
sistemas de operación son aquellos sistemas o Software que manipula, coordinan la memoria, el
teclado entre otros accesorios del computador también gestiona errores que el Mouse o cualquier otro
tipo de hardware pueda presentar.
Conclusión
Una de las más importantes es que Linux es una excelente elección para trabajar con UNIX a nivel
personal. Linux permite desarrollar y probar el software en su PC, incluyendo aplicaciones de bases
de datos y X Windows. Con Linux, se puede correr un sistema UNIX y adaptarlo a las necesidades.
La instalación y uso de Linux es también una excelente manera de aprender UNIX si no se tiene
acceso a otras máquinas UNIX.
Linux no es solo para los usuarios personales de. Es robusto y suficientemente completo para manejar
grandes tareas, así como necesidades de cómputo distribuidas. Muchos negocios especialmente los
pequeños se están cambiando a Linux en lugar de otros entornos de estación de trabajo basados en
UNIX. Grandes vendedores de software comercial se están dando cuenta de las oportunidades que
6
puede brindar un sistema operativo gratuito.
En 1981 Microsoft compró un sistema operativo llamado QDOS que, tras realizar unas pocas
modificaciones, se convirtió en la primera versión de MS−DOS (Microsoft Disk Operating System).
A partir de aquí se sucedieron una serie de cambios hasta llegar a la versión 7.1, a partir de la cual
MS−DOS dejó de existir como tal y se convirtió en una parte integrada del sistema operativo
Windows.
Es decir todos estos tipos de sistemas operativos fueron como un tipo de génesis o principio que se
utilizaron antiguamente los cuales fueron perfeccionando y evolucionando con el pasar de los años y
en la actualidad existen diversos tipos de sistemas operativos especializado para diferentes tipos de
operaciones de acuerdo sea la empresa o negocio.
7
Documentos relacionados
Descargar