Monografias | Ciclo de Vida del Sistema Operativo LINUX

Ciclo de Vida del Sistema Operativo LINUX

Resumen: LINUX es un sistema operativo, compatible Unix. Dos características muy peculiares lo diferencian del resto de los sistemas que podemos encontrar en el mercado, la primera, es que es libre, esto significa que no tenemos que pagar ningún tipo de licencia a ninguna casa desarrolladora de software por el uso del mismo, la segunda, es que el sistema viene acompañado del código fuente. El sistema lo forman el núcleo del sistema (kernel) mas un gran numero de programas / librerías que hacen posible su utilización.

Publicación enviada por Francisco Armando Dueñas Rodríguez


 

Ciclo de Vida del Sistema Operativo LINUX

Indice
1. Introducción
2. Diseño
3. Programación
4. Requisitos
5. Puesta a Punto
6. Conclusiones

1. Introducción

LINUX es un sistema operativo, compatible Unix. Dos característicasmuy peculiares lo diferencian del resto de los sistemas que podemos encontrar enel mercado, la primera, es que es libre, esto significa que no tenemos que pagarningún tipo de licencia a ninguna casa desarrolladora de software por el usodel mismo, la segunda, es que el sistema viene acompañado del código fuente.El sistema lo forman el núcleo del sistema (kernel) mas un gran numero deprogramas / librerías que hacen posible su utilización.

Su objetivo inicial es propulsar el software de libredistribución junto con su código fuente para que pueda ser modificado porcualquier persona, dando rienda suelta a la creatividad. El hecho de que elsistema operativo incluya su propio código fuente expande enormemente lasposibilidades de este sistema. Este método también es aplicado en numerosasocasiones a los programas que corren en el sistema, lo que hace que podamosencontrar muchisimos programas útiles totalmente gratuitos y con su códigofuente. La cuestión es que, como ya mencionamos, Linux es un sistema operativototalmente gratuito.

LINUX se distribuye bajo la GNU Public License: Ingles , porlo tanto, el código fuente tiene que estar siempre accesible.

El sistema ha sido diseñado y programado por multitud deprogramadores alrededor del mundo. El núcleo del sistema sigue en continuodesarrollo bajo la coordinación de Linus Torvalds, la persona de la que partióla idea de este proyecto, a principios de la década de los noventa.

Día a día, más y más programas / aplicaciones estándisponibles para este sistema, y la calidad de los mismos aumenta de versión aversión. La gran mayoría de los mismos vienen acompañados del código fuentey se distribuyen gratuitamente bajo los términos de licencia de la GNU PublicLicense.

En los últimos tiempos, ciertas casas de software comercialhan empezado a distribuir sus productos para Linux y la presencia del mismo enempresas aumenta rápidamente por la excelente relación calidad - precio que seconsigue con Linux.

2. Diseño

Linux es un sistema operativo completo con multitarea ymultiusuario (como cualquier otra versión de UNIX). Esto significa que puedentrabajar varios usuarios simultáneamente en él, y que cada uno de ellos puedetener varios programas en ejecución.

El sistema Linux es compatible con ciertos estándares deUNIX a nivel de código fuente, incluyendo el IEEE POSIX.1, System V y BSD. Fuedesarrollado buscando la portabilidad de los fuentes: casi todo el softwaregratuito desarrollado para UNIX se compila en Linux sin problemas. Y todo lo quese hace para Linux (código del núcleo, drivers, librerías y programas deusuario) es de libre distribución.

En Linux también se implementa el control de trabajos POSIX(que se usa en los shells csh y bash), las pseudoterminales (dispositivos pty),y teclados nacionales mediante manejadores de teclado cargables dinámicamente.Además, soporta consolas virtuales, lo que permite tener más de una sesiónabierta en la consola de texto y conmutar entre ellas fácilmente. A losusuarios del programa "screen" les resultará familiar esto.

El núcleo es capaz de emular por su cuenta las instruccionesdel coprocesador 387, con lo que en cualquier 386 con coprocesador o sin él sepodrán ejecutar aplicaciones que lo requieran.

Linux soporta diversos sistemas de ficheros para guardar losdatos. Algunos de ellos, como el ext2fs, han sido desarrollados específicamentepara Linux. Otros sistemas de ficheros, como el Minix-1 o el de Xenix tambiénestán soportados. Y con el de MS-DOS se podrán acceder desde Linux a losdisquetes y particiones en discos duros formateados con MS-DOS. Además, tambiénsoporta el ISO-9660, que es el estándar seguido en el formato de los CD-ROMs.Hablaremos más

