Monografias.com > Computación > Sistemas Operativos
Descargar Imprimir Comentar Ver trabajos relacionados

Ciclo de Vida del Sistema Operativo LINUX




Enviado por fduenas_




    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í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.

    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
    muchisimos programas útiles totalmente gratuitos y con su
    código fuente. La cuestión es que, como ya
    mencionamos, Linux es un
    sistema operativo totalmente gratuito.

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

    El sistema ha sido diseñado y programado por
    multitud de programadores alrededor del mundo. El núcleo
    del sistema sigue en continuo desarrollo
    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án disponibles para este
    sistema, y la calidad de los
    mismos aumenta de versión a versión. La gran
    mayoría de los mismos vienen acompañados del
    código fuente y se distribuyen gratuitamente bajo los
    términos de licencia de la GNU Public License.

    En los últimos tiempos, ciertas casas de software
    comercial han empezado a distribuir sus productos para
    Linux y la
    presencia del mismo en empresas aumenta
    rápidamente por la excelente relación calidad –
    precio que se
    consigue con Linux.

    2.
    Diseño

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

    El sistema Linux es compatible con ciertos
    estándares de UNIX a nivel de código fuente,
    incluyendo el IEEE POSIX.1, System V y BSD. Fue desarrollado
    buscando la portabilidad de los fuentes: casi
    todo el software gratuito desarrollado para UNIX se compila en
    Linux sin problemas. Y
    todo lo que se hace para Linux (código del núcleo,
    drivers, librerías y programas de usuario) 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ón
    abierta en la consola de texto y
    conmutar entre ellas fácilmente. A los usuarios del
    programa
    "screen" les resultará familiar esto.

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

    Linux soporta diversos sistemas de
    ficheros para guardar los datos. Algunos de
    ellos, como el ext2fs, han sido desarrollados
    específicamente para Linux. Otros sistemas de ficheros,
    como el Minix-1 o el de Xenix también están
    soportados. Y con el de MS-DOS se
    podrán acceder desde Linux a los disquetes y particiones
    en discos duros
    formateados con MS-DOS.
    Además, también soporta 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 con
    TCP/IP. Desde
    manejadores para las tarjetas de red
    más populares hasta SLIP/PPP, que permiten acceder a
    una red
    TCP/IP por el
    puerto serie. También se implementan PLIP (para
    comunicarse por el puerto de la impresora) y
    NFS (para acceso 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 las características del modo protegido de los
    microprocesadores 80386 y 80486. En concreto, hace
    uso de la gestión
    de memoria avanzada
    del modo protegido y otras características
    avanzadas.

    Cualquiera que conozca la programación del 386 en el modo protegido
    sabrá que este modo fue diseñado para su uso en
    UNIX (o tal vez Multics). 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 cargan en memoria desde el
    disco. Las páginas de los ejecutables son compartidas
    mediante la técnica copy-on-write, contribuyendo todo ello
    a reducir la cantidad de memoria requerida para las
    aplicaciones.

    Con el fin de incrementar la memoria
    disponible, Linux implementa 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áginas inactivas al disco, permitiendo la
    ejecución de programas más grandes o aumentando el
    número de usuarios que puede atender a la vez. Sin
    embargo, el espacio de intercambio no puede suplir totalmente a
    la memoria RAM, ya
    que el primero 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 cache de disco
    aumentará acelerando así los accesos.

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

    Para facilitar la depuración de los programas, el
    núcleo de Linux puede generar volcados de la imagen de memoria
    de los programas (ficheros core). Entre esto y la posibilidad de
    compilar ejecutables con soporte de depuración, el
    programador podrá averiguar la causa de los fallos de su
    programa.

    Las funciones
    principales de este 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 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.

    3.
    Programación

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

    Instalación:

    Procesador y Tarjeta
    Madre:

    Actualmente Linux soporta sistemas con una CPU Intel14
    80386, 80486, o Pentium/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 Cyrix también funcionan con Linux .Linux ya
    soporta, en la actualidad a otras arquitecturas tales como ALPHA,
    Amiga, PowerPc, etc.

    Si se tiene un 80386 o 80486SX, puede que también
    quiera aprovechar el coprocesador matemático, si bien no
    es imprescindible (el núcleo de Linux puede emular el
    coprocesador si no cuenta con uno). Están soportados todos
    los copros 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 y otros componentes por medio
    del bus principal.
    La mayoría de los sistemas vendidos hoy son de bus ISA o
    EISA. El bus MicroChannel (MCA), que se encuentra en máquinas
    como los IBM/PS2 no está soportado actualmente.

    Los sistemas que usan arquitectura de
    bus local (para accesos más rápidos en vídeo
    y disco) también están soportados. Es recomendable
    que tenga 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 poca memoria 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
    memoria tenga más rápido irá su
    sistema.

    Linux soporta el rango completo de direcciones de
    32-bits de los 386/486; es decir, utilizará toda la
    memoria RAM de
    forma automática, y se apañará sin problemas con
    tan sólo 4 megabytes de RAM, incluyendo
    aplicaciones "pedigüeñas" como X-Window, Emacs, y
    demás. Sin embargo, disponer de más memoria es casi
    tan importante como tener un procesador
    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 usuarios en el sistema.

    La mayoría de los usuarios de Linux, reservan una
    parte del disco duro
    para espacio de intercambio ("swapping") que se usa como RAM
    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 una
    memoria física
    RAM real, pero puede permitir a su sistema ejecutar aplicaciones
    más grandes guardando en disco duro aquellas partes de
    código que están inactivas.

    Requisitos de la controladora de disco duro

    No se necesita un disco duro para ejecutar Linux; se
    puede ejecutar un sistema mínimo completamente desde
    disquete. Sin embargo, resulta lento y muy limitado, y de todas
    formas, muchos usuarios tienen acceso a almacenamiento en
    disco duro. Se debe tener una controladora AT-estándar
    (16-bit). El núcleo soporta controladoras
    XT-estándar (8 bit); aunque la mayoría de las
    controladoras usadas hoy son AT-estándar. Linux
    debería soportar todas las controladoras MFM, RLL, e IDE.
    La mayoría, pero no todas, las controladoras ESDI
    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 acceder a las unidades (disco y/o disquete) desde
    MS-DOS u otro sistema operativo, debería poder hacerlo
    desde Linux.

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

    Requisitos de espacio en disco

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

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

    También, a menos que se tenga un montón de
    memoria RAM física (16 megabytes 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 que otro texto que
    debería ayudarla estimar la cantidad precisa de espacio a
    reservar en función
    del software que se planee instalar. Puede ejecutarse un sistema
    mínimo con menos de 20 megabytes; un sistema completo con
    toda la parafernalia en 80 megabytes o menos; y un sistema grande
    con sitio para muchos usuarios y espacio para futuras expansiones
    en un rango de 100-150 megabytes. De nuevo, estas cifras son
    meramente orientativas; uno tendrá que decidir,
    según sus necesidades y objetivos, los
    requerimientos específicos de almacenamiento
    para 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 defecto basado en texto. En general, si la
    combinación que tiene de monitor y
    tarjeta de vídeo funcionan bajo otro sistema operativo
    como MS-DOS, debería funcionar perfectamente con Linux. La
    genuínas tarjetas CGA de IBM sufren el (d)efecto nieve
    ("snow") bajo Linux, por lo que no es muy recomendable su
    uso.

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

    5. Puesta a
    Punto

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

    Operación:

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

    Mantenimiento:

    LINUX posee el ext2, éste es un sistema de
    archivos mucho
    más avanzado que el MS-DOS, con soporte de
    corrección y detección de errores (los cuales
    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 con unos tiempos de respuesta
    muy superiores, aunque a un costo superior de
    utilización de memoria.

    Actualización:

    Las actualizaciones pueden bajarse del internet de forma gratuita
    desde los sitios oficiales de Linux. La comunidad Linux
    es muy dinámica. Las versiones nuevas del
    núcleo aparecen cada pocas semanas, y otros programas se
    actualizan casi tan a menudo. Por esto, los nuevos usuarios de
    Linux sienten a menudo la necesidad de actualizar sus sistemas
    constantemente para mantener el paso de los cambios.

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

    Pero entonces, cuándo se debe actualizar?. Alguna
    gente piensa que se debe actualizar 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 nueva versión Slackware, cada vez. Esto,
    también, es una pérdida de tiempo. En general, los
    cambios de las versiones Slackware son pequeños. Bajarse y
    reinstalar 30 discos cuando sólo ha cambiado un 10% del
    software es, por supuesto, inútil.

    La mejor forma de actualizar el sistema es
    haciéndolo a mano: actualizando solo aquellos paquetes de
    software que se sepa que hay que actualizar. Esto asusta a un
    montón de gente: quieren saber qué actualizar y
    cómo, y qué se romperá si no actualizan.
    Para tener éxito
    con Linux, es importante superar los temores del "hágalo
    usted mismo" que es lo que Linux es, a fin de cuentas. De
    hecho, una vez que se tenga el sistema trabajando y todo el
    software correctamente configurado, la reinstalación de
    una nueva versión no dudará en limpiar toda la
    configuración y todo estará roto otra vez, igual
    que la primera vez que instaló su sistema. Volver
    atrás de ésta forma no es necesario, todo lo que se
    necesita es algún conocimiento
    acerca de cómo actualizar el sistema y de cómo
    hacerlo bien.

    Nos encontraremos con que cuando se actualice un
    componente del sistema, no tienen por que fallar los
    demás. Realmente, la actualización insensata para
    mantenerse en la ola" no es tan importante. Esto no es MS-DOS o
    Microsoft
    Windows. No hay ninguna razón importante para ejecutar la
    versión más reciente de todo el software. Si se
    desean o necesitan funciones de una versión nueva,
    entonces es necesario actualizar. Si no, no es necesario. En
    otras palabras, 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ólo gastarí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, las librerías y el compilador
    gcc. Estas son las tres partes esenciales del sistema, y en
    algunos casos cada uno depende de las otras para que todo
    funcione bien. Todos ellos se toman los fuentes
    actualizados y se compilan manualmente. La mayor parte del resto
    del software del sistema no necesita ser actualizado
    periódicamente.

    6.
    Conclusiones

    La conclusión más importante es que Linux
    es una excelente elección para trabajar con UNIX a nivel
    personal.
    Linux permite desarrollar y probar el software UNIX 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 UNIX.
    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 puede brindar
    un sistema operativo gratuito.

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

     

     

    Autor:

    Francisco Armando Dueñas
    Rodríguez

    Edad: 23 años
    Universidad La
    Salle
    Cancún, Quintana Roo México

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter