martes, 19 de abril de 2011

SISTEMA OPERATIVO

SISTEMA OPERATIVO

(SO) Es un conjunto de programas que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal ejecución del resto de las operaciones.








El sistema operativo es un software compuesto de varios programas, siendo este conjunto de programas la parte más importante de un computador, ya que se encarga de reconocer el procesador, las unidades de almacenamiento y los distintos periféricos, dispositivos de entrada, de almacenamiento y salida, y también los gestiona.  Sin un sistema operativo un computador no es capaz de funcionar, por que no tendría ninguna forma de ser usado por el usuario.



El sistema operativo también es el que cumple la función de ser el interprete entre el usuario y el computador. Y así  el usuario tiene la facilidad de tener a su disposición una interfaz legible, y que por medio de comandos ya establecidos se pueda comunicar con el computador, sin necesidad de tener conocimientos avanzados de programación.






PROGRAMA PRINCIPAL DE UN SISTEMA OPERATIVO

INTERPRETE DE COMANDOS

Es el denominado programa principal de un sistema operativo o núcleo del sistema. En caso del sistema operativo DOS (Sistema Operativo de Disco) dicho intérprete de comandos se conoce como el Command.com. En sistemas operativos como UNIX, LINUX, Windows, se llama Kernel.



El intérprete de ordenes o de comandos, es un programa informático que tiene la capacidad de traducir las órdenes que introducen los usuarios, mediante un conjunto de instrucciones facilitadas por el mismo directamente al núcleo  y al conjunto de herramientas que forman el sistema operativo.

Al ingresar la orden con la tecla"intro", el interprete analiza la secuencia de caracteres ingresada y, si la sintaxis de la orden es correcta, la ejecuta, recurriendo para ello a las funciones que ofrece el sistema operativo o el programa que representa, bien sea un gestor de datos de banco, una sesión de FTP, de ssh, etc. La respuesta la usuario se representa en el monitor o en forma de segundo plano. Se trabaja de forma interactiva, es decir, usuario y máquina se comunican de manera sucesiva. 



lunes, 18 de abril de 2011

FUNCIONES DEL SISTEMA OPERATIVO

FUNCIONES


El sistema operativo tiene 4 grandes funciones:

  •  Es el que coordina y manipula el hardware del computador.
  •  Organiza los archivos en diversos dispositivos de almacenamiento.
  • Gestiona los errores de hardware  y la pérdida de datos.
  • Se encarga de brindar al usuario una interfaz con la cual pueda operar de manera fácil todas las funciones que pueda realizar, mediante comandos.


SISTEMAS OPERATIVOS EXISTENTES


SISTEMAS OPERATIVOS

Los sistemas operativos más conocidos son:

1. Microsoft Windows: Es el nombre de una serie de sistemas operativos desarrollados por Microsoft desde 1981, año en que el proyecto se denominaba "Interfaz Manager".



Fue anunciado en 1983, desde ese entonces, Microsoft, comercializó por primera vez, el entorno operativo denominado Windows en Noviembre de 1985 como complemento para MS-DOS, en respuesta  al creciente interés del mercado  en una interfaz gráfica de usuario (GUI). Microsoft llego a dominar el mercado de ordenadores personales del mundo, superando a Mac OS, el cual había sido introducido antes que Windows.


Windows NT: La familia de Windows NT, fue hecha y comercializada por un mayor uso de fiabilidad de negocios. El primer lanzamiento fue de MS Windows NT 3.1 en 1993. Fue seguido por NT 3.5 en 1994, NT 3.51 en 1995, NT 4.0 en 1996, y Windows 2000 en el 2ooo, que es la última versión de Windows NT, que no incluye la activación de productos de Microsoft.