sobre los sistemas de ficheros en los capítulos 2 y 4.

Linux implementa todo lo necesario para trabajar en red conTCP/IP. Desde manejadores para las tarjetas de red más populares hastaSLIP/PPP, que permiten acceder a una red TCP/IP por el puerto serie. También seimplementan PLIP (para comunicarse por el puerto de la impresora) y NFS (paraacceso remoto a ficheros). Y también se han portado los clientes de TCP/IP,como FTP, telnet, NNTP y SMTP. Hablaremos más acerca de esto en el capítulo 5.

El núcleo de Linux ha sido desarrollado para utilizar lascaracterísticas del modo protegido de los microprocesadores 80386 y 80486. Enconcreto, hace uso de la gestión de memoria avanzada del modo protegido y otrascaracterísticas avanzadas.

Cualquiera que conozca la programación del 386 en el modoprotegido sabrá que este modo fue diseñado para su uso en UNIX (o tal vezMultics). Linux hace uso de esta funcionalidad precisamente.

El núcleo soporta ejecutables con paginación por demanda.Esto significa que sólo los segmentos del programa que se necesitan se carganen memoria desde el disco. Las páginas de los ejecutables son compartidasmediante la técnica copy-on-write, contribuyendo todo ello a reducir lacantidad de memoria requerida para las aplicaciones.

Con el fin de incrementar la memoria disponible, Linuximplementa la paginación con el disco:

Puede tener hasta 256 megabytes de espacio de intercambio o "swap"en el disco duro. Cuando el sistema necesita más memoria, expulsará páginasinactivas al disco, permitiendo la ejecución de programas más grandes oaumentando el número de usuarios que puede atender a la vez. Sin embargo, elespacio de intercambio no puede suplir totalmente a la memoria RAM, ya que elprimero es mucho más lento que ésta.

La memoria dedicada a los programas y a la cache de disco está unificada.Por ello, si en cierto momento hay mucha memoria libre, el tamaño de la cachede disco aumentará acelerando así los accesos.

Los ejecutables hacen uso de las librerías de enlace dinámico. Estosignifica que los ejecutables comparten el código común de las librerías enun único fichero, como sucede en SunOS. Así, los ejecutables serán máscortos a la hora de guardarlos en el disco, incluyendo aquellos que hagan uso demuchas funciones de librería. También pueden enlazarse estáticamente cuandose deseen ejecutables que no requieran la presencia de las librerías dinámicasen el sistema. El enlace dinámico se hace en tiempo de ejecución, con lo queel programador puede cambiar las librerías sin necesidad de recompilación delos ejecutables.

Para facilitar la depuración de los programas, el núcleo deLinux puede generar volcados de la imagen de memoria de los programas (ficheroscore). Entre esto y la posibilidad de compilar ejecutables con soporte dedepuración, el programador podrá averiguar la causa de los fallos de suprograma.

Las funciones principales de este sistema operativo son:

Sistema multitarea En Linux es posible ejecutar varios programas a la vez sinnecesidad de tener que parar la ejecución de cada aplicación.

Sistema multiusuario Varios usuarios pueden acceder a las aplicaciones yrecursos del sistema Linux al mismo tiempo. Y, por supuesto, cada uno de ellospuede ejecutar varios programas a la vez (multitarea).

Shells programables Un shell conecta las ordenes de un usuario con el Kernelde Linux (el núcleo del sistema), y al ser programables se puede modificar paraadaptarlo a tus necesidades. Por ejemplo, es muy útil para realizar procesos ensegundo 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 Kernelel enlace o controlador necesario con el dispositivo, haciendo que el Kernel yel enlace se fusionen. Linux posee una gran adaptabilidad y no se encuentralimitado como otros sistemas operativos.

Comunicaciones Linux es el sistema más flexible para poderconectarse a cualquier ordenador del mundo. Internet se creó y desarrollodentro del mundo de Unix, y por lo tanto Linux tiene las mayores capacidadespara navegar, ya que Unix y Linux son sistemas prácticamente idénticos. Conlinux podrá montar un servidor en su propia casa sin tener que pagar lasenormes cantidades de dinero que piden otros sistemas.

3. Programación

LINUX es un sistema desarrollado completamente en C, con eluso de algunas librerías hechas en ensamblador. Actualmente Cuenta con elsistema X Windows que es un sistema de administración gráfico por lo que sehan incorporado otros lenguajes de programación para el desarrollo deaplicaciones como el Java y Visual C.

Instalación:

Procesador y Tarjeta Madre:

