arquitectura de linux

18
CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS Arquitectura de Linux Alumnos: Cristopher Muñoz González José Ortiz Mura Pablo Vergara G.

Upload: tala-viveros

Post on 21-Jul-2015

442 views

Category:

Documents


0 download

TRANSCRIPT

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS

Arquitectura de Linux

Alumnos: Cristopher Muoz Gonzlez Jos Ortiz Mura Pablo Vergara G.

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS

ndiceIntroduccin El Ncleo o Kernel Intrprete de Comandos Shell Indicador del Sistema El Concepto de Lnea de Comandos Redirecciones Tubera de Comunicacin Sistemas de Archivos La Jerarqua del Sistema de Archivos Directorios Principales del Sistema Nombres de Archivos en Linux Comodines Tipos de Archivos Comandos para Manipular Archivos y Directorios Enlaces Conclusin Bibliografa 2 3 4 4 4 5 6 7 7 8 9 9 9 10 12 14 15

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS

Introduccin

El presente informe pretende explicar la estructura del sistema operativo Linux, basado en Unix, para lo cual se explicarn algunos trminos para quienes se inician en este sistema operativo. Linux se puede dividir generalmente en cuatro componentes principales: el ncleo (kernel), el Shell, el sistema de archivos y las utilidades. El ncleo es el programa central que ejecuta programas y gestiona dispositivos de hardware tales como los discos y las impresoras. El Shell proporciona una interfaz para el usuario. Recibe rdenes del usuario y las enva al ncleo para ser ejecutadas. El sistema de archivos, organiza la forma en que se almacenan los archivos en dispositivos de almacenamiento tales como los discos. Los archivos estn organizados en directorios. Cada directorio puede contener un nmero cualquiera de subdirectorios, cada uno de los cuales puede a su vez, contener otros archivos. El ncleo, el Shell y el sistema de archivos forman en conjunto la estructura bsica del sistema operativo. Con estos tres elementos puede ejecutar programas, gestionar archivos e interactuar con el sistema. Adems, Linux cuenta con unos programas de software llamados utilidades que han pasado a ser considerados como caractersticas estndar del sistema. Las utilidades son programas especializados, tales como editores, compiladores y programas de comunicaciones, que realizan operaciones de computacin estndar. Incluso uno mismo puede crear sus propias utilidades Linux contiene un gran nmero de utilidades.

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS

El Ncleo o KernelActualmente Linux es un ncleo monoltico hbrido. Qu significa este trmino? El ncleo es simplemente un programa que acta de sistema operativo, que asegura la comunicacin entre los programas que solicitan recursos y el hardware, tambin asegura la gestin de los distintos programas informticos de una mquina, y finalmente la gestin del hardware. Un sistema operativo con ncleo monoltico concentra todas las funcionalidades posibles (planificacin, sistema de archivos, redes, controladores de dispositivos, gestin de memoria, etc.) dentro de un gran programa. El mismo puede tener un tamao considerable, y deber ser recompilado por completo al aadir una nueva funcionalidad. Todos los componentes funcionales del ncleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el ncleo. Queda por explicar el trmino hbrido. A diferencia de los ncleos monolticos tradicionales, los controladores de dispositivos y las extensiones al ncleo se pueden cargar y descargar fcilmente como mdulos, mientras el sistema contina funcionando sin interrupciones. Tambin, a diferencia de los ncleos monolticos tradicionales, los controladores pueden ser detenidos momentneamente por actividades ms importantes, bajo ciertas condiciones. Esta habilidad fue agregada para gestionar correctamente interrupciones de hardware, y para mejorar el soporte de multiprocesamiento simtrico. El kernel ncleo de Linux se puede definir como el corazn de este sistema operativo. Es el encargado de que el software y el hardware de tu ordenador puedan trabajar juntos. Las funciones ms importantes del mismo, aunque no las nicas, son: Administracin de la memoria para todos los programas y procesos en ejecucin. Administracin del tiempo de procesador que los programas y procesos en ejecucin utilizan. Es el encargado de que podamos acceder a los perifricos/elementos de nuestro ordenador de una manera cmoda.

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS

Intrprete de comandos-ShellEl intrprete de comandos es el medio de comunicacin (interfaz) entre el usuario y el sistema operativo. Por esta razn, se le da el nombre ingls "Shell", que significa "caparazn". Por lo tanto, la Shell acta como un intermediario entre el sistema operativo y el usuario gracias a lneas de comando que este ltimo introduce. Su funcin es la de leer la lnea de comandos, interpretar su significado, llevar a cabo el comando y despus arrojar el resultado por medio de las salidas. La Shell es un archivo ejecutable que debe interpretar los comandos, transmitirlos al sistema y arrojar el resultado. Existen varios shells. La ms comn es sh (llamada "Bourne shell"), bash ("Bourne again shell"), csh ("C Shell"), Tcsh ("Tenex C shell"), ksh ("Korn shell") y zsh ("Zero shell"). Generalmente, sus nombres coinciden con el nombre del ejecutable. Cada usuario tiene una Shell predeterminada, la cual se activar cuando se abra un indicador del comando. La Shell predeterminada se especifica en el archivo de configuracin /etc/passwd en el ltimo campo de la lnea que corresponde al usuario. Es posible cambiar de Shell durante una sesin. Para esto, slo debe ejecutar el archivo ejecutable correspondiente, por ejemplo: /bin/bash

Indicador del sistemaLa Shell se inicia al leer su configuracin completa (en un archivo del directorio /etc/) y despus al leer la configuracin propia del usuario (en un archivo oculto cuyo nombre comienza con un punto y que se ubica en el directorio bsico del usuario, es decir /home/user_name/.configuration_file). A continuacin, aparece el siguiente indicador (prompt en ingls): equipo:/directorio/actual$ De manera predeterminada, para la mayora de las shells, el indicador consiste en el nombre del equipo, seguido de dos puntos (:), el directorio actual y despus un carcter que indica el tipo de usuario conectado: "$" especifica un usuario normal "#" especifica el administrador, llamado "root"

El concepto de lnea de comandosUna lnea de comandos es una cadena de caracteres formada por un comando que corresponde a un archivo ejecutable del sistema o, ms bien, un comando de Shell como as tambin argumentos opcionales (parmetros): ls -al /home/jf/

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS En el comando anterior, ls es el nombre del comando, -al y home/jean-francois/ son argumentos. Los argumentos que comienzan con - se denominan opciones. Por lo general, para cada comando, hay una cierta cantidad de opciones que se pueden detallar al introducir uno de los siguientes comandos: comando --help comando -? man comando Entrada-salida estndar Una vez que se ejecuta un comando, se crea un proceso. Este proceso abre tres flujos: stdin, denominado entrada estndar, en cuyo caso el proceso lee los datos de entrada. De manera predeterminada, stdin se refiere al teclado. STDIN se identifica con el nmero 0. stdout, denominado salida estndar, en cuyo caso el proceso escribe los datos de salida. De manera predeterminada, stdout se refiere a la pantalla. STDOUT se identifica con el nmero 1. stderr, denominado error estndar, en cuyo caso el proceso escribe los mensajes del error. De manera predeterminada, stderr se refiere a la pantalla. STDERR se identifica con el nmero 2.

Por lo tanto, de manera predeterminada, cada vez que se ejecuta un programa, los datos se leen desde el teclado y el programa enva su salida y sus errores a la pantalla. Sin embargo, tambin es posible leer datos desde cualquier dispositivo de entrada, incluso desde un archivo, y enviar la salida a un dispositivo de visualizacin, un archivo, etc.

RedireccionesComo cualquier sistema Unix, Linux posee mecanismos que permiten redirigir la entradasalida estndar a archivos. Por lo tanto, si se usa el carcter ">", se puede redirigir la salida estndar de un comando que se encuentra a la izquierda a un archivo que se encuentra a la derecha: ls -al /home/jf/ > toto.txt echo "Toto" > /etc/miarchivodeconfiguracin El siguiente comando equivale a una copia de los archivos: cat toto > toto2 El propsito de la redireccin ">" es el de crear un archivo nuevo. En el caso de que un archivo ya exista con el mismo nombre, se lo debe eliminar. El siguiente comando simplemente crea un archivo vaco: > archivo El uso del carcter doble ">>" permite agregar la salida estndar al archivo, es decir, permite agregar la salida despus del archivo sin eliminarlo.

CARRERA: INGENIERIA EN INFORMATICA ASIGNATURA: SISTEMAS OPERATIVOS II PROFESORA: NATALIA JOFRE VIVEROS De manera similar, el carcter "