Documente Academic
Documente Profesional
Documente Cultură
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
1. EVOLUCIN HISTORICA.............................................................................................................................................. 2
2. CARACTERSTICAS ....................................................................................................................................................... 3
3. TIPOS DE SHELL. ............................................................................................................................................................ 4
3.1. INTRODUCCIN........................................................................................................................................................ 4
3.2. SHELL DEL SYSTEM V: (SH) .................................................................................................................................... 4
3.2.1. ORDENES DE ENTRADA.................................................................................................................................... 5
3.2.2. UTILIZACIN DE COMODINES PARA ESPECIFICAR ARCHIVOS................................................................ 6
3.2.3. ENTRADA Y SALIDA ESTNDAR....................................................................................................................... 6
3.2.3. VARIABLES DEL SHELL..................................................................................................................................... 7
3.3. EL C-SHELL (CSH)....................................................................................................................................................... 9
3.4. EL SHELL KORN (KSH) ........................................................................................................................................... 10
4. ESTRUCTURA DE ARCHIVOS.................................................................................................................................... 11
4.1. CARACTERSTICAS SISTEMA DE ARCHIVOS................................................................................................... 12
4.2. ALMACENAR DATOS............................................................................................................................................. 13
4.3. NOMBRES DE ARCHIVO........................................................................................................................................ 13
4.4. TIPOS DE ARCHIVOS.............................................................................................................................................. 14
4.5. ESTRUCTURA INTERNA DEL SISTEMA DE ARCHIVOS .................................................................................. 16
4.5.1. EL BLOQUE DE ARRANQUE........................................................................................................................... 17
4.5.2. EL SPER BLOQUE.......................................................................................................................................... 17
4.5.3. LA LISTA DE NODOS INDICE ......................................................................................................................... 17
4.5.4. BLOQUES DE DATOS....................................................................................................................................... 19
4.5.5. CREACIN DE UN SISTEMA DE ARCHIVOS................................................................................................. 20
4.6. ESTRUCTURA EXTERNA DEL SISTEMA DE ARCHIVOS ................................................................................. 20
4.6.1. DIRECTORIOS Y ARCHIVOS ESTNDAR ....................................................................................................... 21
4.7. OPERACIONES CON ARCHIVOS Y DIRECTORIOS................................................................................................. 23
5. INTERFACES GRAFICAS. ............................................................................................................................................... 25
5.1. GESTOR DE VENTANAS........................................................................................................................................ 26
6. IMPLEMENTACIONES COMERCIALES Y SOFTWARE LIBRE ......................................................................... 26
7. CONCLUSIN ................................................................................................................................................................. 28
8. BIBLIOGRAFA .............................................................................................................................................................. 28
9. ESQUEMA RESUMEN ................................................................................................................................................ 29
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 1 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
1. EVOLUCIN HISTORICA
A finales de los aos sesenta, sobre 1968, un conjunto de investigadores provenientes de AT&T Bell, del MIT y
General Electric emprenden el desarrollo de un sistema operativo multiusuario al cual llamaron MULTICS
(Multiplexed Information and Computing System). MULTICS posea gran parte de las caractersticas que tiene hoy
en da cualquier versin de UNIX como son la multitarea, la gestin de archivos y la interaccin con usuarios. Sin
embargo MULTICS nunca llegara a completarse debido a numerosos contratiempos y retrasos en su
implementacin, ya que una de las mayores desventajas era la complejidad del software y hardware necesario
para completar tareas cotidianas y sencillas para los usuarios.
Posteriormente, Ken Thompson y Dennis Ritchie, unos de los investigadores que se involucraron en el proyecto
MULTICS retoman la idea y desarrollan en 1969 en los laboratorios Bell el sistema operativo multiusuario UNIC
(Uniplexion Information and Computing System), una revisin del sistema operativo MULTICS, escrito en un
lenguaje ensamblador; y ejecutndose en una mquina DEC PDP-7, que posteriormente se adapto a un
ordenador PDP-11. UNIC simplificaba las tareas de su antecesor.
Mas tarde, el nombre sufre diferentes cambios hasta llegar al UNIX, tal y como se conoce hoy en da, con lo cual
se puede deducir que UNIX surge de una versin reducida del proyecto MULTICS, si bien tambin ha sido
influenciado por otros sistemas operativos como el CTSS (Compatible Time Sharing System) del MIT y el sistema
XDS-940 de la Universidad de California de Berkeley.
Recuerdese que en esos aos cuando se compraba un ordenador, se tena que comprar el sistema operativo
provedo por el fabricante del equipo, por consiguiente posteriormente tambin se tenan que comprar las
aplicaciones proporcionadas por el fabricante ya que son las que conocan como interactuar con el sistema
operativo, y esas aplicaciones tenan un precio bastante alto, es decir, los usuarios estaban encadenados al
fabricante del ordenador, era como el pez que se come la cola.
Adems, ciertas restricciones legales impedan a dichos laboratorios fabricar ordenadores, por lo que se
dedicaban a comprar el hardware a otras empresas, necesitando algn mecanismo para portar el sistema
operativo a distintas mquinas.
El hecho de que UNIX estuviese escrito en ensamblador impeda la portabilidad a diferentes ordenadores.
Thompson desarroll un nuevo lenguaje de alto nivel: B, pero Dennis Ritchie en el 1973 lo mejora y le llama
lenguaje C, rescribiendo UNIX totalmente en este lenguaje de alto nivel (muy apto para escribir sistemas
operativos), haciendo por tanto el cdigo casi totalmente independiente del tipo de mquina, permitiendo la
instalacin de UNIX en diferentes plataformas, logrando as una popularidad sin precedentes en el mundo de los
sistemas operativos.
Inicialmente los laboratorios AT&T Bell, consideran que UNIX era ms bien un proyecto de investigacin y lo lleg
a distribuirse de forma gratuita entre departamentos informticos de las universidades, los cuales lo podan
modificar y adaptar a sus necesidades.
La gran demanda del sistema operativo hace que los laboratorios Bell iniciara su venta a travs de distribuciones
oficiales concediendo a los usuarios que lo requeran licencias de uso.
La primera versin de UNIX disponible fuera de los laboratiros Bell fue la Versin 6, ea el ao 1976. En 1978 se
distribuy la Versin 7, que fue adaptada a otros PDP-11 y a una nueva lnea de ordenadores de DEC
denominada VAX. La versin para VAX se conoca como 32V.
En el periodo comprendido entre 1977 y 1982, los laboratorios BeIl combin varios sistemas UNIX, desarrollados
deatro de AT&T, con caractersticas de la Versin 7 y de la 32V, dando lugar aun nico sistema cuyo nombre
comercial fue UNIX System III. sta fue la primera distribucin externa desde USG.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 2 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Los Laboratorios Bell ms tarde aadieron muchas caractersticas nuevas al UNIX System III, llamando al nuevo
producto UNIX System V, y AT&T anunci su apoyo oficial al System V en Enero de 1983.
La modularidad, la sencillez de diseo y el pequeo tamao de UNIX, hicieron que muchas empresas se pusieran
a trabajar sobre l. La Universidad de Berkeley en Califomia creo una variante del sistema UNIX para mquinas
VAX. Esta variante incorporaba varias caractersticas interesantes, tales como memoria virtual, paginacin por
demanda y sustitucin de pgina, con lo cual se permita la ejecucin de programas mayores que la memoria
fsica.
A esta variante, desarrollada por Bill Joy y Ozalp Babaoglu, se la conoci como 3BSD (Berkeley Software
Distribution). Esto llevo a que la Defense Advanced Research Projects Agency (DARPA) ayudase
econmicamente a Berkeley en el desarrollo de un sistema UNIX estndar el 4BSD.
Los trabajos en 4BSD para DARPA fueron dirigidos por expertos en redes y UNIX, ya que la intencin era que
4BSD incluyera la pila de protocolos TCP/IP.
2. CARACTERSTICAS
Las caractersticas ms relevantes del sistema son:
UNIX ha sido diseado como un sistema multiusuario en tiempo compartido; es decir, un sistema en el
que pueden trabajar varios usuarios simultneamente entre los cuales se reparten los recursos del
sistema hardware, pensando cada usuario que tiene acceso exclusivo a la mquina. Proporciona
proteccin de los datos privados sobre ficheros y tambin ofrece proteccin del entorno de ejecucin
Portabilidad: Tal y como se comento anteriormente, UNIX fue escrito en el lenguaje C, un lenguaje de alto
nivel, lo cual hace que sea relativamente fcil de leer, entender, modificar y transportar a otras mquinas
con una arquitectura fsica diferente.
Interfaz de usuario simple e interactiva: el intrprete de rdenes (shell) es un programa independiente que
el usuario puede sustituir. La sintaxis de utilizacin es idntica para todas las rdenes.
Modularidad: Proporciona primitivas que permiten construir grandes programas a partir de otros ms
sencillos, asi como libreras para linkaje.
Posee bibliotecas compartidas para facilitar el enlace dinmico.
Protecciones de memoria.
Soporta diferentes sistemas de archivos, incluidos los de Microsoft Window
Sistema de archivos con estructura de rbol invertido (de mltiples niveles que permite un fcil
mantenimiento) y jerrquico (permite la unin de diversos sistemas de ficheros con el sistema principal, y
una separacin de directorios).
Todos los archivos de usuario son simples secuencias de bytes (8 bits), no tienen ningn formato
predeterminado.
Independencia de dispositivos: Los discos y los dispositivos de entrada y salida (E/S) se tratan todos de la
misma manera: como meros archivos. Las peculiaridades de los dispositivos se mantienen en el ncleo
(kernel).
La arquitectura de la mquina es completamente transparente para el usuario, lo que permite que los
programas sean fciles de escribir y transportables a otras mquinas con hardware diferente
UNIX no incorpora diseos sofisticados; de hecho, la mayora de los algoritmos han sido seleccionados
por su sencillez y no por su rapidez o complejidad.
Incorpora todos los servicios de red, TCP/IP, DNS, sendmail, etc.
Proporciona un completo entorno de programacin: los filtros son utilidades simples que se concentran en
realizar bien una sola funcin. Pueden combinarse de forma muy flexible utilizando las pipes y las
redirecciones de E/S segn las necesidades y preferencias de cada usuario.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 3 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
3. TIPOS DE SHELL.
3.1. INTRODUCCIN
Una gran parte del uso del Sistema UNIX consiste en que el usuario emitir rdenes y UNIX responder, para
realizar esta labor, el usuario no se comunica directamente con el ncleo de UNIX sino que lo hace a travs del
intrprete de comandos o shell.
Por lo tanto, el shell no es ms que un intermediario entre el ncleo de UNIX y el usuario. Cuando se emite una
orden nos relacionamos con el shell, la parte del Sistema UNIX a travs de la cual se controlan los recursos del
sistema operativo UNIX. El shell proporciona muchas de las caractersticas que hacen al Sistema UNIX un
entorno potente y flexible. Se trata de un intrprete de rdenes, un lenguaje de programacin, y ms. Como
intrprete de rdenes, el shell lee los comandos que se le introducen y dispone lo necesario para que se ejecuten.
Adems se puede utilizar el lenguaje de rdenes del shell como un lenguaje de programacin de alto nivel para
crear programas denominados guiones (scripts).
El considerado estndar es el Bourne Shell (sh); es el que distribuye AT&T con el UNIX. La versin
original fue desarrollada por Stephen Bourne en los Laboratorios Bell.
Otro de los ms difundidos es el C Shell (csh), desarrollado en la Universidad de Berkeley en su mayor
parte por Bill Joy. Fue diseado teniendo en cuenta que los usuarios seran programadores en lenguaje
C.
Otra versin ampliamente difundida es el Korn Shell (ksh), interfase escrita por David Korn.
Por ultimo existe el shell BASH (Bourne Again Shelll) que unifica las caractersticas del csh y ksh junto
con la version inicial del Bourne Shell (sh)
Nos vamos a centrar en el shell del Sistema V (sh). El UNIX Sistema V Versin 4 (SVR4) tambin proporciona
otros dos shells, el shell C (csh) y el shell Korn (ksh), que ofrecen varias ampliaciones valiosas al shell del
Sistema V. Los conceptos y caractersticas que describiremos tambin se aplican al shell Korn, y la mayor parte
de ellos se aplican al shell C.
El shell C y el shell Korn se desarrollaron para disponer de caractersticas y capacidades adicionales que no
ofreca el sh. Comparado con sh, tanto csh como ksh disponen de un nmero de ampliaciones valiosas. Entre
ellos estn la edicin de lnea de orden, que posibilita editar las lneas de rdenes cuando se introducen; las listas
de historias de rdenes, que permite revisar las rdenes que se han venido utilizando durante una sesin, y los
alias de rdenes, que se pueden utilizar para dar a las rdenes nombres ms convenientes.
csh y ksh tambin proporcionan la posibilidad de utilizar rdenes desde una lista de comandos ya introducidos
para simplificar la creacin de rdenes nuevas, la proteccin de sobreescritura accidental en archivos existentes
cuando se redirige la salida hacia ellos, un nmero de caractersticas convenientes y capacidades de
programacin del shell extendidas.
Cuando usted se presenta al sistema, se inicia automticamente un programa de shell. Este es el shell de
presentacin. El programa de shell particular que se ejecuta cuando se inicia sesin est determinado por su
entrada en el archivo /etc/passwd.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 4 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Cuando se inicia su shell de presentacin, se ejecuta un archivo denominado .profile que se encuentra en su
directorio de presentacin. Su .profile contiene rdenes que personalizan su entorno, por similitud sera como el
fichero autoexec.bat en el sistema operativo MS-DOS . El shell lee este archivo y lleva a cabo las instrucciones
que contiene.
El .profile es un ejemplo simple de guin de shell o script puesto que contiene a su vez rdenes o instrucciones
para el shell y se utiliza para la personalizacin del entorno de trabajo: la definicin de la variable PATH, fijar el
tipo de terminal, cambiar el prompt por defecto, etc.
El shell le informa que est listo para recibir su entrada visualizando una peticin de orden. Por defecto, sh utiliza
el signo dlar, $, como signo de peticin de orden principal o primaria para los usuarios y el signo sostenido #
como signo de peticin de ordenes para el root o administrador.
Muchas de las iteraciones con UNIX tienen la forma de dialogo con el shell. Este dilogo sigue una secuencia
simple repetida una y otra vez.
La parte de este ciclo que realiza el trabajo real es el paso tercero, cuando el shell lee y procesa la lnea de orden
y ejecuta las instrucciones que contiene.
En general, una lnea de orden contiene un comando y argumentos. Cada lnea de orden finaliza con un
NEWLINE, que es el trmino de UNIX para el carcter que se produce cuando se teclea RETURN. El shell no
comienza a procesar la lnea de orden hasta que recibe un RETURN .
Los argumentos de la lnea de orden son opciones que modifican lo que hace una orden y cmo lo hace, y la
informacin que necesita, como puede ser el nombre de un archivo del que obtener datos. Las opciones
normalmente se indican con un signo.
A menudo la lnea de orden incluye argumentos y smbolos que son realmente instrucciones para el shell. Por
ejemplo, cuando se utiliza el smbolo > para dirigir la salida de una orden a un archivo, o el smbolo de cauce, I,
para utilizar la salida de una orden como entrada a otra, o el ampersand, &, para ejecutar una orden en el modo
subordinado, realmente se estn dando instrucciones al shell.
Normalmente se coloca una nica orden o un cauce de dos o ms rdenes en una nica lnea. Si es necesario se
pueden introducir varias rdenes de una vez en una lnea separndolas con punto y coma. Por ejemplo, la lnea
de orden siguiente dice al shell que ejecute en primer lugar date, y despus ls, de la misma forma que se hubiese
hecho tecleando cada una de las rdenes en una lnea independiente.
$ date; ls
Esta forma de introducir rdenes es muy conveniente cuando hay que escribir una secuencia completa de
rdenes antes de ejecutar ninguna de ellas.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 5 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
El shell proporciona una forma de abreviar los nombres de archivos mediante el uso de patrones especiales o
comodines que se utilizan para especificar uno ms archivos sin tener que escribir los nombres completos. Se
pueden utilizar comodines para especificar de una sola vez un conjunto completo de archivos, o para buscar un
archivo cuando slo s e conoce parte de su nombre. Por ejemplo, se puede utilizar el comodn * para listar todos
los archivos del directorio actual con la extensin rpm:
$ ls *.rpm.
El asterisco identifica a una cadena de cualquier nmero de caracteres (incluyendo cero caracteres); por
ejemplo: *data identifica a cualquier nombre de archivo terminado en "data", incluyendo data y file.data.
El signo de interrogacin identifica a cualquier carcter simple; por ejemplo: .memo? identifica a cualquier
nombre de archivo que conste de "memo" seguido por exactamente un carcter.
Los corchetes se utilizan para definir clases de caracteres que identifican a cualquiera perteneciente al
conjunto que engloba. Por ejemplo: [Jj]mf identifica a los nombres de archivos jmf o Jmf.
Se puede indicar un rango o secuencia de caracteres entre corchetes con un -. Por ejemplo: temp [a-c]
identifica a tempa, tempb y tempc.
Existe una excepcin importante a la declaracin de que * identifique a cualquier secuencia de caracteres. No con
un . (punto) al comienzo de un nombre archivo. Para identificar un nombre de archivo que comienza con. (punto),
hay que incluir un punto en el patrn.
La necesidad de indicar explcitamente un . inicial es consistente con el hecho de que los archivos con nombres
que comienzan con . son tratados como archivos ocultos, que se utilizan para mantener informacin necesitada
por el sistema o por rdenes particulares, pero que normalmente no se necesita visualizar .
Cuando el shell procesa una lnea de orden, sustituye en forma ordenada cualquier palabra que contenga
comodines de nombres de archivos por los nombres de archivos identificados.
Si no existen nombres de archivos que se identifiquen con el patrn especificado, el shell no realiza ninguna
sustitucin.
Una de las caractersticas del Sistema UNIX es la forma general y flexible de tratar los archivos y la facilidad con
la que se puede controlar el lugar desde donde los programas obtienen la entrada y envan la salida. La salida de
una orden puede enviarse a la pantalla, almacenarse en un archivo o utilizarse como entrada a otra orden.
Anlogamente, la mayor parte de las rdenes aceptan entrada desde teclado, desde un archivo almacenado o
desde la salida de otra orden.
La orden no necesita saber de dnde viene la entrada o a dnde va la salida. Es el shell el que establece estas
conexiones, en base a las instrucciones de la lnea de orden.
Una de las funciones ms importantes del shell consiste en gestionar la entrada y salida estndar, de manera que
slo se necesite especificar de dnde obtiene el comando la entrada ya dnde debe enviar la salida. Esto se
realiza mediante el mecanismo de redireccin de entrada y salida
REDIRECCIONES
La siguiente tabla lista los smbolos utilizados para decir al shell dnde obtener la entrada y adnde enviar la
salida. A stos se les denomina operadores de redireccin del shell.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 6 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Operadores de redireccin
El shell dispone de un mecanismo para definir variables que se utilizan para almacenar informacin utilizada por
los programas del sistema o por el usuario. Las variables del shell se pueden utilizar para personalizar o
particularizar la informacin relativa a nombres de directorios y de archivos que necesitan los programas y para
personalizar la forma en la que los programas (incluyendo el propio shell) interactan con el usuario.
A continuacin se muestran algunas de las variables del shell ms comunes, incluyendo aquellas que fija
automticamente el sistema.
HOME contiene el nombre de camino absoluto del directorio de recepcin. HOME es definida
automticamente. El propio shell utiliza esta informacin para determinar el directorio al que cambiar
cuando se teclea la orden cd sin argumento
PATH lista, en orden, los directorios en los que el shell busca para encontrar el programa a ejecutar
cuando se teclea una orden. PATH contiene una lista de nombres de directorios, separados por dos
puntos.
Un PATH por defecto es puesto por el sistema, pero la mayor parte de los usuarios lo modifican para
aadir directorios de rdenes adicionales. Un campo vaco en la cadena PATH significa buscar en el
directorio actual (un campo vaco es aquel con dos puntos, pero sin nombre de directorio).
CDPATH es similar a PATH. Lista en orden los directorios en los que busca el shell para encontrar un
subdirectorio a cambiar cuando se utiliza la orden cd. Los directorios que busca el shell se listan de la
misma forma que los directorios de su PATH.
PSl y PS2 definen los signos de sus peticiones de orden primaria y secundaria, respectivamente. Sus
valores por defecto son $ para PSl y > para PS2.
LOGNAME contiene su nombre de presentacin. Lo fija automticamente el sistema.
MAIL contiene el nombre del directorio en el que se coloca el correo nuevo. El shell utiliza esta variable
para notificar cundo se aade nueva informacin en su directorio.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 7 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Adems de fijar valores, a veces se necesita obtener el valor de una variable del shell. Para obtener el valor de
una variable del shell, se precede el nombre de la variable con un signo dlar, $. Cuando el shell lee una lnea de
orden, interpreta cualquier palabra que comienza con $ como una variable y la sustituye con el valor de la
variable.
Para ver el valor de una variable, puede utilizar la orden echo. Esta orden produce eco (imprime) de la entrada
estndar en su salida estndar.
Se puede utilizar la orden set para ver todas las variables actuales del shell y sus valores. Por ejemplo:
Aunque HOME, PS1, PS2 y otras variables comunes son fijadas automticamente por el sistema, a otras no les
ocurre esto y se pueden definir sus valores. TERM y MAILFILE son ejemplos de variables del shell que no se
definen automticamente.
Una variable del shell se define escribiendo su nombre seguido por un signo = y su valor. Para poner la variable
de terminal a vt100, se utiliza la orden:
$ TERM=vtlOO
De Ia misma formas se pueden redefinir algunas de las variables actuales, como HOME y PS1.
Siempre que se le dan valores a las variables no deben existir espacios entre el nombre de la variable, el signo =
y el valor. El valor puede contener un espacio o incluso uno o ms NEWLINES pero si los contiene, debe ir entre
comillas. Por ejemplo, se puede definir una peticin de orden de dos palabras:
$ PS1="hi there:"
Para eliminar una variable se utiliza la orden unset.
Se trata de una forma conveniente de almacenar informacin utilizada con frecuencia en lneas de rdenes. Por
ejemplo, si se mueve con frecuencia archivos a un directorio particular, se puede definir una variable con el
nombre del directorio.
Cuando el shell lee una lnea de orden, sustituye cualquier palabra que comience con un $ con el valor de la
variable que tiene ese nombre.
Cuando se ejecuta una orden, el shell pone a disposicin del programa un conjunto de variables del shell y sus
valores. El programa puede entonces utilizar esta informacin para personalizar sus acciones. La coleccin de
variables y valores de un programa se denomina el entorno.
El entorno incluye las variables fijadas por el sistema, tales como HOME, LOGNAME y PATH. Se pueden
visualizar sus variables de entorno con la orden: env
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 8 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Algunas de las variables definidas por el sistema son incluidas automticamente en su entorno. Pero para
ponerlas a disposicin de otras rdenes diferentes de las del propio shell deben ser exportadas. Algunas de las
variables estndar descritas anteriormente se exportan automticamente al entorno. Pero otras, incluyendo
cualquier variable que defina el usuario y cualquier valor de una variable estndar que se cambie, no.
Se utiliza la orden export para hacer que el valor de una variable est disponible a otros programas.
El shell C proporciona casi todas las caractersticas del shell estndar descritas anteriormente. Existen sin
embargo algunas diferencias bsicas en el vocabulario del lenguaje de rdenes y en la sintaxis:
Presentacin e iniciacin. Cuando se inicia sh, mira en su .profile rdenes iniciales y definiciones de
variables. El shell C sigue un procedimiento similar, pero utiliza dos archivos, denominados. cshrc y .login.
csh lee .login slo cuando el usuario inicia sesin. El archivo .login deber contener rdenes y
definiciones de variables que slo necesitan ser ejecutadas al comienzo de la sesin.
El archivo. cshrc es un archivo de iniciacin. La "rc" significa "read commands" (rdenes de lectura). Para
programas convencionales se busca normalmente la informacin de iniciacin en archivos que finalizan
en "rc".
La diferencia entre .cshrc y .login es que el csh lee .login slo en la presentacin, pero lee .cshrc tanto al
comienzo de una sesin como cuando se le invoca desde el shell de presentacin -por ejemplo, cuando
se ejecuta un guin de shell-. El archivo .cshrc incluye rdenes y definiciones que se necesitan ejecutar
cada vez que entra en un shell, no slo al principio.
.cshrc debera incluir las definiciones de variables que utiliza el shell pero que no son variables de
entorno. Las variables de entorno deben definirse en. login.
Variables del shell C. El shell C dispone de variables, incluyendo variables estndar definidas por el
sistema y variables definidas por el usuario. Diferencias con sh:
Para definir una variable en csh se utiliza la orden set.
csh permite espacios entre el nombre de la variable, el signo = y el valor; sh no.
csh utiliza letras minsculas para las variables ordinarias; la prctica usual en sh es utilizar letras
maysculas.
Variables especiales del shell C. El shell C utiliza un nmero de variables especiales. Algunas de ellas
son directamente equivalentes a las variables de sh. Las siguientes son algunas variables especiales del
shell C que usted debera conocer.
cwd mantiene el nombre completo del directorio de trabajo actual. Proporciona la informacin que
utiliza la orden pwd para visualizar su directorio actual
home es el nombre de camino completo de su directorio de presentacin. Corresponde a la variable
HOME utilizada en sh y ksh.
path mantiene la lista de directorios en los que busca el shell C para encontrar un programa cuando
ejecuta sus rdenes. Corresponde a PATH.
cdpath es la variable del shell C equivalente a la variable CDPATH del shell del Sistema V.
prompt es la equivalente a PSl del shell del Sistema v. El valor por defecto de la peticin de orden
(prompt) del shell C es %, o a veces system%, donde system es el nombre de su sistema UNIX.
mail informa al shell de la frecuencia con que tiene que chequear el correo nuevo y dnde buscarlo,
por ejemplo: set mail = ( 60 $home/mail )
Variables multievaluadas El shell C utiliza parntesis para agrupar distintas palabras que representan
distintos valores de una variable. Esto permite definir y utilizar las variables del shell C como arrays.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 9 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Variables de conmutacin para activar caractersticas del shell C. El shell C utiliza variables especiales
denominadas de conmutacin para activar o desactivar ciertas caractersticas. Las variables de
conmutacin son variables que tienen slo dos valores: activas y desactivas. Cuando se define con la
orden set una variable de conmutacin, activa la correspondiente caracterstica. Para desactivarla se
utiliza unset. Variables de conmutacin importantes son noclobber, ignoreeof y notify.
noclobber impide sobrescribir un archivo existente cuando se redirige la salida desde una orden. Se
puede indicar explcitamente a csh que realmente quiere sobrescribir el archivo, colocando un signo
de exclamacin despus del smbolo de redireccin: % ls -1 >! temp
.ignoreeof impide que accidentalmente se salga de la sesin tecleando CTRL-D. Sin ignoreeof, un
CTRL-D al comienzo de una lnea de orden termina su shell y sale del sistema. Si activa ignoreeof, el
shell ignora CTRL-D.
notify informa de cundo termina un trabajo en modo subordinado. Si la variable notify est activa, el
shell visualizar un mensaje de finalizacin del trabajo cuando termine la ejecucin un trabajo en
modo subordinado. Esta variable de conmutacin se fija por defecto, pero si usted no quiere obtener
mensajes de terminacin de trabajos, puede des activarla.
Variables de entorno. Una variable de entorno es una variable que est disponible a las rdenes como
parte del entorno que mantiene el shell. Recuerde que sh define variables de entorno de la misma forma
que las otras variables y utiliza export para incluir una variable en el entorno.
El shell C no utiliza la orden export para colocar una variable en el entorno. En lugar de ello, utiliza
una orden especial, setenv, para definir variables que son parte del entorno. Para definir variables de
entorno no existe signo = entre el nombre de la variable y su valor. Por ejemplo, setenv term vt100
Puede ver todo lo referente a las variables de entorno con la orden env
Para eliminar una variable de entorno se utiliza unsetenv.
Historia de rdenes. El shell C mantiene un registro o lista de todas las rdenes que se introdujeron
durante una sesin. Se puede examinar la lista de historia para buscar rdenes particulares.
Con la orden history se puede visualizar la lista de las ltimas lneas de rdenes.
Alias. El shell C permite definir alias de rdenes simples. Un alias de una orden es una palabra (el alias)
y algn texto que es sustituido por el shell cuando la palabra se utiliza como orden. Se pueden utilizar
alias para incluir automticamente opciones particulares cuando se ejecuta una orden y para dar nombres
cortos a rdenes que usted teclea con frecuencia.
Abreviatura de directorios de presentacin. El shell C proporciona una forma fcil de abreviar el nombre
de camino del directorio de recepcin que es utilizando el smbolo tilde (~) al comienzo de una palabra en
la lnea de orden. Esto hace que el shell la sustituye con el nombre completo de camino del directorio de
recepcin. Por ejemplo, rm -/newfile es la forma abreviada de teclear rnv $home/newfile
Redireccin del error estndar en el shell C. csh proporciona una forma para redirigir tanto la salida
estndar como el error estndar al mismo archivo.
Por ejemplo, $ find .-type f -print >& output-file & # C shell
ejecuta find en el modo subordinado y enva la salida estndar y los mensajes de error a output-file. Sin
embargo, el shell C no permite que se redirija el error estndar independientemente de la salida estndar.
Terminacin del nombre de archivo. La caracterstica de terminacin de nombre de archivo del shell C
proporciona una forma conveniente para introducir nombres de archivos en rdenes. Para ello es
necesario activar la variable de conmutacin filec. Con filec, si se teclea la primera letra o letras de un
nombre de archivo y despus se teclea CTRL-D, csh expandir el nombre parcial para hacerlo coincidir
con un nombre de archivo del directorio actual.
El shell Korn proporciona un superconjunto altamente compatible de caractersticas del shell del Sistema V.
Incorpora la mayor parte de las ampliaciones que se encuentran en el shell C, as como muchas otras
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 10 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
caractersticas potentes, conservando la sintaxis y caractersticas bsicas del sh. Los programas de shell escritos
para sh corren generalmente sin modificacin bajo ksh.
Presentacin e iniciacin. Como el shell C, el shell Korn utiliza dos archivos de iniciacin -uno slo para la
presentacin, el otro cada vez que se ejecuta ksh.
De la misma forma que sh, ksh lee el archivo .profile para buscar las rdenes que se quieren ejecutar en
inicia de sesin y las variables y valores que se requiere que estn activas a lo largo de la sesin.
Adems de leer el .profile, cada vez que inicializa ksh tambin lee un archivo de entorno. El archivo de .
entorno es anlogo al archivo. cshrc del shell C. A diferencia de csh, ksh no supone que este archivo
tiene un nombre o posicin particular. El nombre y posicin se definen con la variable ENV, de .profile.
Variables del shell Korn. El shell Korn implementa todas las caractersticas del shell estndar
relacionadas con variables e incluye todas las variables del shell estndar. Se pueden defInir o redefinir
variables, exportarlas al entorno y obtener sus valores. El shell Korn utiliza algunas de las variables del
shell del Sistema V, entre las que se encuentran: CDPATH, HOME, LOGNAME, MAIL, MAILCHECK,
MAILPATH, PATH, PSI, PS2, SHELL y TERM.
Algunas variables utilizadas por el shell Korn que no se utilizan en sh son:
ENV dice a ksh dnde encontrar el archivo de entorno que se lee en la iniciacin.
HISTSIZE dice a ksh cuntas rdenes guardar en el archivo de historia-
TMOUT dice a ksh cuntos segundos esperar antes de producirse un fuera de tiempo si no se pulsa
una orden.
Para ver las variables de shell actuales y sus valores se utiliza la orden set.
Fijacin de las opciones del shell Korn. El shell Kom proporciona un nmero de opciones que activan
caractersticas especiales. Estas incluyen las opciones noclobber e ignoreeof que son idnticas a las
proporcionadas por las variables de conmutacin del shell C, as como una opcin para activar la edicin
de lnea de orden.
Historia de rdenes. El shell Kom mantiene una historia de las rdenes que se van introduciendo al
trabajar en una sesin. Para ver las ltimas rdenes que se introdujeron tecleando history. El nmero de
lneas de rdenes que mantiene ksh viene controlado por la variable del shell HISTSIZE.
Alias. De la misma forma que el shell C, el shell Kom permite definir alias de rdenes simples. Los alias
se definen en el shell Kom de la misma forma que se definen las variables. En particular, como ocurre con
las variables del shell, no deben existir espacios entre el nombre del alias, el signo = y su valor. Tambin,
si el valor incluye espacios (por ejemplo, un nombre de orden y opciones), deben ir entre comillas.
Abreviatura de los directorios de presentacin. El shell Kom proporciona una forma fcil para abreviar los
nombres de caminos de los directorios de trabajo usando el smbolo tilde ~.
4. ESTRUCTURA DE ARCHIVOS
Un pilar bsico del Sistema UNIX es el sistema de archivos jerrquico.
El sistema de archivos proporciona una forma potente y flexible de organizar y gestionar los datos contenidos en
el ordenador. Aunque muchas de las caractersticas del sistema de archivos se inventaron originalmente para el
Sistema UNIX, su estructura ha resultado ser tan til que se ha adoptado por muchos otros sistemas operativos.
Por ejemplo, DOS adopt muchos de sus atributos importantes.
Un archivo es la estructura bsica utilizada para almacenar informacin en el Sistema UNIX. El nombre de archivo
identifica de manera unvoca al archivo. El sistema operativo UNIX conoce dnde est localizado el archivo y
guarda adems otro tipo de informacin sobre el archivo.
Se puede definir formalmente el trmino archivo como un conjunto de datos con un nombre asociado. Los
archivos suelen residir en dispositivos de almacenamiento secundario, tales como cintas, discos rgidos o
disquetes.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 11 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
La razn de asignar un nombre a cada archivo es que de este modo tanto los usuarios como los programas
pueden hacer referencia a los mismos de una forma lgica.
Los procesos o programas en ejecucin disponen de un conjunto de funciones proporcionadas por el sistema
operativo para poder manipular esos archivos. Ese conjunto de funciones se conoce con el nombre de llamadas
al sistema.
El concepto de llamada al sistema es ms amplio, pues engloba tambin funciones relacionadas con la
manipulacin de procesos y dispositivos.
Un proceso es un programa en ejecucin que puede escribir datos en un archivo mediante la llamada al sistema
write y leerlos ms tarde, o bien dejarlos all para que otros procesos puedan leerlos mediante la llamada al
sistema read. Tambin los procesos tienen la posibilidad de crear archivos, aadir o eliminar informacin en ellos,
desplazarse dentro para consultar la informacin deseada, etc. a partir del correspondiente conjunto de llamadas
al sistema.
En cierto modo, se puede entender un archivo como una extensin del conjunto de datos asociados a un proceso,
pero el hecho de que estos datos continen existiendo aunque el proceso haya terminado, los hace
especialmente tiles para el almacenamiento de informacin a largo plazo.
Todo el trabajo de los usuarios de un Sistema UNIX est almacenado en archivos. En algunos sistemas podra
ser difcil e incluso imposible encontrar un archivo. El Sistema UNIX tiene varias capacidades que facilitan mucho
este trabajo. Algunas de estas capacidades tienen que ver con la naturaleza bsica del sistema de archivos.
Otras tienen que ver con los programas de utilidad disponibles en el Sistema UNIX.
Algunos sistemas operativos imponen a todos sus archivos una estructura determinada bien definida. En UNIX un
archivo no es ms que una secuencia de bytes (8 bits). Algunos programas esperan encontrar estructuras de
diferentes niveles, pero el ncleo (kernel) no impone ninguna estructura sobre los archivos. Por ejemplo, los
editores de texto esperan que la informacin guardada en el archivo se encuentre en formato ASCII, pero el
ncleo no sabe nada de eso.
Un sistema de archivos se puede definir como aquella parte del sistema responsable de la administracin de los
datos en dispositivos de almacenamiento secundario. El sistema de archivos debe proporcionar los medios
necesarios para un almacenamiento seguro y privado de la informacin y, a la vez, la posibilidad de compartir esa
informacin en caso de que el usuario lo desee.
Entre las caractersticas ms relevantes del sistema de archivos UNIX podemos citar las siguientes:
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 12 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
El usuario tiene una visin lgica de los datos, es el sistema el encargado de manipular correctamente los
dispositivos y darle el soporte fsico deseado ala informacin. El usuario no tiene que preocuparse por los
dispositivos fsicos, es el sistema el que se encarga de la forma en que se almacenan los datos en los
dispositivos y de los medios fsicos de transferencia de datos desde y hacia los mismos.
Tratar a los dispositivos de entrada salida como si fuesen archivos.
Tiene una estructura jerrquica en forma de rbol invertido.
Realizar un tratamiento consistente de los datos de los archivos.
Es un sistema de archivos dinmico porque permite crear, modificar y eliminar ficheros.
Los archivos aumentan su tamao dinmicamente, no teniendo el usuario que especificar previamente un
tamao.
En UNIX los archivos estn organizados en lo que se conoce como directorios. Un directorio no es ms que un
archivo algo especial, el cual contiene informacin que permite localizar otros archivos. Los directorios pueden
contener, a su vez, nuevos directorios, los cuales se denominan subdirectorios.
A la estructura resultante de esta organizacin se la conoce con el nombre de estructura en rbol invertido.
En el rbol, todos los archivos y directorios dependen de un nico directorio denominado directorio raz o root, el
cual se representa por el smbolo slash "/". En caso de que tengamos vatios dispositivos fsicos de
almacenamiento secundario en el sistema (normalmente discos o particiones de disco), todos deben depender del
directorio raz, y el usuario tratar cada uno de los discos como un subdirectorio que depende, directa o
indirectamente,
Asignacin continua: Se colocan los k bytes que ocupa un fichero consecutivamente en el disco, Esta
solucin tiene el problema de que si el fichero crece ser necesario mover el fichero a otra ubicacin, es
decir, tendremos fragmentacin externa.
Asignacin discontinua: Los k bytes que ocupa el fichero se dividen en x bloques de un tamao z y se
colocan de forma no contigua en el disco en bloques. Esto tiene el problema que si el tamao del bloque
es muy grande se produce fragmentacin interna y si el tamao del bloque es muy pequeo se aumenta
el tiempo de acceso. Generalmente, el tamao del bloque es de 512, 1024 o 2048 bytes.
Un nombre de archivo puede ser casi cualquier secuencia de caracteres (generalmente dos nombres de archivos
se consideran el mismo si coinciden en los primeros catorce caracteres, de manera que se debe tener cuidado si
se excede en este nmero de caracteres. Sin embargo, esto slo ocurre para ciertos tipos de archivos).
El Sistema UNIX coloca pocas restricciones sobre cmo nombrar archivos. Se pueden utilizar caracteres ASCII,
aunque es muy necesario no incluir caracteres no imprimibles (tecla ctrl., alt, etc), espacios en blanco, tabulador,
y los meta caracteres del shell.
En cuanto a la extensin decir que UNIX es indiferente a la extensin, aunque es recomendable darle la extensin
que espera la aplicacin que trata el fichero, por ejemplo el compilador de java espera un .java
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 13 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Cuando se crean archivos y directorios, est trabajando con un programa importante del Sistema UNIX
denominado el shell. Debera evitar utilizar caracteres en los nombres de archivos que tengan significado especial
para el intrprete de rdenes shell.
UNIX distingue cinco tipos de archivos: archivos sencillos, directorios, enlaces simblicos o vinculos, archivos de
dispositivos, y tuberas (pipes) con nombre.
UNIX no asocia ninguna estructura ni ningn significado al contenido del archivo, ya que para l un archivo no es
mas que una ristra de bytes. La encargada de darle un significado a esa ristra de bytes es la aplicacin que
maneja el fichero. Por ejemplo el editor de textos vi espera que el contenido de un fichero sea caracteres ASCII,
un navegador web espera que el contenido sea una pagina html, etc.
Vnculos. Un vnculo no es una clase de archivo, sino un segundo nombre para un archivo. Si dos usuarios
necesitan compartir la informacin de un archivo, ellos pueden tener copias separadas de este archivo. Un
problema al mantener copias separadas es que las dos copias pueden rpidamente perder la consistencia. Por
ejemplo, un usuario puede realizar cambios que el otro podra no conocer.
Un vnculo proporciona la solucin a este problema. Con un vnculo, dos usuarios pueden compartir un nico
archivo. Ambos usuarios parecen tener copias del archivo, pero solamente existe un archivo con dos nombres.
Los cambios que cualquier usuario realiza tienen lugar sobre la versin comn. Este vnculo no solamente ahorra
espacio al tener una nica copia de un archivo, sino que asegura que la copia que cada uno utiliza es la misma.
Sin embargo, existen un tipo especial de vnculos denominado Vnculos simblicos: Los vnculos se pueden
utilizar para asignar ms de un nombre a un archivo. Pero tienen algunas limitaciones importantes. No se pueden
utilizar para asignar a un directorio ms de un nombre. y no se pueden utilizar para vincular nombres de archivos
sobre computadoras diferentes. Esto es un fallo importante de los vnculos, ya que la Versin 4 proporciona dos
sistemas de archivos distribuidos, NFS y RFS, que hacen posible la comparticin de archivos entre
computadoras.
Estas limitaciones pueden eliminarse utilizando vnculos simblicos, introducidos en el UNIX Sistema V Versin 4
procedente de BSD. Un vnculo simblico es un archivo que slo contiene el nombre de otro archivo. Cuando el
sistema operativo opera sobre un vnculo simblico, ste se dirige al archivo al que apunta el vnculo simblico.
Los vnculos simblicos no slo se pueden utilizar para asignar ms de un nombre a un archivo, sino que pueden
usarse para asignar ms de un nombre a un directorio.
Los vnculos simblicos tambin pueden ser utilizados por vnculos que residen en sistemas de archivos fsicos
diferentes. Esto hace posible que un rbol de directorio lgico incluya archivos que residen sobre computadoras
diferentes que estn conectadas a travs de una red.
Directorios. Un directorio es un archivo que contiene informacin sobre las localizaciones y atributos de otros
archivos. Bsicamente un directorio es un contenedor de un grupo de archivos organizados de la forma deseada.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 14 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Sobre el Sistema UNIX, un directorio tambin puede contener otros directorios. Un directorio dentro de otro
directorio se denomina subdirectorio. Se puede subdividir un directorio en tantos subdirectorios como desee, y
cada uno de ellos puede contener tantos subdirectorios como quiera.
Cada entrada en el directorio contiene el nombre del archivo y su nmero de inode. La cantidad de bytes
reservada para el nombre del archivo suele ser 256 caracteres. Toda la informacin relativa al archivo est
almacenada en su inode. Todos los directorios en UNIX son archivos y pueden contener cualquier nmero de
entradas, adems no existe limitacin en el nmero de archivos o subdirectorios que se pueden almacenar en un
directorio.
Entrada de un directorio
Archivos de dispositivos.
UNIX se comunica con los dispositivos perifricos por medio de los archivos de dispositivo, por lo tanto se puede
ver un archivo de dispositivo como un archivo especial que representa un dispositivo fisico. Puede ser un terminal,
un tarjeta de red, disco duro SCSI o IDE, etc, es decir, es el medio utilizado para acceder a dispositivos hardware,
estando por tanto, cada hardware asociado a un archivo especial.
Desde la perspectiva del usuario, el Sistema UNIX trata los archivos especiales como archivos ordinarios; esto es,
puede leer o escribir los dispositivos exactamente como lee y escribe los archivos ordinarios. Sin embargo no
contienen datos sino informacin de la ubicacin del dispositivo y de cmo se va a comunicar UNIX con el mismo.
Esta forma de tratar el hardware del sistema tiene una consecuencia importante para los usuarios del Sistema
UNIX. Puesto que UNIX trata casi todo como si fuese un archivo, no se necesita aprender las particularidades del
hardware de la computadora. Una vez que se aprende a manejar los archivos del Sistema UNIX, se sabe cmo
manejar todos los objetos del Sistema UNIX.
Los archivos de dispositivos se almacenan en un directorio especial de UNIX: /dev pudiendo ser de dos tipos:
Archivos de dispositivo en modo carcter
Archivos de dispositivo en modo bloque.
Los archivos de dispositivo modo bloque son aquellos que manejan dispositivos en modo bloque. Los dispositivos
modo bloque transfieren datos en bloques de longitud fija a travs de buffers de entrada salida. Los dispositivos
que usan estos archivos son dispositivos de almacenamiento y acceso aleatorio, es decir, discos, cdroms, etc
Para crear este tipo de archivos se utiliza el comando mknod
Los archivos de dispositivo en modo carcter son aquellos que manejan dispositivos en modo carcter. Los
archivos de dispositivo de tipo carcter son aquellos que la entrada salida se realiza carcter a carcter no
necesitando de ningun tipo de sistema de archivos en especial, por lo tanto no se utilizan los buffers. Algunos
ejemplos de este tipo de archivos son: monitores, impresoras, etc. Al igual que los archivos de dispositivo modo
bloque, estos archivos se crean mediante la llamada al sistema mknod
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 15 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Estos archivos, al hacer un listado del directorio /dev, se identifican por su nombre y por dos nmeros, llamados
nmero mayor (major numbetr) y nmero menor (minor number). El primero de ellos coincide para todos los
dispositivos del mismo tipo y con el segundo se diferencia entre distintos dispositivos de la misma familia. Ambos
nmeros son empleados por el ncleo.
Son mecanismos de comunicacin que permiten la transferencia de datos entre dos procesos.
donde:
En la estructura del sistema de archivos de un UNIX versin System V se distinguen cuatro partes:
El bloque de arranque.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 16 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
El super bloque.
La lista de nodos ndice
Los bloques de datos.
Se sita al comienzo del sistema de archivos, en el primer sector, y contiene el cdigo de arranque que es un
programa que se encarga de buscar el sistema operativo y cargarlo en memoria para iniciar la mquina.
El sper bloque ocupa el primer bloque lgico del disco y describe el estado de un sistema de archivos
El sper bloque es la pieza mas importante en cualquier sistema de archivos, tanto que si se daa se pierden
todos los datos almacenados en el: sistema de archivos que representa. Para evitar esto, el superbloque es
redundante, es decir, existen varias copias del mismo, distribuidas por el disco para evitar los inconvenientes de
su prdida
Esta lista tiene una entrada (denominada inode) por cada archivo del sistema de archivos donde se guarda la
descripcin del mismo.
Durante el arranque del sistema, el ncleo lee la lista de inodes del disco y carga una copia en memoria conocida
como tabla de inodes.
Los inodes contienen toda la informacin acerca del archivo que representan. Esta informacin incluye
propietario, derechos de acceso, tamao, localizacin en el sistema de archivos, etc. A continuacin se muestran
aquellos campos componentes de un inode ms relevantes:
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 17 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Derechos de acceso. Se reservan nueve bits para representar los derechos de lectura, escritura y
ejecucin (rwx) para el propietario, el grupo y el resto, y otros tres bits para definir si estn o no activas las
banderas setuid, setgid y sticky bit.
Fecha de la ltima modificacin.
Contador de enlaces (links).
Tamao del archivo.
Entradas para los bloques de direccin. Las entradas que apuntan a los bloques de datos son 13. Los 10
primeros punteros apuntan a bloques directos; as, los datos de archivos pequeos (a lo sumo 10 bloques
de disco) pueden ser referenciados inmediatamente, puesto que mientras el archivo esta abierto se
mantiene una copia de su inode en memoria principal.
Los tres apuntadores siguientes apuntan a bloques indirectos.
El primero de ellos es un puntero indirecto simple,
El segundo un puntero indirecto doble
El tercero es un puntero indirecto triple.
La estructura comentada aparece representada en la siguiente Figura 2.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 18 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
bloques de datos
SIMPLE
DOBLE
TRIPLE
bloques de datos
bloques de datos
bloques de datos
Comienzan a continuacin de la lista de nodos ndice y ocupan el resto del sistema archivos. En los bloques de
datos se almacena el contenido de los archivos referenciados por un inode.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 19 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Para crear un sistema de archivos se utiliza la orden mkfs cuya sintaxis es la siguiente
mkfs [-vct] dispositivo tamao. Donde
Una vez creado el sistema de ficheros, hay que incorporarlo a la estructura jerrquica de Unix, lo que
habitualmente se denomina montar un sistema. Para ello, utilizaremos la orden mount.
Hay que montar los sistemas de archivos en directorios que tienen que estar vacios y a ese directorio se le llama
punto de montaje
Una vez que se acaba de trabajar con un sistema de archivo previamente montado hay que desasociarlo de la
estructura jerarquica, a esto se le llama desmontarlo y para ello se utiliza la orden umount, que recibe como
parmetro bien el directorio a desmontar o bien el dispositivo asociado a ese directorio
La estructura externa del sistema de archivos de Unix es jerrquica en forma de rbol invertido. Al directorio raz
se le denomina con el smbolo / y dentro de el puede haber tantos archivos como directorios se quiera.
Se puede observar que de esta forma se da una relacin padre-hijo, al igual que en cualquier rbol genealgico.
Todos los directorios tienen dos entradas especiales que son:
Al conectarnos al sistema UNIX, nos colocamos en un directorio especial denominado directorio de recepcion o
de partida, este directorio no se debe de confundir con el directorio donde se trabaja en un momento dado, al cual
se le llama directorio de trabajo.
En esta estructura, todo archivo o directorio se define por una ruta, por lo tanto la ruta no es mas que la forma de
localizar un archivo o directorio en el sistema de archivos. Existen dos tipos de rutas:
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 20 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Rutas absolutas: son aquellas que siempre parten del directorio raiz
Rutas relativas: son aquellas que parten del directorio de trabajo.
En los sistemas operativos tipo UNIX existen una serie de archivos y directorios estndar. Los directorios
estndar contienen archivos concretos.
Directorio raz ( / ) es el origen de la jerarqua del sistema de archivos. Contiene algunos archivos y
directorios estndar.
/bin es el directorio donde se encuentran los ejecutables de la mayora de las rdenes de UNIX, entre las
cuales se cuentan cat, chmod, cp, csh., date, echo, kill, ksh, In, Is, mail, mkdir, more, mv, ping, ps, pwd,
rm, rmdir, sh, stty, tar, vi, y zcat. Todos los archivos de este directorio son archivos ejecutables, o bien
vnculos simblicos que llevan a archivos ejecutables ubicados en otros directorios
/dev Es el directorio de dispositivos, y contiene archivos que corresponden a los dispositivos del sistema
(terminales, unidades de disco, lector de CD-ROM, impresora, etc.) Entre los archivos de este directorio
estn:
cdrom: el lector CD-ROM
fd: la unidad de disquete
hd: dispositivo IDE
sd: dispositivo SCSI
isdn: RDSI
Ip: impresora
tty terminal.
/etc El directorio /etc, contiene archivos para la administracin y configuracin del sistema, estando
restringidos su utilizacin a los usuarios. Entre los archivos residentes en este directorio estn
inetdconf
passwd
printcap
profile
services
shadown
/lib contiene las imgenes de las libreras compartidas. Estos ficheros contienen cdigo que compartirn
muchos programas. En lugar de que cada programa contenga una copia propia de las rutinas
compartidas, estas son guardadas en un lugar comn, en /lib. Esto hace que los programas ejecutables
sean menores y reduce el espacio usado en disco
/lost+found contiene todos los archivos que no estn relacionados con ningn directorio. Estos archivos
se buscan mediante una herramienta de UNIX, fsck (chequeo del sistema de archivos), que se emplea
para comprobar sistemas de archivos.
/tmp Usado por distintas rdenes y aplicaciones, el directorio /tmp contiene archivos temporales. Todos
los archivos de este directorio se borran peridicamente, para que el disco no se llene de archivos
temporales. La duracin de los archivos residentes en el directorio /tmp ser establecida por el
administrador del sistema
/users Dotado de un cierto tipo de organizacin, el directorio /users se utiliza normalmente para
almacenar los directorios iniciales de todos los usuarios del sistema.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 21 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
/usr Contiene Contienen una serie de subdirectorios que contienen a su vez algunos de los ms
importantes y tiles programas y ficheros de configuracin usados en el sistema. Algunos de estos
subdirectorios son:
/usr/X386 contiene el sistema X Window. El sistema X Window es un entorno grfico grande y
potente el cual proporciona un gran nmero de utilidades y programas grficos, mostrados en
"ventanas" en su pantalla. El directorio /usr/X386 contiene todos los ejecutables de X Window,
ficheros de configuracin y de soporte.
/usr/bin es el almacn real de programas del sistema UNIX. Contiene la mayora de los programas
que no se encuentran en otras partes como /bin.
/usr/etc Como /etc contiene diferentes ficheros de configuracin y programas del sistema,
/usr/etc contiene incluso ms que el anterior. En general, los ficheros que se encuentran en /usr/etc/
no son esenciales para el sistema, a diferencia de los que se encuentran en /etc, que si lo son.
/usr/include contiene los ficheros de cabacera para el compilador de C. Estos ficheros (la mayora de
los cuales terminan en .h, de "header") declaran estructuras de datos, subrutinas y constantes usados
en la escritura de programas en C. Los ficheros que se encuentran en /usr/include/sys son
generalmente usados en la programacin de UNIX a nivel de sistema.
/usr/g++-include contiene ficheros de cabecera para el compilador de C++ (muy parecido a
/usr/include).
/usr/lib contiene las libreras equivalentes "stub" y "static" a los ficheros encontrados en /lib. Al
compilar un programa, este es "enlazado" con las libreras que se encuentran en /usr/lib, las cuales
dirigen al programa a buscar en /lib cuando necesita el cdigo de la librera. Adems, varios
programas guardan ficheros de configuracin en /usr/lib.
/usr/local es muy parecido a /usr contiene programas y ficheros no esenciales para el sistema, pero
que hacen el sistema ms divertido y excitante. En general, los programas que se encuentran en
/usr/local son especficos de su sistema, esto es, el directorio /usr/local difiere bastante entre
sistemas UNIX.
/usr/man Este directorio contiene las pginas de manual. Hay dos subdirectorios para cada
pgina "seccin" de las pginas (use la orden man man para ms detalles). Por ejemplo,
/usr/man/man1 contiene los fuentes (es decir, los originales por formatear) de las pginas de manual
de la seccin 1, y /usr/man/cat1 las pginas ya formateadas de la seccin 1.
/var contiene directorios que a menudo cambian su tamao o tienden a crecer. Muchos de estos
directorios solian residir en /usr, pero los directorios que cambian a menudo han sido llevados a /var.
Algunos de estos directorios son:
/var/adm contiene varios ficheros de inters para el administrador del sistema, especificamente
histricos del sistema, los cuales recogen errores o problemas con el sistema. Otros ficheros guardan
las sesiones de presentacin en el sistema, as como los intentos fallidos.
/var/spool contiene ficheros van a ser pasados a otro programa. Por ejemplo, el correo de llegada
ser almacenado en /var/spool/mail hasta que lo lea o lo borre. Artculos nuevos de las news se
encuentran en /var/spool/news, etc.
/unix contiene la imagen binaria del ncleo de UNIX que se carga al arrancar el sistema. El UNIX BSD
tiene la imagen en /vmunix.
/etc/passwd Es un fichero que contiene la informacin anterior acerca de los usuarios. Cada lnea del
fichero contiene informacin acerca de un nico usuario; el formato de lnea es:
nombre:clave encriptada:UID:GID:info_usuario:dir_inicio:shell
nombre: es el login del usuario que introduce para conectarse.
clave: contiene la contrasea encriptada en los sistemas antiguos de UNIX; actualmente la clave
encriptada aparece en /etc/shadow, con lo que este campo del fichero /etc/passwd aparece en
blanco.
UID: numero asignado al usuario; su rango est entre 0 y 65535, estando reservado el 0 al root y del
1 al 99.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 22 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
GID: numero asignado al grupo al que pertenece el usuario; su rango est entre 0 y 65535, estando
reservado del 0 al 99.
Info_usuario: contiene informacin relativa al usuario: nombre, telefono, etc.
Dir_inicio: contiene la ruta absoluta del directorio de recepcin del usuario.
Shell: contiene la ruta absoluta del shell de conexin.
Cambio de directorios. Se puede mover entre directorios utilizando la orden cd (change directory), con una ruta
absoluta o relativa.
Si se emite la orden cd sin ningn camino, se mover al directorio de recepcin
Creacin de un directorio. Se puede crear nuevos directorios en el sistema de archivos con la orden mkdir
(make directory).
Movimiento y renombrado de archivos. Un archivo se mueve desde un directorio hasta otro con mv.
Movimiento de directorios. Otra nueva caracterstica de la Versin 4 es la posibilidad de utilizar mv para mover
directorios. Una nica orden mv se puede utilizar para mover un directorio y todos sus archivos y subdirectorios,
de la misma forma que se mueve un nico archivo
Copia de archivos. Un motivo corriente para copiar un archivo es la seguridad, de manera que uno pueda
modificar un archivo sin preocuparse de la prdida del original. La orden cp es similar a mv, excepto que copia
archivos en lugar de moverlos o renombrarlos.
Copia del contenido de un directorio. Una caracterstica nueva de cp en la Versin 4 es la opcin -r (recursive),
que permite copiar una estructura de directorio completa en otro directorio.
Eliminacin de archivos. Para suprimir archivos que no se quieren o no se necesitan ms se utiliza la orden rm
(remove). La orden rm acepta varios argumentos y toma varias opciones.
Si el directorio est vaco (no contiene ni archivos ni subdirectorios), puede utilizar la orden rmdir
(remove directory).
Si el directorio no esta vaco se utiliza la orden rm r
Vinculacin de archivos. La orden ln crea vnculos entre entradas de directorio,
Vnculos simblicos. La orden In puede vincular archivos dentro de un nico sistema de archivos. En la Versin
4 se pueden vincular archivos entre sistemas de archivos utilizando la opcin -s (symbolic) con In.
UNIX mantiene infomlacin complementaria de los archivos, que se puede obtener utilizando las opciones de la
orden ls. Existen muchas opciones con la orden ls. Se utilizan para obtener infomlacin complementaria de los
archivos y para controlar el formato de visualizacin de esta infomlacin.
Los archivos con nombres que comienzan con un punto estn ocultos en el sentido de que nomlalmente no se
visualizan cuando se listan los archivos de un directorio. Para evitar confusin, ls supone que no se quieren listar
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 23 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
estos ficheros a menos que explcitamente se solicite. Es decir, ls no visualiza ningn nombre de archivo que
comience con un . (punto).
Para ver todos los archivos de un directorio, incluidos los ocultos utilice ls -a.
Cuando se utiliza la orden ls no se sabe si un nombre hace referencia aun archivo ordinario, a un programa
ejecutable o a un directorio. Si se ejecuta la orden ls -F, produce una lista donde los nombres se marcan con
smbolos que indican la clase de archivo a que cada nombre hace referencia:
Por defecto, ls en la Versin 4 visualiza los archivos en columnas mltiples, en orden descendente. Existen
algunas opciones frecuentemente utilizadas con la orden ls que controlan el fomlato utilizado para visualizar los
nombres de archivos.
Se puede utilizar la opcin -x para visualizar los nombres de los archivos horizontalmente, en tantas lneas como
sea necesario, en orden ASCll. Se puede utilizar la opcin -1 (uno) para hacer que los archivos se visualicen una
lnea por fila, en orden alfabtico.
Para obtener informacin ms detallada sobre los archivos, se utiliza la opcin -l (longformat) de ls.
Por ejemplo,:
$ ls -1
tota128
drwxr-xr-x 3 you group1 362 Nov 29 02:34 ficher1
lrwxr-xr-x 2 you group1 666 Apr 1 21:17 ficher2
-rwxr-xr-x 1 you group1 82 Feb 2 08:08 ficher3
La primera lnea ("total 28") de la salida da la cantidad en bloques de espacio de disco utilizado
El resto de las lneas del listado muestran informacin sobre cada uno de los archivos del directorio.
El resto del primer campo, es decir, los nueve siguientes caracteres, contienen informacin sobre las
autorizaciones de los archivos. Las autorizaciones determinan quin puede operar con un archivo o un directorio y
cmo puede utilizarlo. Las autorizaciones son una parte importante del sistema de archivos de UNIX.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 24 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Los campos tercero y cuarto de la izquierda muestran el propietario del archivo (en este caso los archivos
pertenecen al nombre you y el grupo al que pertenece group1).
El sexto campo indica la fecha en la que se cre o modific por ltima vez el archivo.
Contenido de un archivo. La forma ms simple y ms bsica de inspeccionar un archivo es con la orden cat. cat
(de concatenate) toma cualquier archivo que se le especifica y lo visualiza sobre la pantalla.
5. INTERFACES GRAFICAS.
La interfaz grafica de UNIX es el sistema X-Window (ojo no se dice X-Windows), o familiarmente conocido por X.
El nacimiento de X deriva del diseo de un entorno de ventanas denominado W para el sistema operativo V en la
Universidad de Stanford. Al mismo tiempo en el MIT se trabajaba en el proyecto Atenea, que intentaba conseguir
una interfaz grfica independiente de una plataforma hardware concreta y que fuera capaz de comunicarse en
red.
Los dos proyectos se juntaron en uno solo, dando lugar a la primera versin de X-Window en el 1986,
denominndose esta primera versin X10
IBM, Sun, AT&T, MIT y DEC forman un grupo denominado X Consortium, para promocionar y estandarizar X
Window. Este grupo de grandes organizaciones supervisa la creacin y lanzamiento de nuevas versiones de X11.
La versin actual de X es la X11R6 (X11 Release 6). La mayor parte de los UNIX actuales incorporan el sistema
de ventanas X Windows diferenciandose en el gestor de ventanas que utilizan.
Para ser ms concretos en la definicin hay que decir que X est desarrollado bajo el modelo cliente-servidor.
El software servidor gestiona todo el acceso al hardware, encargandose de controlar los dispositivos
que se utilizarn en la interfaz grafica: raton, teclado y pantalla. El servidor X recibe los eventos
generados por este hardware y tambien es el encargado de mostrar los grficos e iconos en el monitor.
Mas explcitamente, las tareas del servidor son:
Manipulacin a bajo nivel de ventanas (operaciones de creacin y destruccin de las mismas), sin
confundirlo con el manejo que posteriormente podemos hacer mediante el gestor escogido.
Servir como gestor de recursos del sistema para las aplicaciones a ejecutar.
Procesar rdenes para el dibujo de grficos.
Notificar a las aplicaciones los eventos ocurridos (pulsado de una tecla, movimiento del ratn,
errores...)
Monitorizar y comunicar a las aplicaciones los errores que se pueden generar.
Control de la pantalla.
Comunicacin entre los diferentes clientes (cortar y pegar...)
El software cliente son todos los programas que utilizan el servidor X para interactuar con los usuarios,
estableciendo para ello una conexin con el servidor X por la cual le dicen al servidor que es lo que
quieren mostrar en la pantalla y el servidor les envia las ordenes del usuario. Ejemplo de clientes son
xterm (simula un terminal en una ventana), xman, xview, Mosaic (existe una versin para LINUX), etc..
cada uno de lo que coloquialmente denominamos "programas para X " "programas para ejecutar bajo
X" (aunque con xterm tambin podemos ejecutar cualquier otro software que no est concebido para X).
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 25 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
La comunicacin con el servidor se realiza mediante el denominado protocolo X Network que especifica una
serie de normas y convenios sobre como se envia la informacin entre los clientes y los servidores.
Gracias a este protocolo X y a la distincin entre clientes y servidores, es posible ejecutar un cliente X en un
ordenador remoto.
Por encima del programa de implementacin del protocolo X Network est una interfaz de bajo nivel, que se
encuentra entre el sistema base de red y los programas de ms alto nivel. Esta interfaz de bajo nivel se llama
Xlib. Los programas de aplicacin normalmente utilizan funciones de Xlib en vez de otras funciones de bajo nivel.
Por ultimo decir que XFree86 es la implementacin del X Window disponible para LINUX (y otras
implementaciones del UNIX) en su versin 3.1.2, basada en el servidor X386 desarrollado por el MIT destinado a
plataformas de Intel 386/486 y Pentium adems de la configuracin hardware comn a este tipo de procesadores.
Para conocer ms detalles del software instalado podemos ejecutar el comando 'xdpyinfo' en una ventana de
terminal el cual nos mostrar informacin detallada sobre la versin y caractersticas del entorno grfico.
XFree86 est distribuido bajo una licencia que permite disponer libremente tanto de software que lo forma en
forma de cdigo fuente como en formato binario. Est desarrollado, mantenido y distribuido por grupo XFree86
Project Inc., cuyo fin es el desarrollar el servidor X Window para cualquier UNIX ejecutable en plataformas PC
(http://www.xfree.org).
Un gestor de ventanas no es mas que un programa cliente que se encarga de aportar a todas las ventanas un
aspecto comn en base a bordes de ventana, estilo de los botones, barras de desplazamiento, barra de titulo, etc.
Las distribuciones de UNIX (al igual que las de Linux) traen consigo diversos gestores de ventanas dandole la
oportunidad al usuario que escoga el que ms le gusta o el que se acople mejor a su mquina, etc.
Gestores de ventanas son los famosos GNOME y KDE para Linux, CDE para Solaris, fwdm para Unix, aunque
existen muchos ms disponibles en internet
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 26 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
Otras compaas no tienen una vocacin tan comercial como las anteriores. Ejemplos de estas compaias son:
Hay otras implementaciones de UNIX para el 80386 y 80486. La arquitectura 80386 se presta al diseo de UNIX y
buen un nmero de vendedores han sacado ventaja de este factor.
Todas las versiones no comerciales de UNIX soportan bsicamente el mismo software, entorno de programacin,
y caractersticas de red. Sin embargo, hay algunas fuertes diferencias entre las versiones comerciales de UNIX.
En primer lugar, las versiones no comerciales soportan un rango de hardware diferente de las implementaciones
comerciales, es decir, soportan la mayora de dispositivos hardware conocidos, sin embargo, los vendedores de
UNIX comercial por lo general tienen una base de soporte menos amplia, reduciendose a su propio hardware
En lo que concierne a estabilidad y robustez, muchos usuarios han comentado que las versiones no comerciales
son al menos tan estables como los sistemas UNIX comerciales.
El factor ms importante a considerar por muchos usuarios es el precio. El software no comercial es gratis, si se
tiene acceso a Internet. Si no tiene acceso a Internet, tiene la opcin de comprarlo pidindolo por correo en
disquetes, cinta o CD-ROM.
El valor de las implementaciones comerciales de UNIX incluye el precio del software en s, mas la documentacin,
el soporte, y relativamente una calidad. Estos factores son muy importantes para grandes instituciones, pero los
usuarios de ordenadores personales pueden no necesitar esos beneficios.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 27 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
7. CONCLUSIN
UNIX es uno de los sistemas operativos con ms fama en todo el mundo junto con los sistemas operativos de
Microsoft, sin embargo, cabe destacar que cuando se habla de UNIX se est haciendo referencia a una
implementacin concreta de UNIX.
Es un sistema que posee una alta capacidad de configuracin, proporciona varios interpretes de comandos con
una gran disponibilidad de configuracin y una gestin del sistema de archivos inmejorable, asociando un sistema
de archivos determinado a una porcin del rbol jerrquico.
De los shells ms utilizados en UNIX destaca sobre todo el Bourne Shell (sh), que se encuentra en todas las
versiones de UNIX, y el bash (Bourne Again Shell) que incorpora las mejoras que aplicaron en su da el C Shell y
el Korn Shell al Bourne Shell, este ltimo utilizado mayoritariamente en LINUX.
Es curioso observar como a partir de una versin concreta de UNIX, las diversas compaas que ofrecen su
propio UNIX conservar una forma estndar de colocar sus ficheros y directorios en la estructura jerrquica de
UNIX.
El temor a la instalacin es lo primero que se le puede achacar al sistema frente a otros como por ejemplo UNIX,
sin embargo es agradable decir que las compaas se estn dando cuenta de estos detalles y en las ultimas
versiones de sus respectivos UNIX se estn esforzando en la realizacin de una instalacin grfica. Por ejemplo
las famosas distribuciones de RedHat y SuSe.
Que decir tiene la configuracin del sistema, que tambin es complicada por el amplio numero de opciones
disponibles para cualquier aplicacin (por ejemplo un firewall) y como pasa anteriormente las compaas tambin
se mejoran da a da en este aspecto, solo hay que echarle un vistazo a la ultima versin de SuSe, donde casi
toda la configuracin del sistema se realiza con asistentes.
Los comandos bsicos para operar con archivos y directorios son los mismos en todos los interpretes y en todas
las versiones de UNIX, variando eso si, ciertos comandos de configuracin.
Gracias al modelo cliente-servidor del sistema X-Window es posible ejecutar un entorno grfico en un monitor que
no este fsicamente conectado al sistema, incluso con separacin de miles de kilmetros. Algo parecido se puede
hacer tambien ahora con Windows XP y su famosa herramienta de control remoto de escritorio.
8. BIBLIOGRAFA
James C. Amstrong Jr.: Los secretos de UNIX.
M. Catalina Gallego y A. Catalina Gallego: Iniciacin y Referencia Unix/Linux
Steve Moritsugu: La Biblia de UNIX.
Syed M. Sarwar, Robert Koretsky, Syed A. Sarwar: El libro de UNIX.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 28 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
9. ESQUEMA RESUMEN
Unix es un sistema operativo totalmente aceptado en el mundo de la informatica y sobre todo como servidor de
red, debido a sus caractersticas inherentes. Existen sobre todo dos versiones de UNIX principales
El sistema est escrito en un lenguaje de alto nivel, hacindolo fcil de leer, comprender, cambiar, y
mover a otras mquinas.
Posee una simple interfase de usuario con el poder de dar los servicios que los usuarios quieren.
Provee de primitivas que permiten construir programas complejos a travs de programas simples.
Usa un sistema de archivos jerrquico que permite un mantenimiento fcil y una implementacin eficiente.
Usa un formato consistente para los archivos, el flujo de bytes, haciendo a los programas de aplicacin
ms fciles de escribir.
Provee una simple y consistente interfase a los dispositivos perifricos.
Es un sistema multiusuario y multitarea; cada usuario puede ejecutar varios procesos simultneamente.
Oculta la arquitectura de la mquina al usuario, haciendo fcil de escribir programas que se ejecutan en
diferentes implementaciones hardware
El shell dispone de un mecanismo para definir variables que se utilizan para almacenar informacin utilizada por
los programas del sistema o por el usuario. Algunas de esas variables son.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 29 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
El sistema de archivos de UNIX permite organizar y gestionar la informacin contenida en el equipo. Aunque
muchas de las caractersticas del sistema de archivos se inventaron.
Para cada archivo se definen 3 tipos de acceso diferentes: lectura, escritura y ejecucin.
UNIX no impone ninguna restriccin a la organizacin interna de un fichero.
UNIX ofrece herramientas para realizar copias de seguridad de ficheros
Tratar a los dispositivos de entrada salida como si fuesen archivos.
Tiene una estructura jerrquica en forma de rbol invertido.
Realizar un tratamiento consistente de los datos de los archivos.
En la estructura del sistema de archivos de un UNIX versin System V se distinguen cuatro partes:
El bloque de arranque: contiene el programa busca el sistema operativo y lo carga en memoria para
iniciar la mquina.
El super bloque. Muestra el estado de un sistema de archivos
La lista de nodos ndice: tiene una entrada (denominada inode) por cada archivo del sistema de archivos
donde se guarda la descripcin del mismo.
Los bloques de datos. Almacenan el contenido de los archivos referenciados por un inode.
La interfaz grfica de UNIX es el sistema X-Window basado en el modelo cliente servidor. Conceptos importantes
El servidor X gestiona todo el acceso al hardware, encargndose de controlar los dispositivos que se
utilizarn en la interfaz grafica: ratn, teclado y pantalla. El servidor X recibe los eventos generados por
este hardware y tambin es el encargado de mostrar los grficos e iconos en el monitor.
El software cliente programas que utilizan el servidor X para interactuar con los usuarios
Protocolo X: Dicta las normas a seguir para lograr una comunicacin cliente servidor.
Gestor de ventanas: Ofrece una apariencia comn a todas las ventanas.
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 30 de 31
www.haztefuncionario.com Material registrado. Prohibida su reproduccin.
Copia exclusiva de Jos Ignacio Mndez Yanes. Av de los Poblados 133, 7 - 3 - 28025 - Madrid - Tel. 917464968
TEMARIO-TICB-feb04 B1G2T01
Actualizado en febrero de 2004 Pgina 31 de 31