Actualmente Linux soporta sistemas con una CPU Intel14 80386, 80486, oPentium/Pro. Esto incluye todas las variantes del tipo de CPU, como el 386SX,486SX, 486DX, y 486DX2. Los "clónicos" no Intel, como AMD y Cyrixtambién funcionan con Linux .Linux ya soporta, en la actualidad a otrasarquitecturas tales como ALPHA, Amiga, PowerPc, etc.

Si se tiene un 80386 o 80486SX, puede que también quiera aprovechar elcoprocesador matemático, si bien no es imprescindible (el núcleo de Linuxpuede emular el coprocesador si no cuenta con uno). Están soportados todos loscopros estándar, tales como los IIT, Cyrix FasMath, e Intel.

La placa base debe ser de arquitectura ISA o EISA en cuanto a bus se refiere.

Estos términos definen cómo interactúa el sistema con los periféricos yotros componentes por medio del bus principal. La mayoría de los sistemasvendidos hoy son de bus ISA o EISA. El bus MicroChannel (MCA), que se encuentraen máquinas como los IBM/PS2 no está soportado actualmente.

Los sistemas que usan arquitectura de bus local (para accesosmás rápidos en vídeo y disco) también están soportados. Es recomendable quetenga una arquitectura de bus local estándar como pueda ser el Bus Local VESA,PCI también está soportado

4. Requisitos

Requisitos de memoria

Linux, comparado con otros sistemas operativos avanzados, necesita muy pocamemoria para funcionar . Debería contar con un mínimo de 2 megabytes de RAM;sin embargo, es altamente recomendable tener 4 megabytes. Cuanta más memoriatenga más rápido irá su sistema.

Linux soporta el rango completo de direcciones de 32-bits delos 386/486; es decir, utilizará toda la memoria RAM de forma automática, y seapañará sin problemas con tan sólo 4 megabytes de RAM, incluyendoaplicaciones "pedigüeñas" como X-Window, Emacs, y demás. Sinembargo, disponer de más memoria es casi tan importante como tener unprocesador más rápido. 8 megabytes es más que suficiente para uso personal;16 megabytes o más pueden ser necesarios si espera una fuerte carga de usuariosen el sistema.

La mayoría de los usuarios de Linux, reservan una parte deldisco duro para espacio de intercambio ("swapping") que se usa comoRAM virtual. Incluso si dispone de bastante memoria RAM física en su máquina,puede que quiera utilizar un área de "swap" .

El área de "swap" no puede reemplazar a unamemoria física RAM real, pero puede permitir a su sistema ejecutar aplicacionesmás grandes guardando en disco duro aquellas partes de código que estáninactivas.

Requisitos de la controladora de disco duro

No se necesita un disco duro para ejecutar Linux; se puede ejecutar unsistema mínimo completamente desde disquete. Sin embargo, resulta lento y muylimitado, y de todas formas, muchos usuarios tienen acceso a almacenamiento endisco duro. Se debe tener una controladora AT-estándar (16-bit). El núcleosoporta controladoras XT-estándar (8 bit); aunque la mayoría de lascontroladoras usadas hoy son AT-estándar. Linux debería soportar todas lascontroladoras MFM, RLL, e IDE. La mayoría, pero no todas, las controladorasESDI están soportadas sólo aquellas que hacen emulación hardware de la ST506.

La regla general para controladoras que no sean SCSI, es que si puede accedera las unidades (disco y/o disquete) desde MS-DOS u otro sistema operativo, deberíapoder hacerlo desde Linux.

Linux también soporta un número de controladoras de disco SCSI, si bien elsoporte para SCSI es más limitado a causa de la gran cantidad de estandars queexisten para el interfaz de las controladoras. Las controladoras SCSIsoportadas16 incluyen las Adaptec AHA1542B, AHA1542C, AHA1742A (versión de BIOS1.34), AHA1522, AHA1740, AHA1740 (controladora SCSI-2, BIOS 1.34 en modomejorado); Future Domain 1680, TMC-850, TMC-950; Seagate ST-02; UltraStor SCSI;Western Digital WD7000FASST. Las controladoras clónicas basadas en estastarjetas también deberían funcionar.

Requisitos de espacio en disco

Para instalar Linux, se necesitará tener algo de espacio libre en el discoduro. Linux soporta múltiples discos duros en la misma máquina; puede disponerde espacio para Linux en múltiples unidades si es necesario.