2. UNIX: Es un sistema operativo de tiempo compartido, controla los recursos de una computadora y los asigna entre los usuarios. Permite a los usuarios correr sus programas. Controla los dispositivos de periféricos conectados al equipo.
Este sistema operativo tiene las siguientes características:


  • Es multiusuario, con capacidad de simular multiprocesamiento y procesamiento no interactivo.
  • Esta escrito en un lenguaje de alto nivel: C.
  • Emplea un sistema jerárquico de archivos, con facilidades de protección, cuentas y procesos.
  • Dispone de un lenguaje de control programable llamado: SHELL.
  • Tiene capacidad de interconección de procesos.
  • Permite comunicación entre procesos.



    3. Mac OS: (Macintoch Operating System), en español: sistema operativo de macintoch. Es el nombre del sistema operativo creado por Apple para su linea de computadoras macintoch. Es conocido por haber el primer sistema dirigido al publico con una interfaz gráfica compuesta por la interacción del mouse con ventanas, iconos y menús.



    Los primeros sistemas operativos Macintoch inicialmente consistieron en dos programas llamados: System y Filder, cada uno con su propio número de versión. El System 7.5.3 fue la primera en incluir el logo Mac OS y Mac OS 7.6 fue el primero en ser llamado Mac OS.



    4. MS-DOS: (MicroSoft Disk Operating System), Sistema operativo de disco de Microsoft. Es un sistema operativo para computadores basados en x86. Fue el miembro más popular de la familia de sistema operativo DOS de Microsoft, y el principal sistema para computadoras personales compatible con IBM PC, en la década de 1980 y mediados de 1990, hasta que fue sustituida gradualmente por sistemas operativos que ofrecían una interfaz gráfica de usuario, en particular por varias generaciones de Microsoft Windows.



    Este sistema operativo es monotarea y monousuario para ordenadores personales.

    Se desarrollo a partir de QDOS(Quick and Dirty Operating System), también conocido como 86-DOS. Su desarrollo se inició oficialmente en 1981 y fue lanzado en 1982 como MS-DOS 1.0.  Tuvo 8 versiones principales y alcanzó gran difusión pero fue gradualmente reemplazado por sistemas operativos que ofrecían una interfaz gráfica de usuario(GUI), en particular, por varias generaciones del sistema operativo Microsoft Windows.



    5. OS/2: Es un sistema operativo de IBM. Se desarrollo inicialmente de manera conjunta entre Microsoft e IBM, hasta que Microsoft  decidió seguir su camino con Windows 3.0 e IBM se ocupo por completo de OS/2.
    La primera versión apareció en 1987 y era de 16 bits, aunque trabajaba exclusivamente en el modo protegido del procesador Intel 80286. Después apareció la versión 1.1, la cual incorporaba la primera versión del Presentation Manager, el gestor de ventanas de OS/2, con una apariencia idéntica a la de todavía inexistente Windows 3.0. Dos versiones nuevas aparecieron poco después, la 1.2 y la 1.3, también de 16 bits. Fue entonces cuando comenzaron las discusiones entre Microsoft e IBM, porque IBM quería desarrollar una versión de 32 bits para los procesadores Intel 80386 y posteriores, mientras que Windows proponía mejorar la de 16 bits.



    Algunas características de este sistema operativo eran: 

    • Soporte multitarea.
    • El sistema operativo era de texto, permitía múltiples aplicaciones corriendo a la vez, aunque solo podía mostrar una aplicación el la pantalla.
    • Permitía una sesión de DOS.
    • El tamaña máximo de discos soportados era de 32MB.




    domingo, 17 de abril de 2011

    DISTINTAS FUNCIONES DEL SISTEMA OPERATIVO

    DISTINTAS FUNCIONES DEL SISTEMA OPERATIVO



    Las distintas funciones de los sistemas operativos son:

    1. Gestión de Tareas: Acepta todos los trabajos y los conserva hasta su finalización.

    2. Interpretación de Comandos: Interpreta los comandos que le permiten al usuario comunicarse con el computador.

    3. Control de Recursos: Coordina y manipula el hardware del computador.

    4. Manejo de Dispositivos de E/S: Organiza los archivos en diversos dispositivos de almacenamiento.

    5. Manejo de Errores: Gestiona los Errores de hardware y la pérdida de datos.

    6. Secuencia de Tareas: Administra la manera en que se reparten los procesos y define el orden en que estos se ejecutan.

    7. Protección: Evita que las acciones de un usuario afecten el trabajo que este realizando otro usuario.

    8. Multiacceso: Un usuario se puede conectar a otra máquina sin necesidad de estar cerca de ella.

    9. Contabilidad  de Recursos: Establece y administra el costo que se le cobra a un usuario por utilizar determinados recursos.

    CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS


    CLASIFICACIÓN

    Los sistemas operativos se clasifican en tres aspectos, los cuales son: 

    1. Por el número de usuarios: 

    • Sistema operativo Monousuario: Son aquellos que soportan a un usuario a la vez, sin importar el número de procesadores que tenga el computador o el número de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo.
    • Sistema operativo Multiusuario: Son capaces de dar varios servicios a la vez, ya sea por medio de varias terminales conectadas al computador (servidor) o por medio de sesiones remotas en una red de comunicaciones. No importa el número de procesadores en la máquina ni el número de procesos que cada usuario puede ejecutar simultáneamente.
    2. Por el número de tareas:
    • Sistema operativo Monotarea:  Son aquellos que sólo permiten una tarea a la vez por usuario. Puede darse el caso de un sistema multiusuario y monotarea, en el cual se admiten varios usuarios al mismo tiempo pero cada uno de ellos puede estar haciendo solo una tarea a la vez.
    • Sistema operativo Multitarea: Es aquél que le permite al usuario estar realizando varias labores al mismo tiempo.

    3. Por el número de procesadores: 
    • Sistema operativo de Uniproceso: Es aquél que es capaz de manejar solamente un procesador del computador, de manera que si el computador tuviese más de uno le sería inútil. Ejemplo: DOS y MacOS.
    • Sistema operativo de  Multiproceso: Se refiere al número de procesadores del sistema, que es más de uno y éste es capaz de usarlos todos para distribuir su carga de trabajo. Generalmente estos sistemas trabajan de dos formas:
    ·        Asimétrica: El sistema operativo selecciona a uno de los procesadores el cual jugará el papel de procesador maestro y servirá como eje para distribuir la carga a los demás procesadores que reciben el nombre de esclavos.
    ·        Simétrica: Los procesos o partes de ellos son enviados indistintamente a cualquiera de los procesadores disponibles, teniendo teóricamente, una mejor distribución y equilibrio en la carga de trabajo bajo este esquema.

    sábado, 16 de abril de 2011

    ORGANIZACIÓN DE UN SISTEMA OPERATIVO

    ORGANIZACIÓN DE UN SISTEMA OPERATIVO


    La organización del sistema operativo consta de 4 partes, las cuales son:


    • Primer Nivel: es el  mas bajo,  contiene contacto directo con los dispositivos electrónicos y es el núcleo.
    • Segundo Nivel: se encuentran la manipulación de los discos, el monitor,teclado y la gestión de los procesos son rutinas que implementan los servicios  que ofrece el sistema operativo.
    • Tercer Nivel: se encuentra el gestor de la memoria y  de archivos.
    • Cuarto Nivel:  se encuentran los procesos que permiten la comunicación del usuario con el sistema operativo: las ordenes propias del sistema operativo y el caparazón entre los niveles inmediatamente superior e inferior solo es posible la comunicación

    QUE ES UN PROCESO (INFORMÁTICA)


    PROCESO

    En informática, un proceso es un programa en ejecución, los procesos son gestionados por el sistema operativo y están formados por:
    1. Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.
    2. Su estado de ejecución en un momento dado, esto es, los valores de los registros de la CPU para dicho programa.
    3. Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.
    4. Otra información que le permite al sistema operativo su planificació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 mediante el cual un proceso crea otro proceso se llama bifurcación. 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.




    ESTADOS DE PROCESO


    ESTADOS DE PROCESO



    Ejecutando: Es que la tarea se esta realizando. Es el proceso que tiene dado un procesador y esta ejecutando las instrucciones.

    Listo: En este estado, todas las tareas están preparadas, para que cuando un procesador quede libre, las ejecute. 

    Espera: Son las que están esperando a que se cumpla una condición y por lo tanto no están preparadas para cargar un programa, se puede definir como estado suspendido o bloqueado.

    Nuevo: Quiere decir que es cuando el proceso es creado, o se esta creando.

    Finalización o terminado: El proceso ha terminado su ejecución.




    MASTER BOOT RECORD (MBR)

    MASTER BOOT RECORD 

    Un Master Boot Record (MBR), es el primer sector "sector cero", de un dispositivo de almacenamiento de datos, como un disco duro. A veces es empleado para el arranque del sistema operativo con Bootstrap, otras veces es usado para guardar una tabla de particiones, y en ocaciones, se usa solo para identificar un dispositivo de disco individual, aunque en algunas máquinas , esto último no se usa y es ignorado.



    viernes, 15 de abril de 2011

    COMPOSICIÓN DE UN MASTER BOOT RECORD


    COMPOSICIÓN

    El Master Boot Record esta compuesto por un código ejecutable y las entradas de la tabla de particiones.

    El almacenamiento en un Master Boot Record es de la siguiente manera: 


    DirecciónDescripción
    0x0000Área de código
    0x01B84 bytes; firma del disco (opcional)
    0x01BEPara entradas en la tabla de particiones primarias de 16 bytes (esquema estándar de la tabla de particiones del MBR)
    0x01FE2 bytes; firma del MBR (0xAA55)


    El primer sector físico del disco, que es de 512b, también llamado pista cero, esta compuesto de la siguiente manera:


    446 bytesCódigo Máquina (gestor de arranque)
    64 bytesTabla de Particiones (4 registros que definen cada una de las particiones primarias)
    2 bytesFirma de unidad arrancable ("55h AAh" en hexadecimal)

    BOOTSTRAP


    BOOTSTRAP

    Es un término utilizado para describir el arranque, o proceso de inicio de cualquier ordenador. Suele referirse al programa que arranca un sistema operativo, como por ejemplo: GRUB, LiLo o NTLDR. Se ejecuta tras un proceso POST del BIOS. También es llamado Bootstrap Loader, que significa "cargador de inicialización".

    Una vez que el computador arranca, comienza a ejecutarse el código que se encuentra en la dirección  F000:FFF0, que pertenece al ROM-BIOS y es el encargado de realizar una serie de pruebas e inicializaciones. Esta rutina se llama POST (Power On Self-Test). Una vez que el BIOS termina con sus tests e inicializaciones  carga el primer sector (cilindro 0, cabeza 0, sector 1) en la dirección 0000:7C00 (7C00 lineal), comprueba que contenga código válido (comprueba que esté firmado con 0x55 y 0xAA en los bytes 511 y 512 respectivamente) y salta a esa dirección (CS:IP apuntan a esa dirección)


    DISTRIBUCIÓN DEL SECTOR DE ARRANQUE DE UN DD

    DISTRIBUCIÓN DEL SECTOR DE ARRANQUE DE UN DISCO DURO:


    El sector de arranque es el primer sector de todo el disco duro (cilindro 0, cabeza 0, sector 1).

    Los 512b del sector de arranque del disco duro están distribuidos de la siguiente manera:


    446 bytesCódigo Máquina (gestor de arranque)
    64 bytesTabla de Particiones (4 registros que definen cada una de las particiones primarias)
    2 bytesFirma de unidad arrancable ("55h AAh" en hexadecimal)

    NÚCLEO O KERNEL Y SU FUNCIÓN

    NÚCLEO Y SU FUNCION

    Núcleo (también conocido en español como Kernel). Es la parte fundamental de un sistema operativo. Es el software responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. 

    Como hay muchos programas y el acceso al hardware es limitado, el núcleo también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como multiplexado. Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del hardware. Esto permite esconder la complejidad, y proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso para el programador.


    TIPOS DE NÚCLEO

    CLASES DE NÚCLEOS

    No necesariamente se debe utilizar un núcleo para usar una computadora. Los programas pueden cargarse y ejecutarse directamente en una computadora "vacía", siempre y cuando sus autores quieran desarrollarlos sin usar ninguna abstracción del hardware ni ninguna ayuda del sistema operativo. Así eran que se utilizaban las primeras computadores: para usar distintos programas se tenía que reiniciar y reconfigurar la computadora cada vez. 

    Existen 4 tipos de núcleos:

    1. Núcleos Micronúcleos: (microkernel) proporcionan un pequeño conjunto de abstracciones simples del hardware, y usan las aplicaciones llamadas servidores para ofrecer mayor funcionalidad.
    Algunos ejemplos de micronúcleos son: 
    • AIX
    • BeOS
    • Minix
    • MorphOS
    • QNX
    • RadiOS
    • VSTa
    • Hurd


    2. Núcleos Monolíticos: facilitan abstracciones del hardware subyacente realmente potentes y variadas.
    En comparación con los micronúcleos, se prefieren los monolíticos,  debido al menor nivel de complejidad que comporta el tratar con todo el código de control del sistema en un solo espacio de direccionamiento. Por ejemplo, XNU, el núcleo de Mac OS X, está basado en el núcleo Mach 3.0 y en FreeBSD, en el mismo espacio de direccionamiento para disminuir la latencia que comporta el diseño de micronúcleo convencional.



    3. Núcleos Híbridos: (micronúcleos modificados) Son muy parecidos a los micronúcleos puros excepto porque incluyen código adicional en el espacio de núcleo para que se ejecute más rápidamente.



    4. Los Exonúcleos:  no facilitan ninguna abstracción, pero permiten el uso de bibliotecas que proporcionan mayor funcionalidad gracias al acceso directo o casi directo al hardware.



    jueves, 14 de abril de 2011

    KERNEL



    KERNEL

    El Kernel consiste en la parte principal del código del sistema operativo, el cual se encarga de controlar y administrar los servicios y peticiones de recursos y de hardware con respecto a uno o varios procesos, este se divide en 5 etapas o niveles:

    • Nivel 1: Gestión de Memoria: Proporciona las facilidades de bajo nivel para la gestión de memoria secundaria necesaria para la ejecución de procesos.
    • Nivel 2: Procesador: Se encarga de activar los cuantums de tiempo para cada uno de los procesos, creando interrupciones de hardware cuando no son respetadas.
    • Nivel 3: Entrada/Salida: Proporciona las facilidades para poder utilizar los dispositivos de E/S requeridos por procesos.
    • Nivel 4: Aplicación o Intérprete de Lenguajes: Facilita la comunicación con los lenguajes y el sistema operativo para aceptar las órdenes en cada una de las aplicaciones.
    • Nivel 5: Control de Archivos: Proporciona la facilidad para el almacenamiento a largo plazo y manipulación de archivos con nombre, va asignando espacio y acceso de datos en memoria.

    NOMBRE DE LOS DISCOS EN LINUX





    NOMBRE DE LOS DISCOS EN LINUX




    En Linux, los nombres de los discos y las particiones pueden ser diferentes que los usados en otros sistemas operativos. 
    Así son llamados:



    Dispositivo en MsDos/Windows
    En Linux
    Primera disquetera (A:)
    /dev/fd0
    Primer disco duro (todo el disco)
    /dev/hda
    Primer disco duro, 1ª partición (primaria ó secundaria)
    /dev/hda1
    Primer disco duro, 2ª partición (primaria ó secundaria)
    /dev/hda2
    Primer disco duro, partición lógica 1
    /dev/hda5
    Primer disco duro, partición lógica 2
    /dev/hda6
    Segundo disco duro (todo el disco)
    /dev/hdb
    Segundo disco duro, 1ª partición (primaria ó secundaria)
    /dev/hdb1
    Primer disco duro SCSI (todo el disco)
    /dev/sda
    Primer disco duro SCSI, 1ª partición
    /dev/sda1
    Segundo disco duro SCSI (todo el disco)
    /dev/sdb
    Segundo disco duro SCSI, 1ª partición
    /dev/sdb1



    Las particiones en cada disco son representadas añadiendo un número decimal al nombre del disco: sda1 y sda2 representan a la primera y segunda partición en la primera unidad de disco SCSI en el sistema.