La cantidad de espacio en disco duro que se necesitará depende en granmedida de las necesidades de cada uno y de la cantidad de software que se va ainstalar. Linux es relativamente pequeño en relación a las implementaciones deUNIX; uno podría correr un sistema completo con 10-20 megabytes de espacio endisco. Sin embargo, si se quiere disponer de espacio para expansiones, y parapaquetes más grandes como X Windows, necesitará más espacio. Si se planeapermitir a múltiples usuarios utilizar la máquina, se tendrá que dejarespacio para sus ficheros.

También, a menos que se tenga un montón de memoria RAM física (16megabytes o más), se necesitará crear espacio de intercambio("swap"), para ser usado como RAM virtual.

Cada distribución de Linux normalmente viene con algún queotro texto que debería ayudarla estimar la cantidad precisa de espacio areservar en función del software que se planee instalar. Puede ejecutarse unsistema mínimo con menos de 20 megabytes; un sistema completo con toda laparafernalia en 80 megabytes o menos; y un sistema grande con sitio para muchosusuarios y espacio para futuras expansiones en un rango de 100-150 megabytes. Denuevo, estas cifras son meramente orientativas; uno tendrá que decidir, segúnsus necesidades y objetivos, los requerimientos específicos de almacenamientopara su sistema.

Requisitos de monitor y adaptador de vídeo

Linux soporta todas las tarjetas de vídeo estándar Hercules, CGA, EGA, VGA,IBM monocromo, y Super VGA así como monitores para el interfaz por defectobasado en texto. En general, si la combinación que tiene de monitor y tarjetade vídeo funcionan bajo otro sistema operativo como MS-DOS, debería funcionarperfectamente con Linux. La genuínas tarjetas CGA de IBM sufren el (d)efectonieve ("snow") bajo Linux, por lo que no es muy recomendable su uso.

Los entornos gráficos como el Sistema X Window tienen requerimientos propiosde hardware para la tarjeta de vídeo.

5. Puesta a Punto

La Puesta a Puntos del sistema LINUX se realiza a través de órdenesdirectas que se le dan al intérprete de comandos, tales instrucciones sirvenpara crear directorios, alta de cuentas, solución de problemas tanto dehardware como de software. Con la introducción del sistema X Windows laadministración se realiza de una manera gráfica a través de ventanas y el usodel mouse.

Operación:

La operación del sistema es cómoda, siempre y cuando setengan los conocimientos necesarios, como conocimientos mínimos se requierenlos necesarios para usar el UNÍS, lo demás es pan comido, ya que lo que setiene que aprender demás es el uso de las aplicaciones que se instalarán en elsistema operativo. Con la introducción de X Windows todo es ya más sencillodebido a es una GUI (Graphic User Interface) por que sefamiliariza uno con el uso de ventanas y puntero, tal y como si fueraMS-Windows.

Mantenimiento:

LINUX posee el ext2, éste es un sistema de archivos mucho másavanzado que el MS-DOS, con soporte de corrección y detección de errores (loscuales inician al encender la computadora después de un apagado no correcto),compresión de archivos, mayor tolerancia a la fragmentación de archivos y conunos tiempos de respuesta muy superiores, aunque a un costo superior deutilización de memoria.

Actualización:

Las actualizaciones pueden bajarse del internet de forma gratuita desde lossitios oficiales de Linux. La comunidad Linux es muy dinámica. Las versionesnuevas del núcleo aparecen cada pocas semanas, y otros programas se actualizancasi tan a menudo. Por esto, los nuevos usuarios de Linux sienten a menudo lanecesidad de actualizar sus sistemas constantemente para mantener el paso de loscambios.

No sólo ésto no es necesario, sino que es una pérdida de tiempo. Paramantenerse al día de todos los cambios del mundo Linux, uno debería utilizartodo su tiempo actualizando en vez de usando su sistema.

Pero entonces, cuándo se debe actualizar?. Alguna gente piensa que se debeactualizar cuando se libera una nueva versión de distribución . Por ejemplo,cuando Slackware (sistema de Instalación del LINUX) presenta una nueva versión.

Muchos usuarios Linux reinstalan completamente sus sistemas con la nuevaversión Slackware, cada vez. Esto, también, es una pérdida de tiempo. Engeneral, los cambios de las versiones Slackware son pequeños. Bajarse yreinstalar 30 discos cuando sólo ha cambiado un 10% del software es, porsupuesto, inútil.

La mejor forma de actualizar el sistema es haciéndolo a mano: actualizandosolo aquellos paquetes de software que se sepa que hay que actualizar. Estoasusta a un montón de gente: quieren saber qué actualizar y cómo, y qué seromperá si no actualizan. Para tener éxito con Linux, es importante superarlos temores del "hágalo usted mismo" que es lo que Linux es, a fin decuentas. De hecho, una vez que se tenga el sistema trabajando y todo el softwarecorrectamente configurado, la reinstalación de una nueva versión no dudará enlimpiar toda la configuración y todo estará roto otra vez, igual que laprimera vez que instaló su sistema. Volver atrás de ésta forma no esnecesario, todo lo que se necesita es algún conocimiento acerca de cómoactualizar el sistema y de cómo hacerlo bien.

Nos encontraremos con que cuando se actualice un componente del sistema, notienen por que fallar los demás. Realmente, la actualización insensata paramantenerse en la ola" no es tan importante. Esto no es MS-DOS o MicrosoftWindows. No hay ninguna razón importante para ejecutar la versión másreciente de todo el software. Si se desean o necesitan funciones de una versiónnueva, entonces es necesario actualizar. Si no, no es necesario. En otraspalabras, hay que actualizar sólo lo que necesite y cuando se tenga que hacer.No hay que actualizar sólo por el mero hecho de actualizar. Hacerlo sólogastaría un montón de tiempo y esfuerzo intentando mantenerse al día.

El software más importante para actualizar en el sistema es el núcleo, laslibrerías y el compilador gcc. Estas son las tres partes esenciales delsistema, y en algunos casos cada uno depende de las otras para que todo funcionebien. Todos ellos se toman los fuentes actualizados y se compilan manualmente.La mayor parte del resto del software del sistema no necesita ser actualizadoperiódicamente.

6. Conclusiones

La conclusión más importante es que Linux es una excelenteelección para trabajar con UNIX a nivel personal. Linux permite desarrollar yprobar el software UNIX en su PC, incluyendo aplicaciones de bases de datos y XWindows. Con Linux, se puede correr un sistema UNIX y adaptarlo a lasnecesidades. La instalación y uso de Linux es también una excelente manera deaprender UNIX si no se tiene acceso a otras máquinas UNIX.

Linux no es solo para los usuarios personales de UNIX. Esrobusto y suficientemente completo para manejar grandes tareas, así comonecesidades de cómputo distribuidas. Muchos negocios especialmente los pequeñosse están cambiando a Linux en lugar de otros entornos de estación de trabajobasados en UNIX. Grandes vendedores de software comercial se están dando cuentade las oportunidades que puede brindar un sistema operativo gratuito.

Linux es, propiamente, el núcleo de un sistema operativo. Es decir, elconjunto de programas que controla los aspectos más básicos del funcionamientode un ordenador. Y como ya se dijo su desarrollo lo inició en 1991 LinusTovalds, entonces estudiante en la Universidad de Helsinki, en Finlandia, y secompletó con miles de aportaciones a través de Internet.

Trabajo enviado por:
Francisco Armando Dueñas Rodríguez
fduenas_@hotmail.com
Edad: 23 años
Universidad La Salle
Cancún, Quintana Roo México

Compartir Enviar a menéame  Añadir a tus marcadores de Google  Enviar a noticias Top    Añadir a del.icio.us     Añadir a tus marcadores en Yahoo! 


Publicación enviada por Francisco Armando Dueñas Rodríguez
Contactar mailto:fduenas_@hotmail.com


Código ISPN de la Publicación EpVAZVVlpFjPTtDqcO
Publicado Friday 1 de August de 2003

Ultimas Publicaciones en ilustrados.com


ilustrados.com nace con el fin difundir el conocimiento publicando trabajos de investigación, monografias, tesis, presentaciones powerpoint y afines. Publicar trabajos en ilustrados.com ha alcanzado prestigio y reconocimiento internacional siendo cada vez más el número de académicos, empresas, investigadores, científicos que consultan las publicaciones de nuestro portal.


Administración y Finanzas
Agricultura y Ganadería
Anatomía
Antropología
Arqueología y Paleontología
Arquitectura
Arte y Cultura
Astronomía
Biografías
Biología
Ciencia y Tecnología
Computación e Informática
Comunicaciones
Contabilidad
Deportes y Educación Física
Derecho
Derechos Humanos
Ecología
Economía
Educación
Enfermedades
Estadística
Filosofía y Ontología
Física
Geografía
Hardware
Historia
Ingeniería
Internet
Lenguaje y Literatura
Marketing y Publicidad
Mitología
Matemática y Lógica
Música
Nutrición y Ciencias Alimentarias
Política
Programación
Psicología
Química
Recursos Humanos
Redes
Religión
Salud y Medicina
Sistemas Operativos
Sociología
Software
Turismo
Zoología