Sie sind auf Seite 1von 106

AS/400e

Introduccin al sistema de
archivos integrado
Versin 4

IBM

AS/400e

Introduccin al sistema de
archivos integrado
Versin 4

IBM

Copyright International Business Machines Corporation 1999, 2000. Reservados todos los derechos.

Contenido
Acerca de la introduccin al sistema de
archivos integrado . . . . . . . . . . v
Quin debe leer el manual Introduccin al sistema
de archivos integrado? . . . . . . . . . . . v

Captulo 1. Introduccin al Sistema de


Archivos Integrado . . . . . . . . . . 1
Qu es el sistema de archivos integrado? . . .
Por qu utilizar el sistema de archivos integrado?

. 1
. 2

Captulo 2. Conceptos del sistema de


archivos integrado . . . . . . . . . . 3
Archivos continuos en el sistema de archivos
integrado . . . . . . . . . . . . . . . 3
Sistemas de archivos en el sistema de archivos
integrado . . . . . . . . . . . . . . . 4
Directorios en el sistema de archivos integrado . . . 6
Directorio actual y directorio inicial en el sistema de
archivos integrado . . . . . . . . . . . . 8
Directorio inicial en el sistema de archivos
integrado . . . . . . . . . . . . . . 8
Nombre de va de acceso en el sistema de archivos
integrado . . . . . . . . . . . . . . . 9
Enlaces y enlaces simblicos en el sistema de
archivos integrado . . . . . . . . . . . . 10
Enlaces fijos en el sistema de archivos integrado 10
Enlaces simblicos en el sistema de archivos
integrado . . . . . . . . . . . . . . 11
Atributos ampliados en el sistema de archivos
integrado . . . . . . . . . . . . . . . 13
Continuidad de nombres a travs de distintos
modelos de codificacin en el sistema de archivos
integrado . . . . . . . . . . . . . . . 13

Captulo 3. Acceso al sistema de


archivos integrado . . . . . . . . . 15
Acceso al sistema de archivos integrado desde el
AS/400 . . . . . . . . . . . . . . . .
Realizacin de operaciones en el sistema de archivos
integrado desde el AS/400 . . . . . . . . .
Mandatos del sistema de archivos integrado . . .
Reglas de nombres de vas de acceso para mandatos
y pantallas del sistema de archivos integrado . . .
Directorios que proporciona el sistema de archivos
integrado . . . . . . . . . . . . . . .
Utilizacin del sistema de archivos integrado desde
un cliente . . . . . . . . . . . . . . .
Conectarse desde un PC con el sistema de archivos
integrado . . . . . . . . . . . . . . .
Transferencia de archivos en el sistema de archivos
integrado . . . . . . . . . . . . . . .
Migracin de objetos a otro sistema de archivos en
el sistema de archivos integrado . . . . . . .

Copyright IBM Corp. 1999, 2000

15
15
16
19
21
22
24
25
25

Migracin de objetos a otro sistema de archivos


del sistema de archivos integrado . . . . . . 26

Captulo 4. Soporte de programacin


para el sistema de archivos integrado . 29
Los archivos continuos en los programas . . .
Copia de datos entre archivos continuos y
archivos de base de datos . . . . . . .
Interfaces de programas de aplicacin (API) para el
sistema de archivos integrado . . . . . . .
API del sistema de archivos integrado . . . .
Funciones ILE C/400 en el sistema de archivos
integrado . . . . . . . . . . . . .
Reglas de nombres de vas de acceso para las API
del sistema de archivos integrado . . . . . .
Soporte de archivos grandes en las API del sistema
de archivos integrado . . . . . . . . . .
Descriptores de archivos en el sistema de archivos
integrado . . . . . . . . . . . . . .
La seguridad en los programas del sistema de
archivos integrado . . . . . . . . . .
Enlaces fijos y enlaces simblicos: comparacin .
Soporte de sockets en el sistema de archivos
integrado . . . . . . . . . . . . . .
Nombres y soporte internacional en el sistema de
archivos integrado . . . . . . . . . . .
Manejo de atributos ampliados en el sistema de
archivos integrado . . . . . . . . . . .
Conversin de datos en el sistema de archivos
integrado . . . . . . . . . . . . . .

. 29
. 29
. 32
. 33
. 36
. 36
. 37
. 38
. 39
. 40
. 41
. 41
. 42
. 43

Captulo 5. Sistemas de archivos:


conceptos . . . . . . . . . . . . . 45
Sistemas de archivos en el sistema de archivos
integrado: comparacin . . . . . . . . . .
Sistema de archivos raz (/) . . . . . . . .
Utilizacin del sistema de archivos raz (/) . .
Sistema de archivos de sistemas abiertos
(QOpenSys) . . . . . . . . . . . . . .
Utilizacin de QOpenSys . . . . . . . . .
Sistema de archivos de biblioteca (QSYS.LIB) . . .
Lista de autorizaciones QPWFSERVER en el
sistema de archivos QSYS.LIB . . . . . . .
Utilizacin de QSYS.LIB mediante la interfaz del
sistema de archivos integrado . . . . . . .
Sistema de archivos de servicios de biblioteca de
documentos (QDLS) . . . . . . . . . . .
Sistema de archivos integrado y HFS en el
sistema de archivos QDLS . . . . . . . .
Utilizacin de QDLS mediante la interfaz del
sistema de archivos integrado . . . . . . .
Sistema de archivos ptico (QOPT) . . . . . .
Sistema de archivos integrado y HFS en el
sistema de archivos QOPT . . . . . . . .

45
48
48
49
50
51
51
52
54
54
54
56
56

iii

Utilizacin de QOPT mediante la interfaz del


sistema de archivos integrado . . . . . . .
Sistema de archivos del servidor de archivos
OS/400 (QFileSvr.400) . . . . . . . . . . .
Utilizacin de QFileSvr.400 mediante la interfaz
del sistema de archivos integrado . . . . . .
Sistema de archivos definido por el usuario (UDFS)
Conceptos del sistema de archivos integrado
UDFS . . . . . . . . . . . . . . .
Utilizacin de UDFS mediante la interfaz del
sistema de archivos integrado . . . . . . .
Sistema de archivos de red (NFS) . . . . . . .
Utilizacin de los sistemas de archivos NFS
mediante la interfaz del sistema de archivos
integrado . . . . . . . . . . . . . .
Sistema de archivos NetWare (QNetWare) . . . .
Montar sistemas de archivos NetWare . . . .
Estructura de directorios de QNetWare . . . .
Utilizacin de QNetWare mediante la interfaz del
sistema de archivos integrado . . . . . . .
Sistema de archivos de Windows NT Server (QNTC)
Utilizacin de QNTC mediante la interfaz del
sistema de archivos integrado . . . . . . .

57
59
60
63
63
64
67

67
69
70
70
71
72
73

Apndice A. Programa de ejemplo con


funciones C del sistema de archivos
integrado. . . . . . . . . . . . . . 77

iv

OS/400 Introduccin al sistema de archivos integrado V4R5

Apndice B. Llamada de procedimiento


remoto independiente del transporte . . 83
Selecciones de red . . . . . . . . .
Conversin de nombre a direccin. . . .
eXternal Data Representation (XDR) . . .
Autenticacin. . . . . . . . . . .
RPC independiente del transporte (TI-RPC)
Interfaces API TI-RPC simplificadas . .
Interfaces API TI-RPC de nivel superior .
Interfaces API TI-RPC de nivel intermedio
Interfaces API TI-RPC de nivel experto .
Otras interfaces API TI-RPC . . . . .

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

83
84
84
86
86
86
87
87
87
87

Apndice C. Ejemplo de cdigo RPG


para un sistema de archivos integrado . 89
Bibliografa . . . . . . . . . . . . . 91
ndice . . . . . . . . . . . . . . . 93

Acerca de la introduccin al sistema de archivos integrado


Este manual proporciona una visin general del sistema de archivos integrado, que
incluye:
v Qu es el sistema de archivos integrado?
v Por qu puede ser conveniente utilizarlo.
v Conceptos y terminologa del sistema de archivos integrado.
v Las interfaces que se pueden utilizar para interactuar con el sistema de archivos
integrado.
v Las API y tcnicas que se pueden utilizar para crear programas que interacten
con el sistema de archivos integrado.
v Caractersticas de los sistemas de archivos individuales.

Quin debe leer el manual Introduccin al sistema de archivos


integrado?
Esta publicacin est destinada a usuarios, programadores y gestores del AS/400
que desean conocer el sistema de archivos integrado y cmo se puede utilizar.

Copyright IBM Corp. 1999, 2000

vi

OS/400 Introduccin al sistema de archivos integrado V4R5

Captulo 1. Introduccin al Sistema de Archivos Integrado


Los siguientes temas describen el Sistema de Archivos Integrado del AS/400 y
muestran la utilidad que puede tener en el sistema.

Qu es el sistema de archivos integrado?


El sistema de archivos integrado es un componente de OS/400 que soporta la
gestin de almacenamiento y entrada/salida continua de forma similar a los
sistemas operativos PC y UNIX, proporcionando adems una estructura de
integracin para toda la informacin almacenada en el AS/400.
Las caractersticas clave del sistema de archivos integrado son las siguientes:
v Soporte para almacenar la informacin en archivos continuos que pueden
contener largas series continuas de datos. Estas series de datos pueden ser, por
ejemplo, el texto de un documento o los elementos de imagen en una imagen. El
soporte de archivos continuos se ha diseado para utilizarlo eficazmente en las
aplicaciones cliente/servidor.
v Una estructura de directorios jerrquica que permite organizar los objetos como
las frutas de las ramas de un rbol. Especificando la va de acceso a un objeto a
travs de los directorios se accede al mismo.
v Una interfaz comn que permite a los usuarios y a las aplicaciones acceder no
slo a los archivos continuos, sino tambin a archivos de base de datos, a
documentos y a otros objetos almacenados en el AS/400.
v Una visin comn de los archivos continuos almacenados localmente en el
AS/400, en el Integrated Netfinity Server para AS/400 o en un servidor
Windows NT remoto. Los archivos continuos pueden estar almacenados tambin
de manera remota en un servidor de red de rea local (LAN), un servidor
Novell NetWare, otro servidor AS/400 remoto o un servidor de Sistema de
Archivos de Red (NFS).

Sistema de archivos integrado


Directorios
Carpetas

Bibliotecas
Archivos de
base de datos

Archivos
continuos
Objetos

Documentos
RV3N076-1

Figura 1. Una estructura que abarca toda la informacin almacenada en el AS/400

Copyright IBM Corp. 1999, 2000

Por qu utilizar el sistema de archivos integrado?


El sistema de archivos integrado ampla las ya extensas posibilidades de gestin de
datos del OS/400 con posibilidades adicionales para mejorar el soporte a las
formas emergentes y futuras del proceso de informacin como, por ejemplo,
cliente/servidor, sistemas abiertos y multimedia. A continuacin se detallan
algunas de las ventajas que proporciona el sistema de archivos integrado.
v Ofrece un acceso ms rpido a los datos OS/400, especialmente para
aplicaciones como Client Access que utilizan el servidor de archivos OS/400.
v Permite un manejo ms eficaz de los tipos de datos continuos, tales como
imgenes, audio y vdeo.
v Proporciona una base de directorios y sistemas de archivos para dar soporte a
los estndares de sistemas abiertos basados en UNIX como, por ejemplo, POSIX
(Interfaz Porttil de Sistemas Operativos para Entornos Informticos) y XPG.
Esta estructura de archivos y directorios tambin proporciona un entorno
familiar para los usuarios de sistemas operativos de PC, como el Sistema
Operativo en Disco (DOS) y Windows 95/98 y NT.
v Permite manejar el soporte de archivos con posibilidades exclusivas (como los
archivos de base de datos orientados a registros, archivos continuos basados en
UNIX y servicio de archivos) como sistemas de archivos independientes, al
mismo tiempo que permite manejarlos mediante una interfaz comn.

Usuarios AS/400
Aplicaciones

Interfaz del sistema de archivos integrado

Sistema
de
archivos

Sistema
de
archivos

Sistema
de
archivos
RV3N062-1

Figura 2. Una interfaz comn para sistemas de archivos distintos

v Permite a los usuarios de PC aprovechar mejor la interfaz grfica de usuario. Por


ejemplo, los usuarios de Windows pueden utilizar las herramientas grficas de
Windows para efectuar operaciones en los archivos continuos y otros objetos del
AS/400 de la misma manera que lo hacen en los archivos almacenados en sus
PC.
v Este soporte proporciona continuidad en los nombres de objeto e informacin de
objeto asociada al pasar de un idioma nacional a otro. Este soporte garantiza que
los caracteres individuales se mantienen iguales al cambiar de la pgina de
cdigos de un idioma a la pgina de cdigos de otro idioma.

OS/400 Introduccin al sistema de archivos integrado V4R5

Captulo 2. Conceptos del sistema de archivos integrado


Archivos continuos en el sistema de archivos integrado
Un archivo continuo es una secuencia de bytes accesible al azar, sin ninguna otra
estructura impuesta por el sistema. El sistema de archivos integrado proporciona
soporte para almacenar informacin y trabajar con ella en la forma de archivos
continuos. Los documentos almacenados en carpetas AS/400 son archivos
continuos. Otros ejemplos de archivos continuos son los archivos de PC y los
archivos de los sistemas UNIX. Un archivo continuo del sistema de archivos
integrado es un objeto del sistema cuyo tipo es *STMF.
Para comprender mejor en qu consisten los archivos continuos, resulta efectivo
compararlos con los archivos de base de datos del AS/400. Un archivo de base de
datos est orientado a registro; tiene subdivisiones predefinidas que constan de
uno o ms campos con caractersticas especficas, como por ejemplo longitud y tipo
de datos.
Los archivos continuos y los archivos orientados a registro estn estructurados de
Archivo continuo

.........................................
.........................................
.........................................
Archivo de base de datos orientado a registros

..............................
..............................

.......
.......

..............................

.......

Campo 1

Campo n

Campo 2

Campo 3

Registro 1
Registro 2

Registro n
RV3N081-0

Figura 3. Comparacin de un archivo continuo y un archivo orientado a registros

forma distinta, y esta diferencia estructural afecta a la utilizacin de los mismos. La


estructura afecta a la forma de escribir una aplicacin para interactuar con los
archivos y en qu parte de la aplicacin es ms adecuado cada tipo de archivo. Un
archivo orientado a registro, por ejemplo, resulta adecuado para almacenar
estadsticas de cliente, como por ejemplo nombre, direccin y saldo de cuentas. Un
archivo orientado a registro permite acceder individualmente a estos campos
predefinidos y manipularlos, utilizando los amplios recursos de programacin del
AS/400. Sin embargo, un archivo continuo es ms adecuado para almacenar
informacin como, por ejemplo, la imagen de un cliente, que se compone de una
serie continua de bits que representan variaciones de color. Los archivos continuos
son adecuados especialmente para almacenar series de datos como el texto de un
documento, imgenes, audio y vdeo.
Consulte tambin el apartado Los archivos continuos en los programas en la
pgina 29.

Copyright IBM Corp. 1999, 2000

Sistemas de archivos en el sistema de archivos integrado


Un sistema de archivos proporciona el soporte para acceder a segmentos
especficos de almacenamiento que estn organizados como unidades lgicas. Estas
unidades lgicas del AS/400 son archivos, directorios, bibliotecas y objetos.
Cada sistema de archivos tiene un conjunto de estructuras y reglas lgicas para
interactuar con la informacin situada en el almacenamiento. Dichas estructuras y
reglas pueden ser distintas en cada sistema de archivos. De hecho, desde el punto
de vista de las estructuras y las reglas, el soporte del OS/400 para acceder a los
archivos de base de datos y a otros diversos tipos de objetos a travs de bibliotecas
puede considerarse un sistema de archivos. Igualmente, el soporte del OS/400 para
acceder a documentos (que en realidad son archivos continuos) a travs de la
estructura de carpetas puede considerarse un sistema de archivos independiente.
El sistema de archivos integrado trata el soporte de bibliotecas y el soporte de
carpetas como sistemas de archivos independientes. Otros tipos de soporte de
gestin de archivos que tienen posibilidades diferentes tambin se tratan como
sistemas de archivos independientes. Los sistemas de archivos son:
NFS

Sistema de Archivos de Red. Da al usuario acceso a los datos y objetos


almacenados en un servidor NFS remoto. Un servidor NFS puede exportar
un sistema de archivos de red que los clientes NFS montarn a
continuacin dinmicamente.

QDLS El sistema de archivos de servicios de biblioteca de documentos. Este


sistema de archivos proporciona acceso a documentos y carpetas.
QFileSvr.400
Este sistema de archivos proporciona acceso a otros sistemas de archivos
que residen en sistemas AS/400 remotos.

|
|
|

QNetWare
El sistema de archivos QNetWare. Da acceso a datos y objetos locales o
remotos almacenados en un servidor en el que se ejecuta Novell NetWare
4.10 o 4.11, o en Servidores PC autnomos en los que se ejecuta Novell
NetWare 3.12, 4.10, 4.11 o 5.0. El usuario puede montar de forma dinmica
los sistemas de archivos NetWare encima de sistemas de archivos locales
existentes.
QNTC
El sistema de archivos de Windows NT Server. Este sistema de archivos
proporciona acceso a los datos y objetos que se encuentran almacenados en
un servidor con Windows NT 4.0 o una versin superior. Posibilita que las
aplicaciones del AS/400 utilicen los mismos datos que los clientes de
Windows NT. En este caso se incluye el acceso a los datos que se
encuentran en un sistema Windows NT Server que se ejecute en un
Servidor PC integrado. Si desea obtener detalles, puede consultar la
publicacin AS/400 Integracin de OS/400 con Windows NT Server,
SC10-3235 (SC41-5439).
QOpenSys
El sistema de archivos de los sistemas abiertos. Es compatible con los
estndares de sistemas abiertos basados en UNIX como, por ejemplo,
POSIX y XPG. Al igual que el sistema de archivos raz, este sistema de
archivos se beneficia del soporte de directorios y archivos continuos que
proporciona el sistema de archivos integrado. Adems, dispone de soporte
para nombres de objeto sensibles a maysculas y minsculas.

OS/400 Introduccin al sistema de archivos integrado V4R5

QOPT
El sistema de archivos ptico. Da acceso a los datos continuos almacenados
en soportes pticos.
QSYS.LIB
El sistema de archivos de biblioteca. Da soporte a la estructura de
bibliotecas del AS/400. Este sistema de archivos proporciona acceso a los
archivos de base de datos y a todos los dems tipos de objeto del AS/400
que gestiona el soporte de bibliotecas.
raz El sistema de archivos /. Este sistema de archivos obtiene el mximo
provecho del soporte de archivos continuos y de la estructura jerrquica de
directorios del sistema de archivos integrado. Tiene las caractersticas de
los sistemas de archivos del DOS y del OS/2.
UDFS El sistema de archivos definido por el usuario. Reside en la agrupacin de
almacenamiento auxiliar (ASP) elegida por el usuario, que es quien crea y
gestiona este sistema de archivos.
Puede interactuar con cualquiera de los sistemas de archivos a travs de una
interfaz comn. Esta interfaz est optimizada para entrada/salida de datos
continuos, en contraste con la entrada/salida de registro proporcionada mediante
las interfaces de gestin de datos. Los mandatos, mens y pantallas, e interfaces de
programacin de aplicaciones (API) suministradas permiten la interaccin con los
sistemas de archivos a travs de esta interfaz comn.
Para obtener ms informacin, consulte los temas y publicaciones siguientes:
Clientes UNIX,
AS/400 o PC

Clientes
PC

Usuarios AS/400

Aplicaciones

Mens/mandatos
del sistema de

Interfaces de programacin de aplicaciones archivos integrado

Interfaz del sistema de


archivos integrado

Sistema de
archivos
"raz"

Sistema de
archivos
QOpenSys

Sistema de
archivos
QSYS.LIB

Servidor
de
Servidor
archivos
NFS
OS/400

Servidor
OS/2
Warp

Servidor
Novell
NetWare

Servidor PC
integrado
(FSIOP)

Sistema de
archivos
QDLS

Sistema de Sistema de Sistema de Sistema de Sistema de Sistema de


archivos
archivos
archivos
archivos
archivos
archivos
UDFS
QNetWare
QFileSvr.400
NFS
QNTC
QOPT
RV3N721-2

Figura 4. Sistemas de archivos, servidores de archivos y la interfaz del sistema de archivos integrado

v Optical Support, SC41-5310-02


v OS/400 Network File System Support, SC41-5714-01

Captulo 2. Conceptos del sistema de archivos integrado

Directorios en el sistema de archivos integrado


Un directorio es un objeto especial utilizado para ubicar objetos segn los nombres
especificados por los usuarios. Cada directorio contiene una lista de objetos que
estn conectados a l. Dicha lista puede incluir a otros directorios.
El sistema de archivos integrado proporciona una estructura jerrquica de
directorios que permite acceder a todos los objetos del sistema AS/400. Se puede
imaginar esa estructura de directorios como un rbol invertido, donde la raz est
en la parte superior y las ramas en la inferior. Las ramas representan a los
directorios en la jerarqua de directorios. Las ramas de directorios tienen ramas
subordinadas que se denominan subdirectorios. Prendidos a las diversas ramas de
directorios y subdirectorios hay objetos tales como archivos. La localizacin de un
objeto requiere la especificacin de una va de acceso a travs de los directorios
hasta el subdirectorio al que est conectado el objeto. De los objetos conectados a
un directorio determinado se dice a veces que estn en ese directorio.
Una rama de directorio concreta junto con todas las ramas subordinadas
(subdirectorios) y todos los objetos conectados con esas ramas recibe el nombre de
subrbol. Cada uno de los sistemas de archivos es un subrbol principal de la
estructura de directorios del sistema de archivos integrado. En el sistema de
archivos de biblioteca (subrbol QSYS.LIB) las bibliotecas se manejan del mismo
modo que los subdirectorios. Los objetos de una biblioteca se manejan como los
objetos de un subdirectorio. Dado que los archivos de base de datos contienen
objetos (miembros de archivos de base de datos), se manejan como subdirectorios y
no como objetos. En el sistema de archivos de servicios de biblioteca de
documentos (subrbol QDLS), las carpetas se manejan como subdirectorios y los
documentos de las carpetas se manejan como objetos de un subdirectorio.
Debido a las diferencias de los sistemas de archivos, las operaciones que se pueden
realizar en un subrbol de la jerarqua de directorios pueden no funcionar en otro
subrbol.
El soporte de directorios del sistema de archivos integrado es similar al soporte de
directorios proporcionado por el sistema de archivos DOS. Adems, proporciona
caractersticas tpicas de los sistemas UNIX, como es la posibilidad de almacenar
un archivo una sola vez pero acceder a l a travs de varias vas de acceso
utilizando enlaces.
Tipos de directorios:
v Directorio actual y directorio inicial en el sistema de archivos integrado en la
pgina 8.
v Directorios que proporciona el sistema de archivos integrado en la pgina 21

OS/400 Introduccin al sistema de archivos integrado V4R5

Figura 5. Los sistemas de archivos y los objetos son ramas del rbol de directorios del sistema de archivos integrado

Captulo 2. Conceptos del sistema de archivos integrado

Directorio actual y directorio inicial en el sistema de archivos


integrado
El directorio actual es el primer directorio en el que el sistema operativo busca los
programas y archivos y almacena los archivos temporales y la salida. Cuando se
solicita una operacin sobre un objeto, como por ejemplo un archivo, el sistema
busca el objeto en el directorio actual a menos que se especifique una va de acceso
de directorio distinta. El directorio actual es semejante a la idea de la biblioteca
actual. Tambin se denomina el directorio de trabajo actual o simplemente
directorio de trabajo.

Directorio inicial en el sistema de archivos integrado


El directorio inicial se utiliza como el directorio actual cuando se inicia una sesin
en el sistema. El nombre del directorio inicial se especifica en el perfil de usuario.
Cuando se inicia un trabajo, el sistema busca en el perfil de usuario el nombre del
directorio inicial. Si en el sistema no existe ningn directorio con ese nombre, el
directorio inicial se cambia por el directorio raz (/).
Normalmente, el administrador del sistema que crea el perfil de usuario para un
usuario tambin crea el directorio inicial del usuario. Es aconsejable crear
directorios iniciales individuales para cada usuario bajo el directorio /home. El
directorio /home es un subdirectorio del directorio raz (/). El valor por omisin
del sistema espera que el nombre del directorio inicial del usuario sea el mismo
que el perfil de usuario.
Por ejemplo, el mandato CRTUSRPRF USRPRF(Pedro) HOMEDIR(*USRPRF) asignar el
directorio inicial de Pedro a /home/PEDRO. Si el directorio /home/PEDRO no existe, el
directorio raz (/) pasa a ser el directorio inicial de Pedro.
Puede especificarse un directorio distinto del directorio inicial como el directorio
actual en cualquier momento despus de iniciar la sesin, mediante el mandato
Cambiar Directorio Actual, CHGCURDIR, o la API chdir( ).
El directorio inicial elegido durante la iniciacin del proceso seguir siendo por
omisin el directorio inicial de cada hebra. Esta accin se realizar
independientemente de si se cambia el perfil de usuario activo para la hebra tras la
iniciacin. No obstante, puede utilizarse el soporte que proporciona la API
Cambiar Trabajo (QWTCHGJB) para cambiar el directorio inicial que utilizar una
hebra por el directorio inicial del perfil de usuario actual de dicha hebra (o el
directorio raz (/) si dicho directorio inicial no existe). Las hebras secundarias
siempre heredarn el directorio inicial de la hebra que las ha creado. Tenga en
cuenta que el directorio actual del proceso no cambia cuando se utiliza
QWTCHGJB para cambiar el directorio inicial de la hebra. El directorio actual tiene
un mbito de proceso, mientras que el directorio inicial tiene un mbito de hebra.
Al cambiar el directorio de trabajo actual en cualquier hebra se cambia para todo el
proceso. Al cambiar el directorio inicial de una hebra no se cambia su directorio de
trabajo actual.
Si desea obtener detalles de la API QWTCHGJB, puede consultar el tema API
OS/400.

OS/400 Introduccin al sistema de archivos integrado V4R5

Nombre de va de acceso en el sistema de archivos integrado


Un nombre de va de acceso le indica al sistema cmo localizar un objeto. El
nombre de va de acceso se expresa como una secuencia de nombres de directorio
seguidos del nombre del objeto. Los directorios individuales y el nombre de objeto
se separan con el carcter barra inclinada (/); por ejemplo:
directorio1/directorio2/archivo

Para comodidad de los usuarios, puede utilizarse la barra inclinada invertida (\)
en lugar de la barra inclinada en los mandatos del sistema de archivos integrado.
Existen dos modos de indicar un nombre de va de acceso:
v Un nombre de va de acceso absoluto empieza en el nivel superior, o directorio
raz (que se identifica por el carcter / ). Por ejemplo, piense en la va de
acceso siguiente desde el directorio / hasta el archivo denominado Prez.

Directorio "raz"

Depto2
Directorio
Fotos
Directorio
Prez
Archivo
RV3N067-2

Figura 6. Los componentes de un nombre de va de acceso

El nombre de va de acceso absoluto al archivo Prez es el siguiente:


/Depto2/Fotos/Prez

El nombre de va de acceso absoluto tambin se denomina nombre de va de


acceso completo.
v Si el nombre de la va de acceso no empieza con el carcter /, el sistema
presupone que la va de acceso empieza en el directorio actual. Este tipo de
nombre de va de acceso se denomina nombre de va de acceso relativo. Por
ejemplo, si el directorio actual es Depto2 y tiene un subdirectorio denominado
Fotos que contiene el archivo Prez, el nombre de va de acceso relativo al
archivo es:
Fotos/Prez

Observe que el nombre de va de acceso no incluye el nombre del directorio


actual. El primer elemento del nombre es el directorio u objeto del siguiente nivel
inferior del directorio actual.

Captulo 2. Conceptos del sistema de archivos integrado

Enlaces y enlaces simblicos en el sistema de archivos integrado


Un enlace es una conexin con nombre entre un directorio y un objeto. Un usuario
o un programa pueden indicar al sistema dnde encontrar un objeto especificando
el nombre de un enlace con el objeto. Un enlace se puede utilizar como nombre de
va de acceso o como componente de un nombre de va de acceso.
Para los usuarios de los sistemas de archivos basados en directorios, es
conveniente pensar en un objeto, como puede ser un archivo, como en algo que
tiene un nombre que lo identifica ante el sistema. De hecho, se identifica mediante
la va de acceso de directorios hasta el objeto. En ocasiones, se puede acceder a un
objeto simplemente facilitando el nombre del objeto. Esto se puede efectuar
nicamente porque el sistema se ha diseado para presuponer el componente
directorio de la va de acceso en determinadas condiciones. La idea de un enlace
aprovecha la realidad de que es la va de acceso de directorios la que identifica al
objeto. El nombre se asigna al enlace ms que al objeto.
Una vez se acostumbre a la idea de que el nombre corresponde al enlace y no al
objeto, empezar a vislumbrar posibilidades que haban permanecido ocultas.
Puede haber mltiples enlaces al mismo objeto. Por ejemplo, dos usuarios pueden
compartir un archivo teniendo un enlace desde el directorio inicial de cada usuario
hasta el archivo (consulte el apartado Directorio actual y directorio inicial en el
sistema de archivos integrado en la pgina 8). Determinados tipos de enlace
pueden cruzar sistemas de archivos y pueden existir sin que exista un objeto.
Hay dos tipos de enlaces: fijos y simblicos.

Enlaces fijos en el sistema de archivos integrado


Un enlace fijo, que en ocasiones se denomina slo enlace, no puede existir si no
est enlazado a un objeto real. Cuando un objeto se crea en un directorio (por
ejemplo, al copiar un archivo en un directorio), el primer enlace fijo se establece
entre el directorio y el objeto. Los usuarios y los programas de aplicacin pueden
aadir otros enlaces fijos. Cada enlace fijo se indica con una entrada de directorio
independiente en el directorio. Los enlaces procedentes del mismo directorio no
pueden tener el mismo nombre, pero los enlaces procedentes de directorios
distintos pueden tener el mismo nombre.
Si se soporta en el sistema de archivos, puede haber varios enlaces fijos a un
objeto, procedentes del mismo directorio o de directorios distintos. La nica
excepcin es cuando el objeto es otro directorio. Slo puede haber un enlace fijo de
un directorio con otro directorio.

10

OS/400 Introduccin al sistema de archivos integrado V4R5

Directorio

Dir
2

r1
Di

Directorio

XXXXXX
XXXXXX
XXXXXX

Directorio

Estadsticas

XXXXXX
XXXXXX

o1
hiv
Arc

Arc
hiv
o1

XXXXXX

Archivo
.......
.......
.......

os
Dat
RV3N066-1

Figura 7. Una entrada de directorio define cada enlace fijo.

Los enlaces fijos se pueden eliminar sin que afecte a la existencia de un objeto,
siempre que exista, como mnimo, un enlace fijo disponible con el objeto. Cuando
se elimina el ltimo enlace fijo, el objeto se elimina del sistema, excepto si una
aplicacin tiene abierto el objeto. Cada aplicacin que tiene abierto el objeto puede
continuar utilizndolo hasta que la aplicacin cierre el objeto. Cuando la ltima
aplicacin que utiliza el objeto lo cierra, el objeto se elimina del sistema. Un objeto
no se puede abrir despus de haberse eliminado el ltimo enlace fijo.
El concepto de enlace fijo tambin se puede aplicar al sistema de archivos de
biblioteca (QSYS.LIB) y al sistema de archivos de servicios de biblioteca de
documentos (QDLS), pero con una restriccin. Una biblioteca, en efecto, tiene un
enlace fijo con cada objeto de la biblioteca. Del mismo modo, una carpeta tiene un
enlace fijo con cada documento de la carpeta. No obstante, no se permiten los
enlaces fijos mltiples con el mismo objeto en el sistema de archivos QSYS.LIB ni
QDLS.
Un enlace fijo no puede cruzar sistemas de archivos. Por ejemplo, un directorio del
sistema de archivos QOpenSys no puede tener un enlace fijo con un objeto del
sistema de archivos QSYS.LIB ni con un documento del sistema de archivos QDLS.

Enlaces simblicos en el sistema de archivos integrado


Un enlace simblico, tambin denominado enlace dinmico, es un nombre de va
de acceso contenido en un archivo. Cuando el sistema encuentra un enlace
simblico, sigue el nombre de va de acceso que proporciona el enlace simblico y
despus contina por cualquier va de acceso disponible que siga al enlace
simblico. Si el nombre de va de acceso empieza con un signo /, el sistema
regresa al directorio / (raz) y empieza a seguir la va de acceso desde ese punto.
Si el nombre de va de acceso no empieza con un carcter /, el sistema regresa al
directorio inmediatamente anterior y sigue el nombre de va de acceso del enlace
simblico empezando en ese directorio.

Captulo 2. Conceptos del sistema de archivos integrado

11

Considere el ejemplo siguiente sobre cmo se puede utilizar un enlace simblico.

es
nt
ie
Cl

Directorio

Re
gi
st
ro
s

Cuentas

Directorio

Estado

Directorio
/Registros/Cuentas

Archivo

n
ume
Res
RV3N068-1

Figura 8. Ejemplo de utilizacin de un enlace simblico

Se selecciona una opcin de men para mostrar el estado de las cuentas de


clientes. El programa que visualiza el men utiliza el nombre de va de acceso
siguiente:
/Cliente/Estado/Resumen

El sistema sigue el enlace Cliente, que conduce a un directorio 1, y despus sigue


el enlace Estado. El enlace Estado es un enlace simblico, que contiene un nombre
de va de acceso 2. Puesto que el nombre de va de acceso empieza por /, el
sistema vuelve al directorio (raz) / y sigue los enlaces Registros y Cuentas en
orden secuencial. Esta va de acceso conduce a otro directorio 3.Ahora el sistema
completa la va de acceso del nombre de va de acceso que proporciona el
programa. Sigue el enlace Resumen, que conduce a un archivo 4 que contiene los
datos que necesita el usuario.
A diferencia del enlace fijo, el enlace simblico es un objeto (de tipo de objeto
*SYMLNK); puede existir sin sealar a un objeto existente. Puede utilizar un enlace
simblico, por ejemplo, para proporcionar una va de acceso a un archivo que se
ha de aadir o sustituir ms adelante.
Tambin, a diferencia del enlace fijo, el enlace simblico puede cruzar sistemas de
archivos. Por ejemplo, un usuario de un programa que trabaja en un sistema de
archivos puede utilizar un enlace simblico para acceder a un archivo de otro
sistema de archivos. Aunque los sistemas de archivos QSYS.LIB y QDLS no
disponen de soporte para crear y almacenar enlaces simblicos, se puede crear un
enlace simblico en el sistema de archivos / o QOpenSys que permite lo siguiente:

12

OS/400 Introduccin al sistema de archivos integrado V4R5

v Acceder a un miembro de archivo de base de datos del sistema de archivos


QSYS.LIB.
v Acceder a un documento del sistema de archivos QDLS.
Consulte tambin el apartado Enlaces fijos y enlaces simblicos: comparacin en
la pgina 40.

Atributos ampliados en el sistema de archivos integrado


Un atributo ampliado (EA) es la informacin asociada a un objeto que facilita
detalles adicionales acerca del mismo. El EA se compone de un nombre, que se
utiliza para hacerle referencia, y de un valor. El valor puede ser texto, datos
binarios u otro tipo de datos.
Como ejemplo, uno de los EA utilizados habitualmente tiene el nombre .SUBJECT.
El valor de este EA es texto que describe la finalidad del objeto.
Los EA de un objeto existen slo mientras el objeto existe.
Consulte tambin el apartado Manejo de atributos ampliados en el sistema de
archivos integrado en la pgina 42.

Continuidad de nombres a travs de distintos modelos de codificacin


en el sistema de archivos integrado
Los usuarios de los sistemas de archivos raz (/), QOpenSys y definido por
usuario pueden aprovechar el soporte del sistema que garantiza que los caracteres
de los nombres de objeto siguen siendo los mismos. Esto ocurre tambin cuando se
utilizan los sistemas de archivos entre sistemas AS/400 y dispositivos conectados
que tienen esquemas distintos de codificacin de caracteres (pginas de cdigos).
El AS/400 almacena los caracteres de los nombres en un formato de 16 bits que se
conoce como UCS2 nivel 1 (que tambin se conoce como Unicode). UCS2 Nivel 1
es un subconjunto de la norma ISO 10646. Cuando se utiliza el nombre, el sistema
convierte el formato almacenado de los caracteres en la representacin de los
caracteres adecuada de la pgina de cdigos que se est utilizando. Los nombres
de los atributos ampliados asociados a cada objeto tambin se manejan del mismo
modo.

Pgina de
cdigos
.........
.........
.........
.......#
.........

UCS2 nivel 1
.........
. . . . . .#.
.........
.........
.........
.........
.........
.........

Pgina de
cdigos
.........
.........
.........
#. . . . . . . .
.........

RV3N141-0

Figura 9. Los caracteres se mantienen igual en los esquemas de codificacin

Este soporte facilita la interaccin con un AS/400 desde dispositivos que utilizan
pginas de cdigos diferentes. Por ejemplo, los usuarios de PC pueden acceder a
Captulo 2. Conceptos del sistema de archivos integrado

13

un archivo del AS/400 utilizando el mismo nombre de archivo, aunque los PC no


tengan la misma pgina de cdigos que el AS/400. El sistema maneja
automticamente la conversin de una pgina de cdigos a otra. Obviamente, el
dispositivo debe utilizar una pgina de cdigos que contenga los caracteres
utilizados en el nombre.

14

OS/400 Introduccin al sistema de archivos integrado V4R5

Captulo 3. Acceso al sistema de archivos integrado


Todas las interfaces de usuario, como los mens, mandatos y pantallas, que se
utilizan para trabajar con las bibliotecas, objetos, archivos de base de datos,
carpetas y documentos del AS/400 siguen funcionando igual que antes de la
incorporacin del sistema de archivos integrado. Dichas interfaces, sin embargo, no
se pueden utilizar para trabajar con los archivos continuos, directorios y otros
objetos soportados por el sistema de archivos integrado.
Se proporciona un conjunto separado de interfaces de usuario para el sistema de
archivos integrado. Estas interfaces se pueden utilizar con los objetos de cualquier
sistema de archivos al que se pueda acceder a travs de los directorios del sistema
de archivos integrado.
Este captulo presenta las interfaces de usuario y otras caractersticas que deben
conocerse cuando se utiliza el sistema de archivos integrado.

Acceso al sistema de archivos integrado desde el AS/400


Puede interactuar con los directorios y objetos de los sistemas de archivos
integrados desde el AS/400 por medio de mens y pantallas o mediante mandatos
de lenguaje de control (CL). Adems, tambin puede utilizar interfaces de
programas de aplicacin (API) para aprovechar las ventajas de los archivos
continuos, directorios y dems soporte del sistema de archivos integrado.
Pueden realizarse varias tareas utilizando el sistema de archivos integrado desde el
AS/400:
v Migracin de objetos a otro sistema de archivos en el sistema de archivos
integrado en la pgina 25.
v Realizacin de operaciones en el sistema de archivos integrado desde el
AS/400.

Realizacin de operaciones en el sistema de archivos integrado desde


el AS/400
Se pueden efectuar operaciones con archivos y otros objetos del sistema de
archivos integrado utilizando un conjunto de mens y pantallas que proporciona el
sistema AS/400. Para visualizar los mens del sistema de archivos integrado
mediante una opcin del men Archivos, Bibliotecas y Carpetas efecte los
siguientes pasos:
1. Entre GO DATA en cualquier lnea de mandatos para visualizar el men
Archivos, Bibliotecas y Carpetas.
2. Seleccione la opcin Sistema de archivos integrado.
Para ver un men de los mandatos del sistema de archivos de red, escriba
GO CMDNFS. Para ver un men de los mandatos del sistema de archivos definido por
el usuario, teclee GO CMDUDFS.
En los mens del sistema de archivos integrado, se pueden solicitar pantallas
donde se pueden realizar las operaciones siguientes:
v Crear y eliminar un directorio
Copyright IBM Corp. 1999, 2000

15

v
v
v
v

Visualizar y cambiar el nombre del directorio actual


Aadir, visualizar, cambiar y eliminar enlaces de objetos
Copiar, mover y redenominar objetos
Reservar y reincorporar objetos

v
v
v
v

Salvar y restaurar objetos


Visualizar y cambiar propietarios de objetos y autorizaciones de usuarios
Copiar datos entre archivos continuos y miembros de archivo de base de datos
Crear, suprimir y visualizar el estado de los sistemas de archivos definidos por
el usuario
v Exportar sistemas de archivos de un servidor
v Montar y desmontar sistemas de archivos en un cliente
Determinados sistema de archivos no disponen de soporte para todas estas
operaciones. Para conocer las restricciones de sistemas de archivos concretos,
consulte el Sistemas de archivos en el sistema de archivos integrado en la
pgina 4.

Mandatos del sistema de archivos integrado


Todas las operaciones que se pueden realizar a travs de los mens y pantallas del
sistema de archivos integrado (consulte el apartado Realizacin de operaciones en
el sistema de archivos integrado desde el AS/400 en la pgina 15) tambin pueden
efectuarse entrando mandatos de lenguaje de control (CL). Estos mandatos pueden
funcionar en archivos y otros objetos en cualquier sistema de archivos al que
pueda accederse a travs de la interfaz del sistema de archivos integrado.
La Tabla 1 resume los mandatos del sistema de archivos integrado. Si desea
obtener ms informacin sobre los mandatos CL especficamente relacionados con
los sistemas de archivos definidos por usuario, el Sistema de Archivos de Red y los
sistemas de archivos montados en general, puede consultar los temas Sistema de
archivos definido por el usuario (UDFS) en la pgina 63, Sistema de archivos de
red (NFS) en la pgina 67 y Sistemas de archivos en el sistema de archivos
integrado en la pgina 4. Cuando un mandato efecta la misma operacin que un
mandato del OS/2 o del DOS, se proporciona un alias (un nombre alternativo de
mandato) para comodidad de los usuarios del OS/2 y DOS.
Tabla 1. Mandatos del sistema de archivos integrado

16

Mandato

Descripcin

ADDLNK

Aadir enlace. Aade un enlace entre un directorio y


un objeto.

ADDMFS

Aadir sistema de archivos montado. Coloca los


MOUNT
sistemas de archivos de servidor remoto exportados en
directorios de cliente locales.

CHGAUD

Cambiar valor de auditora. Activa o desactiva la


auditora de un objeto.

CHGAUT

Cambiar autorizacin. Otorga autorizacin especfica


sobre un objeto a un usuario o a un grupo de
usuarios.

CHGCURDIR

Cambiar directorio actual. Cambia el directorio que se


ha de utilizar como el directorio actual.

OS/400 Introduccin al sistema de archivos integrado V4R5

Alias

CD, CHDIR

Tabla 1. Mandatos del sistema de archivos integrado (continuacin)


Mandato

Descripcin

Alias

CHGNFSEXP

Cambiar exportacin de sistema de archivos de red.


Aade rboles de directorios o los elimina de la tabla
de exportacin que se exporta a los clientes NFS.

EXPORTFS

CHGOWN

Cambiar propietario. Transfiere la propiedad del


objeto de un usuario a otro.

CHGPGP

Cambiar grupo primario. Cambia el grupo primario


de un usuario a otro.

CHKIN

Reincorporar. Reincorpora un objeto que se haba


reservado antes.

CHKOUT

Reservar. Reserva un objeto, con lo que se impide que


otros usuarios lo cambien.

CPY

Copiar. Copia un solo objeto o un grupo de objetos.

CPYFRMSTMF

Copiar de archivo continuo. Copia los datos de un


archivo continuo en un miembro de archivo de base
de datos.

CPYTOSTMF

Copiar a archivo continuo. Copia los datos de un


miembro de archivo de base de datos en un archivo
continuo.

CRTDIR

Crear directorio. Aade un nuevo directorio al


sistema.

CRTUDFS

Crear UDFS. Crea un sistema de archivos definido por


el usuario.

CVTRPCSRC

Convertir fuente RPC. Genera cdigo C a partir de un


archivo de entrada escrito en lenguaje RPC (Remote
Procedure Call).

DLTUDFS

Suprimir UDFS. Suprime un sistema de archivos


definido por el usuario.

DSPAUT

Visualizar autorizacin. Muestra una lista de usuarios


autorizados de un objeto y sus autorizaciones sobre el
mismo.

DSPCURDIR

Visualizar directorio actual. Muestra el nombre del


directorio actual.

DSPLNK

Visualizar enlaces de objeto. Muestra una lista de


objetos de un directorio y proporciona opciones para
visualizar informacin acerca de los objetos.

DSPF

Visualizar archivo continuo. Visualiza un archivo


continuo o un archivo de base de datos.

DSPMFSINF

Visualizar informacin de sistema de archivos


montado. Visualiza informacin acerca de un sistema
de archivos montado.

DSPUDFS

Visualizar UDFS. Visualiza un sistema de archivos


definido por el usuario.

EDTF

Editar archivo continuo. Edita un archivo continuo o


un archivo de base de datos.

ENDNFSSVR

Finalizar servidor de sistema de archivos de red.


Finaliza uno o todos los daemons de sistema de
archivos de red del servidor y del cliente.

COPY

MD, MKDIR

RPCGEN

STATFS

Captulo 3. Acceso al sistema de archivos integrado

17

Tabla 1. Mandatos del sistema de archivos integrado (continuacin)


Mandato

Descripcin

Alias

ENDRPCBIND

Finalizar Daemon enlazador RPC. Finaliza el daemon


RPCBind de RPC (Remote Procedure Call).

MOV

Mover. Mueve un objeto a un directorio distinto.

RLSIFSLCK

Liberar bloqueos de sistema de archivos integrado.


Libera todos los bloqueos de rango de byte de NFS
mantenidos por un cliente o sobre un objeto.

RMVDIR

Eliminar directorio. Elimina un directorio del sistema.

RD, RMDIR

RMVLNK

Eliminar enlace. Elimina el enlace con un objeto.

DEL, ERASE

RMVMFS

Eliminar sistema de archivos montado. Elimina los


sistemas de archivos de servidor remoto exportados
de los directorios de cliente locales.

UNMOUNT

RNM

Redenominar. Cambia el nombre de un objeto de un


directorio.

REN

RPCBIND

Iniciar Daemon enlazador RPC. Inicia el daemon


RPCBind de RPC (Remote Procedure Call).

RST

Restaurar. Copia un objeto o un grupo de objetos


desde un dispositivo de copia de seguridad al sistema.

RTVCURDIR

Recuperar directorio actual. Recupera el nombre del


directorio actual y lo coloca en una variable
especificada (utilizada en programas CL).

SAV

Salvar. Copia un objeto o grupo de objetos del sistema


a un dispositivo de copia de seguridad.

STRNFSSVR

Iniciar servidor de sistema de archivos de red. Inicia


uno o todos los daemons de NFS del servidor y del
cliente.

WRKAUT

Trabajar con autorizacin. Muestra una lista de


usuarios y sus autorizaciones y proporciona opciones
para aadir un usuario, cambiar una autorizacin de
usuario o eliminar un usuario.

WRKLNK

Trabajar con objeto. Muestra una lista de los objetos de


un directorio y proporciona opciones para efectuar
acciones sobre los mismos.

WRKOBJOWN1

Trabajar con objetos por usuario. Muestra una lista de


objetos que son propiedad de un perfil de usuario y
proporciona opciones para efectuar acciones sobre los
mismos.

WRKOBJPGP1

Trabajar con objetos por grupo primario. Muestra una


lista de objetos controlados por un grupo primario y
proporciona opciones para efectuar acciones sobre los
mismos.

MOVE

1. Los mandatos WRKOBJOWN y WRKOBJPGP pueden visualizar todos los tipos


de objeto, pero puede ser que no funcionen completamente en todos los
sistemas de archivos.
2. Si desea obtener detalles sobre cada uno de los mandatos, puede consultar la
ayuda para mandatos o la publicacin Manual de consulta de CL.
3. Para conocer las restricciones sobre el uso de estos mandatos en sistemas de
archivos concretos, consulte el Sistemas de archivos en el sistema de archivos
integrado en la pgina 4.

18

OS/400 Introduccin al sistema de archivos integrado V4R5

Reglas de nombres de vas de acceso para mandatos y pantallas del


sistema de archivos integrado
Cuando se utiliza un mandato o una pantalla del sistema de archivos integrado
para trabajar con un objeto, el objeto se identifica suministrando el nombre de la
va de acceso. A continuacin se proporciona un resumen de las reglas que hay que
tener en cuenta al especificar nombres de vas de acceso. El trmino objeto en estas
reglas hace referencia a cualquier directorio, archivo, enlace u otro objeto.
v Los nombres de objetos deben ser exclusivos en cada directorio.
v El nombre de va de acceso que se pasa a un mandato CL o API de un sistema
de archivos integrado debe estar representado en el CCSID que afecte
actualmente al trabajo. Si el CCSID del trabajo es 65535, el nombre de va de
acceso debe estar representado en el CCSID por omisin del trabajo. Dado que el
CCSID 37 contiene nombres de va de acceso integrados en el cdigo, cabe la
posibilidad de que se haya de convertir al CCSID del trabajo antes de pasar el
trabajo al mandato.
v Los nombres de vas de acceso deben estar delimitados con apstrofos (') cuando
se teclean en la lnea de mandatos. Los apstrofos son opcionales cuando los
nombres de vas de acceso se entran en las pantallas. Si el nombre de va de
acceso contiene series entre apstrofos, sin embargo, los signos delimitadores ' '
tambin deben incluirse.
v Los nombres de vas de acceso se entran de izquierda a derecha, empezando por
el directorio de nivel superior y acabando por el nombre del objeto sobre el que
se va a ejecutar el mandato. El nombre de cada componente de la va de acceso
se separa con una barra inclinada (/) o una barra inclinada invertida (\); por
ejemplo:
'Dir1/Dir2/Dir3/ArchUsr'

o
'Dir1\Dir2\Dir3\ArchUsr'

v Los caracteres / y \ y los nulos no se pueden utilizar en los componentes


individuales del nombre de va de acceso (debido a que los caracteres / y \ se
utilizan de separadores). Los mandatos no cambian las minsculas por
maysculas. El nombre puede cambiarse o no por maysculas, segn si el
sistema de archivos que contiene el objeto es sensible a las maysculas y
minsculas y si el objeto se est creando o buscando.
v La longitud del nombre de objeto est limitada por el sistema de archivos donde
est el objeto y por la longitud mxima de una serie del mandato. Los mandatos
aceptan nombres de objeto con una longitud mxima de 255 caracteres y
nombres de vas de acceso con una longitud mxima de 5000 caracteres.
Consulte el Captulo 5. Sistemas de archivos: conceptos en la pgina 45 para
conocer los lmites de los nombres de vas de acceso de cada sistema de
archivos.
v Un carcter / o \ al principio de un nombre de va de acceso significa que la va
de acceso empieza en el directorio de mayor nivel, el directorio raz (/); por
ejemplo:
'/Dir1/Dir2/Dir3/ArchUsr'

v Si el nombre de va de acceso no empieza con un carcter / o \, la va de acceso


se presupone que empieza en el directorio actual del usuario que entra el
mandato; por ejemplo:
'MiDir/MiArch'

donde MiDir es un subdirectorio del directorio actual del usuario.


Captulo 3. Acceso al sistema de archivos integrado

19

v Una tilde (x) seguida de una barra inclinada (o barra inclinada invertida) al
principio de un nombre de va de acceso significa que la va de acceso empieza
en el directorio inicial del usuario que entra el mandato; por ejemplo:
'x/DirUsr/ObjUsr'

v Una tilde (x) seguida de un nombre de usuario y despus una barra inclinada (o
barra inclinada invertida) al principio del nombre de va de acceso significa que
la va de acceso empieza en el directorio inicial del usuario identificado por el
nombre de usuario; por ejemplo:
'xnombre-usuario/DirUsr/ObjUsr'

v En algunos mandatos, el asterisco (*) o el interrogante (?) se pueden utilizar en


el ltimo componente de un nombre de va de acceso para buscar patrones de
nombres. El signo * indica al sistema que busque los nombres con cualquier
nmero de caracteres en la posicin del carcter *. El signo ? indica al sistema
que busque los nombres que tengan un solo carcter en la posicin del carcter
?. El ejemplo siguiente busca todos los objetos cuyos nombres empiezan por d y
terminan por txt:
'/Dir1/Dir2/Dir3/d*txt'

El ejemplo siguiente busca los objetos cuyos nombres empiezan con d seguida de
cualquier carcter y terminan con txt:
'/Dir1/Dir2/Dir3/d?txt'

Para evitar la confusin que podra producirse con los valores especiales del
AS/400, los nombres de va de acceso no pueden comenzar con un nico
carcter de asterisco (*). Para llevar a cabo una comparacin de patrones al
principio de un nombre de va de acceso, utilice dos asteriscos (**); por ejemplo:
'**.file'

Nota: Este caso slo se aplica a los nombres de va de acceso relativo donde no
hay otros caracteres antes del asterisco (*).
v Cuando se trabaja con objetos del sistema de archivos QSYS.LIB, los nombres de
componentes deben tener el formato nombre.tipo-objeto; por ejemplo:
'/QSYS.LIB/PAY.LIB/TAX.FILE'

Consulte el apartado Sistema de archivos de biblioteca (QSYS.LIB) en la


pgina 51 para conocer ms detalles.
v El nombre de va de acceso debe estar delimitado por conjuntos adicionales de
apstrofos (') o comillas (") si se utiliza alguno de los caracteres siguientes en un
nombre de componente:
Asterisco (*)
Interrogante (?)
Apstrofo (')
Comillas (")
Tilde (x), si se utiliza como el primer carcter del primer nombre de
componente del nombre de va de acceso (si se utiliza en cualquier otra
posicin, la tilde se interpreta exactamente igual que otro carcter)
Por ejemplo:
/Dir1/Dir/A*Antonio

o
/Dir1/Dir/A*Antonio

20

OS/400 Introduccin al sistema de archivos integrado V4R5

Esta prctica no es aconsejable debido a que el significado del carcter en una


serie del mandato se puede confundir y hay ms probabilidades de entrar
incorrectamente la serie del mandato.
v No utilice signos de dos puntos (:) en los nombres de va de acceso. Tienen un
significado especial dentro del sistema.
v El soporte de proceso para los mandatos y las pantallas de usuario asociadas no
reconoce elementos de cdigo por debajo de 40 hexadecimal como caracteres que
pueden utilizarse en series de mandato o en las pantallas. Si se utilizan estos
elementos de cdigo, deben entrarse en representacin hexadecimal, como por
ejemplo:
crtdir dir(X'02')

Por consiguiente, la utilizacin de elementos de cdigo por debajo de 40


hexadecimal en nombres de va de acceso no es recomendable. Esta restriccin se
aplica slo a mandatos y pantallas asociadas, no a las API (consulte el apartado
Interfaces de programas de aplicacin (API) para el sistema de archivos
integrado en la pgina 32).
Si desea conocer las restricciones en la utilizacin de un mandato determinado,
puede consultar la ayuda para mandatos o la publicacin Manual de consulta de
CL .

Directorios que proporciona el sistema de archivos integrado


El sistema de archivos integrado crea los siguientes directorios cuando se reinicia el
sistema, si todava no existen.
v /tmp
El directorio /tmp proporciona a las aplicaciones un lugar donde almacenar
archivos temporales. Este directorio es un subdirectorio del directorio raz, de
manera que su nombre de va de acceso es /tmp.
Una vez que una aplicacin ha colocado un archivo en el directorio /tmp, el
archivo permanece all hasta que la aplicacin o el usuario lo eliminan. El
sistema no elimina automticamente archivos de /tmp ni ejecuta ningn otro
proceso especial para los archivos que se encuentran en /tmp.
Puede utilizar los mandatos y pantallas de usuario que soportan el sistema de
archivos integrado para gestionar el directorio /tmp y sus archivos. Por ejemplo,
puede utilizar la pantalla Trabajar con enlaces de objeto o el mandato WRKLNK
para copiar, eliminar o redenominar el directorio /tmp o los archivos del
directorio. A todos los usuarios se les otorga la autorizacin *ALL sobre el
directorio, lo que significa que pueden efectuar la mayora de acciones vlidas
sobre el directorio.
Una aplicacin puede utilizar las interfaces de programa de aplicacin (API) que
soportan el sistema de archivos integrado para gestionar /tmp y a sus archivos
(consulte el apartado Interfaces de programas de aplicacin (API) para el
sistema de archivos integrado en la pgina 32). Por ejemplo, el programa de
aplicacin puede eliminar un archivo del directorio /tmp utilizando la API
unlink().
Si se elimina /tmp, se volver a crear automticamente durante el prximo
rearranque del sistema.
v /home
Los administradores del sistema utilizan el directorio /home para almacenar un
directorio independiente para cada usuario. El administrador del sistema
establece con frecuencia que el directorio inicial que est asociado con el perfil
Captulo 3. Acceso al sistema de archivos integrado

21

de usuario sea el directorio del usuario en /home, por ejemplo /home/pedro. Para
obtener ms informacin, consulte el apartado Directorio actual y directorio
inicial en el sistema de archivos integrado en la pgina 8.
v /etc
El directorio /etc almacena archivos de administracin, de configuracin y otros
archivos del sistema.
v /usr
El directorio /usr incluye subdirectorios que contienen informacin utilizada por
el sistema. Generalmente, los archivos de /usr no cambian a menudo.
v /usr/bin
El directorio /usr/bin contiene los programas de utilidad estndares.
v /usr/lib
El directorio /usr/lib contiene los programas compartidos (soporte en tiempo
de ejecucin).
v /usr/sbin
El directorio /usr/sbin contiene los programas proporcionados por el sistema.

Utilizacin del sistema de archivos integrado desde un cliente


Si el cliente (PC) se conecta al AS/400, podr interactuar con los directorios y
objetos del sistema de archivos integrado como si estuvieran almacenados en el
PC. Podr copiar objetos de un directorio a otro utilizando la posibilidad de
arrastrar y soltar del Explorador de Windows 95/98/NT. Si es necesario, incluso se
puede copiar un objeto del AS/400 al PC seleccionndolo en la unidad del AS/400
y arrastrndolo a la unidad del PC.

22

OS/400 Introduccin al sistema de archivos integrado V4R5

Figura 10. Utilizacin de arrastrar y soltar para mover un archivo del AS/400 al cliente PC

Todos los objetos que se copian entre sistemas AS/400 y PC utilizando la interfaz
de Windows 95/98/NT pueden convertirse automticamente entre EBCDIC y
ASCII. EBCDIC es el cdigo de intercambio decimal ampliado codificado en
Captulo 3. Acceso al sistema de archivos integrado

23

binario y ASCII es el cdigo estndar norteamericano para el intercambio de


informacin. Client Access puede configurarse de forma que efecte
automticamente esta conversin, y puede especificarse incluso que dicha
conversin se efecte en archivos que tengan una extensin especfica. En OS/400
Versin 4 Release 4 (V4R4), tambin puede configurarse NetServer para que realice
la conversin en los archivos.
Segn el tipo de objeto, pueden utilizarse las interfaces del PC, y posiblemente las
aplicaciones del PC, para trabajar con l. Por ejemplo, un archivo continuo que
contiene texto se podra editar con un editor de PC.
Pueden realizarse varias tareas utilizando el sistema de archivos integrado como
un cliente:
v Conectarse desde un PC con el sistema de archivos integrado.
v Transferencia de archivos en el sistema de archivos integrado en la pgina 25.

Conectarse desde un PC con el sistema de archivos integrado


Si est conectado al AS/400 a travs de un PC, el sistema de archivos integrado
pone a disposicin del PC los directorios y objetos del AS/400. Los sistemas PC
pueden trabajar con los archivos del sistema de archivos integrado utilizando
Client Access o los clientes de compartimiento de archivos que se encuentran
incorporados en los sistemas operativos Windows 95/98/NT.
Existen dos formas de conectarse al sistema de archivos integrado con el PC:
mediante Client Access y mediante AS/400 Soporte de Entorno de red Windows
(NetServer). Client Access incluye software que se conecta al AS/400 y pone a
disposicin del PC el sistema de archivos integrado. NetServer es un componente
de OS/400 que permite que el compartimiento de archivos e impresoras que
incorporan los clientes Windows trabaje con el AS/400.
La nueva versin de Client Access, Client Access Express, se basa completamente
en NetServer para acceder al sistema de archivos integrado del AS/400. El soporte
de NetServer slo est disponible para conexiones TCP/IP con un AS/400 que
ejecute OS/400 V4R2 y posteriores.
Conectarse con CA/400
Puede accederse a los archivos del sistema de archivos integrado del AS/400 de
una de las dos formas siguientes:
1.
v Correlacionando una unidad del PC, como por ejemplo la unidad I:.
v Colocando el directorio de sistema como prefijo de la va de acceso del
AS/400. Por ejemplo, al conectarse a un sistema denominado AS400X, puede
utilizar la va de acceso \\AS400X\QDLS\MYFOLDER.FLR\MYFILE.DOC.
Al utilizar NetServer, el nombre del sistema AS/400 puede ser distinto al nombre
utilizado por Client Access. Por ejemplo, el nombre de NetServer puede ser
QAS400X y la va de acceso para trabajar con los archivos puede ser
\\QAS400X\QDLS\MICARP.FLR\MIARCH.DOC.
Otra diferencia que existe entre Client Access tradicional y NetServer son los
archivos que estn disponibles al usuario.

24

OS/400 Introduccin al sistema de archivos integrado V4R5

En Client Access, el nivel superior, el nivel raz (/), representa la totalidad del
sistema AS/400. Cada directorio del siguiente nivel por debajo del nivel / aparece
como directorio de la unidad de AS/400. Este nivel incluye los directorios que
representan los sistemas de archivos (tales como QSYS.LIB y QDLS), as como todos
los subdirectorios de primer nivel del sistema de archivos raz (/) (como, por
ejemplo, home y tmp).
En NetServer, el administrador del sistema elije los directorios que se compartirn
en la red. Estos directorios aparecern como el primer nivel bajo el nombre del
sistema. Por ejemplo, si el administrador comparte el directorio /home/carlos
con el nombre dircarlos, un usuario podr acceder a dicho directorio desde el PC
utilizando el nombre \\QAS400X\DIRCARLOS.
El sistema de archivos raz proporciona un rendimiento mucho mejor en el servicio
de archivos PC que otros sistemas de archivos AS/400. A los administradores les
puede interesar la migracin de archivos al sistema de archivos raz. Los archivos
de PC que estn en QDLS son buenos candidatos para la migracin. La mayora de
aplicaciones PC deben ser capaces de continuar trabajando con archivos PC que se
trasladan desde QDLS a otros sistemas de archivos.

Transferencia de archivos en el sistema de archivos integrado


Para transferir archivos entre cualquiera de los sistemas de archivos siguientes,
puede utilizar el soporte de FTP (protocolo de transferencia de archivos):
v Sistema de archivos raz (/)
v Sistema de archivos de sistemas abiertos (QOpenSys)
v Sistema de archivos de biblioteca (QSYS.LIB)
|

v
v
v
v
v

Sistema
Sistema
Sistema
Sistema
Sistema

de archivos de servicios de biblioteca de documentos (QDLS)


de archivos ptico (QOPT)
de Archivos de Red (NFS)
de archivos NetWare (QNetWare)
de archivos de Windows NT Server (QNTC)

No obstante, debe tener presentes las limitaciones siguientes:


v El sistema de archivos integrado limita el soporte de FTP a la transferencia de
datos de archivos nicamente. No se puede utilizar FTP para transferir datos de
atributos.
v El sistema de archivos QSYS.LIB limita el soporte de FTP a miembros de archivo
fsico, a miembros de archivo fsico fuente y a archivos de salvar. No se puede
utilizar FTP para transferir otros tipos de objeto como, por ejemplo, programas
(*PGM). No obstante, se puede guardar dichos tipos de objeto en un archivo de
salvar, transferir ste y, a continuacin, restaurar los objetos.
Si desea obtener informacin acerca de FTP, puede consultar el tema Iniciacin a
FTP o la publicacin TCP/IP Configuration and Reference, SC41-5420-03 .

Migracin de objetos a otro sistema de archivos en el sistema de


archivos integrado
Cada sistema de archivos tiene sus propias caractersticas exclusivas. Sin embargo,
migrar objetos a un sistema de archivos distinto puede significar perder las
ventajas del sistema de archivos donde estn almacenados actualmente los objetos.
Puede ser conveniente migrar objetos de un sistema de archivos a otro para
Captulo 3. Acceso al sistema de archivos integrado

25

aprovechar esas caractersticas. Antes de migrar objetos a otro sistema de archivos,


debe familiarizarse con los sistemas de archivos del sistema de archivos integrado
y sus caractersticas. Si desea obtener ms informacin, puede consultar el tema
Sistemas de archivos en el sistema de archivos integrado en la pgina 4.
Tambin deber considerar lo siguiente:
v Est utilizando aplicaciones que aprovechan las ventajas del sistema de
archivos en el que estn actualmente los objetos?
Algunos sistemas de archivos soportan interfaces que no forman parte del
soporte del sistema de archivos integrado. Es posible que las aplicaciones que
utilizan esas interfaces dejen de poder acceder a los objetos que se han movido a
otro sistema de archivos. Por ejemplo, los sistemas de archivos QDLS y QOPT
dan soporte a los mandatos y las API del sistema de archivos jerarquizado (HFS)
que funcionan con objetos carpetas y documentos. No se pueden utilizar esas
interfaces con objetos que estn en otros sistemas de archivos.
v Cules son las caractersticas importantes de los objetos para usted?
No todas las caractersticas estn soportadas en todos los sistemas de archivos.
Por ejemplo, el sistema de archivos QSYS.LIB slo proporciona soporte para
almacenar y recuperar unos cuantos atributos ampliados, mientras que los
sistemas de archivos raz (/) y QOpenSys proporcionan soporte para
almacenar y recuperar todos los atributos ampliados. Por consiguiente, QSYS.LIB
no es aconsejable para almacenar objetos que tengan atributos ampliados. QDLS
soporta muchos atributos de oficina, pero otros sistemas no. Por lo tanto,
QDLS es un buen lugar para conservar los documentos de oficina.
Los archivos de PC que estn en QDLS son buenos candidatos a la migracin.
La mayora de aplicaciones PC deben ser capaces de seguir trabajando con los
archivos PC que se trasladan desde QDLS a otros sistemas de archivos. Los
sistemas de archivos raz (/), QOpenSys, QNetWare y QNTC son buenas
opciones para almacenar dichos archivos de PC. Puesto que disponen de soporte
para muchas de las caractersticas del sistema de archivos del OS/2, estos
sistemas de archivos pueden proporcionar un acceso ms rpido a los archivos.

|
|
|
|
|
|
|

Migracin de objetos a otro sistema de archivos del sistema


de archivos integrado
Para migrar objetos a otro sistema de archivos, realice los siguientes pasos:
1. Salve una copia de todos los objetos que piensa migrar.
Tener una copia de seguridad permite restaurar los objetos en el sistema de
archivos original, si resulta que las aplicaciones no pueden acceder a los objetos
en el sistema de archivos a donde los ha trasladado.
Nota: No se pueden salvar objetos de un sistema de archivos y restaurarlos en
otro.
2. Cree en el sistema de archivos los directorios donde desea mover los objetos,
utilizando el mandato Crear Directorio (CRTDIR).
Debe examinar detenidamente los atributos del directorio donde estn
actualmente los objetos para determinar si desea duplicar esos atributos en los
directorios que crea. Por ejemplo, el usuario que crea el directorio es su
propietario, en lugar del usuario que era propietario del directorio antiguo.
Puede ser conveniente transferir la propiedad del directorio despus de haberlo
creado, si el sistema de archivos tiene soporte para establecer el propietario de
un directorio.
3. Mueva los archivos al sistema de archivos elegido utilizando el mandato Mover
(MOV).

26

OS/400 Introduccin al sistema de archivos integrado V4R5

MOV es aconsejable debido a que protege la propiedad de los objetos, si el


sistema de archivos tiene soporte para establecer la propiedad de los objetos. Si
se utiliza el mandato Copiar (CPY), el usuario que copia los objetos se
convierte en el propietario, si el sistema de archivos tiene soporte para
establecer la propiedad de los objetos. Observe que cuando se utiliza MOV o
CPY:
v Los atributos pueden no coincidir y pueden descartarse.
v Los atributos ampliados pueden descartarse.
v Las autorizaciones pueden no ser equivalentes y descartarse.
Esto significa que si decide devolver el objeto a su sistema de archivos original,
tal vez no desee simplemente volver a moverlo o copiarlo debido a los
atributos y autorizaciones que se han descartado. El mtodo ms seguro de
devolver un objeto es restaurar una versin salvada del objeto.

Captulo 3. Acceso al sistema de archivos integrado

27

28

OS/400 Introduccin al sistema de archivos integrado V4R5

Captulo 4. Soporte de programacin para el sistema de


archivos integrado
La inclusin del sistema de archivos integrado en el AS/400 no afecta a las
aplicaciones del AS/400 existentes. Los lenguajes de programacin, los programas
de utilidad y el soporte del sistema como, por ejemplo, las especificaciones de
descripcin de datos, funcionan del mismo modo que antes de incluir el sistema de
archivos integrado. De todas maneras, para aprovechar las ventajas de los archivos
continuos, directorios y dems soporte del sistema de archivos integrado, los
programadores deben utilizan un conjunto de las interfaces de programas de
aplicacin (API) de lenguaje C que se proporcionan para acceder a las funciones
del sistema de archivos integrado.
Este captulo presenta las API y describe otros aspectos que deben conocerse al
utilizar el sistema de archivos integrado en programas de aplicacin.

Los archivos continuos en los programas


Un archivo continuo es un archivo que contiene una corriente continua de datos.
Se pueden crear programas de lenguaje C que interactan con los archivos
continuos utilizando las API (funciones C) que proporciona el sistema de archivos
integrado (consulte el apartado API del sistema de archivos integrado en la
pgina 33). Si est familiarizado con las operaciones en archivos de base de datos
utilizando los recursos orientados a registros como, por ejemplo, las
especificaciones de descripcin de datos (DDS), puede que encuentre algunas
diferencias fundamentales en la forma de trabajar con archivos continuos.
Las diferencias son producto de la distinta estructura (o tal vez ausencia de
estructura) de los archivos continuos en comparacin con los archivos de base de
datos. Para acceder a los datos de un archivo de base de datos, el usuario
normalmente define los campos que se han de utilizar y la cantidad de registros
que se han de procesar. Para acceder a los datos de un archivo continuo, el usuario
indica un desplazamiento de byte y una longitud.
Ya que el usuario define el formato y las caractersticas de un archivo orientado a
registros por anticipado, el sistema operativo tiene conocimiento del archivo y
puede contribuir a evitar que se efecten operaciones que no son adecuadas para
el formato y las caractersticas del archivo. Con los archivos continuos, el sistema
operativo tiene escaso conocimiento, o ninguno, del formato del archivo. La
aplicacin debe saber cul es el aspecto del archivo y cmo trabajar con l
correctamente. Los archivos continuos proporcionan un entorno de programacin
sumamente flexible, pero a costa de recibir poca o ninguna ayuda del sistema
operativo. Los archivos continuos son ms apropiados en ciertas situaciones de
programacin; los archivos orientados a registros son ms adecuados en otras.

Copia de datos entre archivos continuos y archivos de base


de datos
Existen tres maneras de copiar datos entre archivos continuos y archivos de base
de datos en el sistema de archivos integrado:
v Mediante mandatos CL.
v Mediante API (funciones C).
Copyright IBM Corp. 1999, 2000

29

v Mediante la Funcin de transferencia de datos de Client Access (funciones C).

Copia de datos mediante mandatos CL


Se pueden utilizar los mandatos Copiar de Archivo Continuo (CPYFRMSTMF) y
Copiar en Archivo Continuo (CPYTOSTMF) para copiar datos entre archivos
continuos y miembros de archivos de base de datos. Se puede crear un archivo
continuo a partir de un miembro de archivo de base de datos utilizando el
mandato CPYTOSTMF. Tambin se puede crear un miembro de archivo de base de
datos utilizando el mandato CPYFRMSTMF. Si el archivo o miembro que es el
destino de la copia no existe, se crea.
No obstante, existen algunas limitaciones. El archivo de base de datos debe ser un
archivo fsico descrito por programa que contenga slo un campo, o bien un
archivo fsico fuente que contenga slo un campo de texto. Los mandatos
proporcionan una gran variedad de opciones para convertir y reasignar formato a
los datos que se estn copiando.
Tambin pueden utilizarse los mandatos CPYTOIMPF (copiar a archivo de
importacin) y CPYFRMIMPF (copiar desde archivo de importacin). Los
mandatos CPYTOSTMF y CPYFRMSTMF no permiten mover datos procedentes de
archivos de base de datos complejos descritos externamente (descritos mediante
DDS). La expresin archivo de importacin se refiere al archivo de tipo continuo;
habitualmente, este trmino se refiere a un archivo creado a efectos de copia de
datos entre bases de datos heterogneas.
Estos mandatos estn disponibles en la V4R3. Antes de esta versin estn
disponibles en algunos releases mediante PTF:
v V4R2M0: CPYFRMIMPF y CPYTOIMPF. El PTF de mandato es 5769SS100
VRM420 SF46911; el PTF de cdigo es 5769SS100 VRM420 SF46976
v V4R1M0: CPYFRMIMPF. El PTF de mandato es 5769SS100 VRM410 SF47138; el
PTF de cdigo es 5769SS100 VRM410 SF47177.
En la copia de datos procedentes de un archivo continuo (o de importacin), el
mandato CPYFRMIMPF permite especificar un archivo de definicin de campos
(FDF), que describe los datos del archivo continuo. Tambin puede especificarse
que los archivos continuos son delimitados, y los caracteres que se utilizan para
marcar los lmites de serie, campo y registro. Tambin se proporcionan opciones
para la conversin de tipos de datos especiales, tales como campos de hora y
fecha.
En estos mandatos se proporciona la conversin de datos si el archivo continuo o
miembro de base de datos de destino ya existen. Si el archivo no existe, puede
utilizar el siguiente mtodo que consta de dos pasos para efectuar la conversin de
los datos:
1. Utilice los mandatos CPYTOIMPF y CPYFRMIMPF para copiar los datos entre
el archivo descrito externamente y un archivo fsico fuente.
2. Utilice los mandatos CPYTOSTMF y CPYFRMSTMF (que proporcionan una
conversin completa de los datos exista o no el archivo de destino) para copiar
los datos entre el archivo fsico fuente y el archivo continuo.
A continuacin se ofrece un ejemplo:
CPYTOIMPF FROMFILE(DB2FILE) TOFILE(EXPFILE) DTAFMT(*DLM)
FLDDLM(';') RCDDLM(X'07') STRDLM('"') DATFMT(*USA) TIMFMT(*USA)

30

OS/400 Introduccin al sistema de archivos integrado V4R5

El parmetro DTAFMT especifica que el archivo continuo (de importacin) de


entrada es delimitado; la otra opcin es DTAFMT(*FIXED), que obliga a especificar
un archivo de definicin de campos. Los parmetros FLDDLM, RCDDLM y
STRDLM identifican los caracteres que actan como delimitadores o separadores
de campos, registros y series.
Los parmetros DATFMT y TIMFMT indican el formato que tendr toda la
informacin de fecha y hora que se copie al archivo de importacin.
El uso de mandatos resulta de utilidad porque pueden colocarse en un programa y
se ejecutan totalmente en el AS/400. No obstante, las interfaces son complejas.
Si desea obtener ms informacin, puede consultar la ayuda para mandatos o la
publicacin Manual de consulta de CL.

Copia de datos mediante API (funciones C)


Si en una aplicacin desea copiar miembros a un archivo continuo, puede utilizar
las funciones open(), read() y write() del sistema de archivos integrado para abrir
un miembro, leer sus datos y escribir datos en l. Consulte las API en el manual de
consulta de las API.

Copia de datos mediante la Funcin de transferencia de datos de


Client Access
Si tiene instalado Client Access 400 en el PC y en el AS/400, tambin puede
utilizar la aplicacin de Transferencia de datos para transferir datos entre archivos
continuos y archivos de base de datos. Para transferir un archivo a o desde un
archivo continuo en el AS/400, primero debe establecer una conexin con el
AS/400 y correlacionar una unidad de red con la correspondiente va de acceso en
el sistema de archivos del AS/400.
Una vez haya correlacionado una unidad con el AS/400, transfiera datos desde un
archivo de base de datos a un archivo continuo. Seleccione el icono de
Transferencia de datos desde AS400 en la ventana de Client Access Express.
Seleccione el sistema AS/400 desde el que desea realizar la transferencia. A
continuacin, seleccione los nombres de archivo, utilizando el nombre de archivo y
biblioteca de la base de datos del AS/400 desde la que se realizar la copia y la
unidad de red para la ubicacin del archivo continuo resultante. Tambin puede
elegir Detalles del archivo PC para seleccionar el formato del archivo continuo del
PC. La Transferencia de datos soporta los tipos de archivo PC ms comunes, tales
como texto ASCII, BIFF3, CSV, DIF, texto delimitado con tabuladores o WK4. Para
ejecutar la transferencia, pulse el botn Transferir datos desde AS/400.
Tambin puede mover datos de un archivo continuo a un archivo de base de datos.
Para ello, seleccione la aplicacin Transferencia de datos a AS/400. Para el nombre
de archivo PC, puede elegir Examinar la unidad de red que haya asignado y elegir
un archivo continuo. Tambin puede utilizar un archivo continuo ubicado en el
mismo PC. Para el sistema AS/400, elija el sistema en el que desea ubicar el
archivo de base de datos descrito externamente.
Puede mover datos a un archivo de base de datos descrito externamente que ya
exista, crear un nuevo archivo de base de datos basndose en un archivo de base
de datos que ya exista o crear una nueva definicin de archivo de base de datos y
archivo. Para crear una nueva definicin de archivo de base de datos y archivo,
seleccione Crear archivo de base de datos AS/400 en el men Herramientas de la
aplicacin Transferencia de datos. Esta herramienta analiza un archivo continuo
dado para determinar el nmero, tipo y tamao de los campos necesarios en el
Captulo 4. Soporte de programacin para el sistema de archivos integrado

31

archivo de base de datos resultante. A continuacin, la herramienta puede crear la


definicin del archivo de base de datos en el AS/400.
Si mueve datos a una definicin que ya exista en el AS/400, la aplicacin de
Transferencia de datos le obligar a utilizar un archivo de descripcin de formato
(FDF) asociado. Un archivo FDF describe el formato de un archivo continuo, y lo
crea la aplicacin Transferencia de datos desde AS/400 cuando transfiere datos de
un archivo de base de datos a un archivo continuo. Para realizar la transferencia de
datos de un archivo continuo a un archivo de base de datos, pulse el botn
Transferencia de datos a AS/400.
Si no dispone de un archivo .FDF existente, puede crear uno rpidamente. Cree un
archivo de base de datos descrito externamente con un formato que coincida con el
archivo continuo fuente (nmero de campos, tipos de datos). Cree un registro de
datos temporal dentro del archivo de base de datos. Utilice la funcin Transferencia
de datos desde AS/400 para crear un archivo continuo y su archivo .FDF asociado
a partir de este archivo de base de datos. A continuacin, puede utilizar la
Transferencia de datos a AS/400 y especificar este archivo .FDF con el archivo
continuo fuente que desea transferir.
Tambin puede realizar este movimiento de datos en un trabajo de proceso por
lotes con las aplicaciones de Transferencia de datos de Client Access. Proceda del
mismo modo que antes, pero seleccione la opcin de men Archivo para guardar
la peticin de transferencia. La aplicacin Transferencia de datos a AS/400 crea un
archivo .DTT o .TFR. La aplicacin Transferencia de datos desde AS/400 crea un
archivo .DTF o .TTO. En el directorio de Client Access pueden ejecutarse por lotes
dos programas desde una lnea de mandatos:
v RTOPCB toma un archivo .DTF o .TTO como parmetro
v RFROMPCB toma un archivo .DTT o .TFR como parmetro
Mediante una aplicacin planificadora puede definir que se ejecute cualquiera de
estos mandatos de forma planificada. Por ejemplo, puede utilizar System Agent
Tool (que forma parte de Microsoft Plus Pack) para especificar el programa que
debe ejecutarse (por ejemplo, RTOPCB MIARCH.TTO) y la hora en la que desea que se
ejecute el programa.
Las aplicaciones de Transferencia de datos de Client Access presentan la ventaja de
tener una interfaz grfica fcil de utilizar y una conversin automtica de los datos
de tipo numrico y carcter. No obstante, la Transferencia de datos requiere la
instalacin del producto Client Access, la utilizacin de recursos del PC y el
AS/400 y comunicaciones entre ambos.

Interfaces de programas de aplicacin (API) para el sistema de


archivos integrado
Las API que realizan operaciones en los directorios y archivos continuos del
sistema de archivos integrado tienen el formato de funciones de lenguaje C. Puede
elegir entre dos conjuntos de funciones, cada una de las cuales se puede utilizar en
programas creados utilizando el Entorno de Lenguajes Integrados (ILE) C/400:
v Funciones C del sistema de archivos integrado incluidas en OS/400.
v Funciones C proporcionadas por el programa bajo licencia ILE C/400.
Las API del sistema de archivos integrado se han mejorado para permitir que las
aplicaciones puedan almacenar y manipular archivos muy grandes en el sistema de

32

OS/400 Introduccin al sistema de archivos integrado V4R5

archivos integrado. Si desea obtener detalles, puede consultar el tema Soporte de


archivos grandes en las API del sistema de archivos integrado en la pgina 37.
Si desea conocer las reglas que se aplican a los nombres de va de acceso de las
API del sistema de archivos integrado, puede consultar el tema Reglas de
nombres de vas de acceso para las API del sistema de archivos integrado en la
pgina 36.

API del sistema de archivos integrado


Las funciones del sistema de archivos integrado funcionan slo mediante el soporte
de E/S continua del sistema de archivos integrado. La Tabla 2 lista estas funciones.
Tabla 2. Funciones del sistema de archivos integrado
Funcin

Descripcin

access()

Determinar accesibilidad de archivo

chdir()

Cambiar directorio actual

chmod()

Cambiar autorizaciones de archivo

chown()

Cambiar propietario y grupo de archivo

close()

Cerrar descriptor de archivo

closedir()

Cerrar directorio

creat()

Crear archivo nuevo o volver a grabar archivo existente

creat64()

Crear archivo nuevo o volver a grabar archivo existente


(con soporte de archivos grandes)

DosSetFileLocks ()

Bloquear y desbloquear el rango de bytes de un archivo.

DosSetFileLocks64()

Bloquear y desbloquear el rango de bytes de un archivo


(con soporte de archivos grandes).

dup()

Duplicar descriptor de archivo abierto

dup2()

Duplicar descriptor de archivo abierto en otro descriptor

fchmod()

Cambiar autorizaciones de archivo por descriptor

fchown()

Cambiar propietario y grupo de archivo por descriptor

fcntl()

Efectuar accin de control de archivo

fpathconf()

Obtener variables de nombre de va de acceso


configurables por descriptor

fstat()

Obtener informacin de archivo por descriptor

fstat64()

Obtener informacin de archivo por descriptor (con


soporte de archivos grandes)

fstatvfs()

Obtener informacin por descriptor

fstatvfs64()

Obtener informacin por descriptor (con soporte de 64


bits)

fsync()

Sincronizar cambios en archivo

ftruncate()

Truncar archivo

ftruncate64()

Truncar archivo (con soporte de archivos grandes)

getcwd()

Obtener nombre de va de acceso de directorio actual

getegid()

Obtener ID de grupo efectivo

geteuid()

Obtener ID de usuario efectivo

getgid()

Obtener ID de grupo real

Captulo 4. Soporte de programacin para el sistema de archivos integrado

33

Tabla 2. Funciones del sistema de archivos integrado (continuacin)


Funcin

Descripcin

getgrgid()

Obtener informacin de grupo utilizando ID de grupo

getgrnam()

Obtener informacin de grupo utilizando nombre de


grupo

getgroups()

Obtener los ID de grupo

getpwnam()

Obtener informacin de usuario del nombre de usuario

getpwuid()

Obtener informacin de usuario del ID de usuario

getuid()

Obtener ID de usuario real

givedescriptor()

Proporcionar acceso de archivo a otro trabajo

ioctl()

Efectuar accin de control de E/S de archivo

link()

Crear enlace con archivo

lseek()

Establecer desplazamiento de lectura/grabacin de


archivo

lseek64()

Establecer desplazamiento de lectura/grabacin de


archivo (con soporte de archivos grandes)

lstat()

Obtener informacin de archivo o enlace

lstat64()

Obtener informacin de archivo o enlace (con soporte de


archivos grandes)

mkdir()

Crear directorio

open()

Abrir archivo

open64()

Abrir archivo (con soporte de archivos grandes)

opendir()

Abrir directorio

pathconf()

Obtener variables de nombre de va de acceso


configurables

Qp0lCvtPathToQSYSObjName() Convertir el nombre de va de acceso en nombre del


objeto QSYS de tres partes

34

Qp0lFLOP()

Realizacin de operaciones de diverso tipo sobre los


objetos

Qp0lGetAttr()

Obtener los atributos de sistema de un objeto

Qp0lGetPathFromFileID()

Obtener nombre de va de acceso de objeto a partir de su


ID de archivo

Qp0lOpen()

Abrir archivo con nombre de va de acceso habilitado


para NLS

Qp0lProcessSubtree()

Procesar directorios u objetos en un rbol de directorios

Qp0lRenameKeep()

Redenominar archivo o directorio, mantener nuevo si


existe

Qp0lRenameUnlink()

Redenominar archivo o directorio, desenlazar nuevo si


existe

Qp0lSaveStgFree()

Guardar datos de objetos y liberar su almacenamiento

Qp0lSetAttr()

Establecer los atributos de sistema de un objeto

Qp0lUnlink()

Eliminar enlace con archivo con nombre de va de acceso


habilitado para NLS

QZNFRTVE()

Recuperar la informacin de exportacin de NFS

read()

Leer en archivo

OS/400 Introduccin al sistema de archivos integrado V4R5

Tabla 2. Funciones del sistema de archivos integrado (continuacin)


Funcin

Descripcin

readv()

Leer en archivo (vector)

readdir()

Leer entrada del directorio

readdir_r()

Leer entrada de directorio (threadsafe)

readlink()

Leer valor de enlace simblico

rename()

Redenominar archivo o directorio. Se puede definir para


tener la semntica de Qp0lRenameKeep() o de
Qp0lRenameUnlink().

rewinddir()

Restablecer corriente de directorio

rmdir()

Eliminar directorio

select()

Comprobar estado E/S de mltiples descriptores de


archivos

DosSetRelMaxFH()

Cambiar el nmero mximo de descriptores de archivos

stat()

Obtener informacin de archivo

stat64()

Obtener informacin de archivo (con soporte para


archivos grandes)

statvfs()

Obtener informacin de sistema de archivos

statvfs64()

Obtener informacin de sistema de archivos (con soporte


de archivos grandes)

symlink()

Crear enlace simblico

sysconf()

Obtener variables de configuracin del sistema

takedescriptor()

Tomar acceso de archivo desde otro trabajo

umask()

Establecer mscara de autorizacin para trabajo

unlink()

Eliminar enlace con archivo

utime()

Establecer horas de acceso y de modificacin de archivo

write()

Grabar en archivo

writev()

Grabar en archivo (vector)

Si desea obtener detalles sobre cada funcin, puede consultar la categora API tipo
UNIX del tema API OS/400 del AS/400 Information Center. Si desea obtener una
discusin sobre la conversin de datos utilizando la funcin open(), puede
consultar el tema Conversin de datos en el sistema de archivos integrado en la
pgina 43.
Para obtener informacin sobre la propiedad de objetos, el grupo primario, el
nmero de ID de usuario (UID) y el nmero de ID de grupo (GID), consulte la
publicacin Security - Reference, SC41-5302-04.
Algunas de estas funciones se utilizan tambin para sockets OS/400 (consulte el
apartado Soporte de sockets en el sistema de archivos integrado en la pgina 41).
Para conocer las restricciones sobre el uso de estas funciones en sistemas de
archivos concretos, consulte el Sistemas de archivos en el sistema de archivos
integrado en la pgina 4.

Captulo 4. Soporte de programacin para el sistema de archivos integrado

35

Si desea obtener un programa de ejemplo que utilice funciones C del sistema de


archivos integrado, puede consultar el Apndice A. Programa de ejemplo con
funciones C del sistema de archivos integrado en la pgina 77.

Funciones ILE C/400 en el sistema de archivos integrado


ILE C/400 proporciona las funciones C estndar definidas por el ANSI (American
National Standards Institute). Estas funciones pueden operar mediante el soporte
de E/S de gestin de datos o el soporte de E/S continua del sistema de archivos
integrado, segn lo especificado al crear el programa C. El compilador utiliza la
E/S de gestin de datos, a menos que se indique lo contrario.
Para indicar al compilador que utilice la E/S continua del sistema de archivos
integrado, debe especificar *IFSIO en el parmetro Opcin de interfaz de sistema
(SYSIFCOPT) de los mandatos Crear mdulo ILE C/400 (CRTCMOD) o Crear
programa C enlazado (CRTBNDC). Al especificar *IFSIO, se enlazan las funciones
de E/S del sistema de archivos integrado en lugar de las funciones de E/S de
gestin de datos. De hecho, las funciones C de ILE C/400 utilizan las funciones del
sistema de archivos integrado para efectuar la E/S.

Programas de aplicacin
Funciones ILE C/400
(fopen, fclose, ...)

Funciones C del sistema de archivos integrado


(open, close, ...)

Interfaz del sistema de archivos integrado


RV3N070-3

Figura 11. Las funciones ILE C/400 utilizan las funciones de E/S continua del sistema de
archivos integrado

Para obtener ms informacin acerca de la utilizacin de las funciones de ILE


C/400 con la E/S continua del sistema de archivos integrado, consulte la
publicacin ILE C for AS/400 Programmers Guide, SC09-2712-01 . Para obtener
detalles sobre cada una de las funciones C de ILE C/400, consulte la publicacin
ILE C for AS/400 Run-Time Library Reference, SC09-2711-01 .

Reglas de nombres de vas de acceso para las API del sistema de


archivos integrado
Cuando se utiliza una API del sistema de archivos integrado o de ILE C/400 para
realizar operaciones sobre un objeto, ste se identifica especificando su va de
acceso de directorio. A continuacin se proporciona un resumen de las reglas que
hay que tener en cuenta al especificar nombres de vas de acceso en las API. El
trmino objeto en estas reglas hace referencia a cualquier directorio, archivo, enlace
u otro objeto.

36

OS/400 Introduccin al sistema de archivos integrado V4R5

v Los nombres de vas de acceso se especifican por orden jerrquico, empezando


por el nivel superior de la jerarqua de directorios. El nombre de cada
componente de la va de acceso se separa con una barra inclinada (/); por
ejemplo:
Dir1/Dir2/Dir3/ArchUsr

La barra inclinada invertida (\) no se reconoce como separador. Se maneja


exactamente igual que otro carcter del nombre.
v Los nombres de objeto deben ser exclusivos en el directorio.
v La longitud mxima de cada componente del nombre de va de acceso y la
longitud mxima de la serie del nombre de va de acceso pueden variar en cada
sistema de archivos. Consulte el Sistemas de archivos en el sistema de archivos
integrado: comparacin en la pgina 45 para conocer los lmites de cada sistema
de archivos.
v Un carcter / al principio de un nombre de va de acceso significa que la va de
acceso empieza en el directorio de mayor nivel, el directorio raz (/); por
ejemplo:
/Dir1/Dir2/Dir3/ArchUsr

v Si el nombre de va de acceso no empieza con el carcter /, se presupone que la


va de acceso empieza en el directorio actual; por ejemplo:
MiDir/MiArch

donde MiDir es un subdirectorio del directorio actual.


v Para evitar la confusin que podra producirse con los valores especiales del
AS/400, los nombres de va de acceso no pueden comenzar con un nico
carcter de asterisco (*). Para especificar un nombre de va de acceso que
comience con cualquier nmero de caracteres, utilice dos asteriscos (*); por
ejemplo:
'**.file'

Tenga en cuenta que este caso slo se aplica a los nombres de va de acceso
relativa donde no hay otros caracteres antes del asterisco (*).
v Cuando se trabaja con objetos del sistema de archivos QSYS.LIB, los nombres de
componentes deben tener el formato nombre.tipo-objeto; por ejemplo:
/QSYS.LIB/PAYROLL.LIB/PAY.FILE

v No utilice signos de dos puntos (:) en los nombres de va de acceso. Tiene un


significado especial dentro del sistema.
v A diferencia de los nombres de va de acceso de los mandatos del sistema de
archivos integrado (consulte el apartado Reglas de nombres de vas de acceso
para mandatos y pantallas del sistema de archivos integrado en la pgina 19), el
asterisco (*), el interrogante (?), el apstrofo ('), las comillas (") y la tilde (x)
carecen de significacin especial. Se manejan exactamente igual que otro carcter
del nombre.

Soporte de archivos grandes en las API del sistema de archivos


integrado
Las API del sistema de archivos integrado se han mejorado para permitir que las
aplicaciones puedan almacenar y manipular archivos muy grandes en el sistema de
archivos integrado. El sistema de archivos integrado permite tener tamaos de
archivo continuo de hasta 256 gigabytes en el sistema de archivos raz (/), el
Sistema de Archivos de Sistemas Abiertos (QOpenSys) y el sistema de archivos
definido por usuario (UDFS).
Captulo 4. Soporte de programacin para el sistema de archivos integrado

37

El sistema de archivos integrado proporciona un conjunto de interfaces API tipo


UNIX de 64 bits y permite correlacionar fcilmente las API tipo UNIX de 32 bits
existentes con interfaces API de 64 bits capaces de acceder a tamaos y
desplazamientos de archivos grandes utilizando argumentos de tipo entero de 8
bytes. Si desea tener una lista de las API de 64 bits, puede consultar el tema API
del sistema de archivos integrado en la pgina 33. Si desea obtener detalles sobre
cada una de las API de 64 bits, consulte el captulo API del Sistema de Archivos
Integrado de la publicacin Programacin de las API de sistema.
Para permitir la utilizacin del soporte de archivos grandes por parte de las
aplicaciones se proporcionan los siguientes mecanismos:
1. Si se define la etiqueta de macro _LARGE_FILE_API durante la compilacin, las
aplicaciones tendrn acceso a las API y a las estructuras de datos habilitadas
para 64 bits. Por ejemplo, una aplicacin en la que se pretenda utilizar la API
stat64() y la estructura stat64 deber definir _LARGE_FILE_API durante la
compilacin.
2. Si las aplicaciones definen la etiqueta de macro _LARGE_FILES durante la
compilacin, las API y las estructuras de datos existentes se correlacionarn con
sus versiones de 64 bits. Por ejemplo, si una aplicacin define _LARGE_FILES
durante la compilacin, una llamada a la API stat() se correlacionar con la
API stat64() y una estructura stat se correlacionar con una estructura
stat64.
Las aplicaciones en las que se pretenda utilizar el soporte de archivos grandes
pueden definir _LARGE_FILE_API durante la compilacin y codificar directamente
las API de 64 bits, o bien pueden definir _LARGE_FILES durante la compilacin y
todas las correspondientes API y estructuras de datos se correlacionarn
automticamente con sus versiones de 64 bits.
Las aplicaciones en las que no se pretenda utilizar el soporte de archivos grandes
no se ven afectadas y pueden seguir utilizando las API del sistema de archivos
integrado sin efectuar cambio alguno.

Descriptores de archivos en el sistema de archivos integrado


Al utilizar las funciones de E/S continua de ILE C/400 definidas por el ANSI
(American National Standards Institute) para ejecutar operaciones en un archivo, el
archivo se identifica mediante la utilizacin de punteros. Al utilizar las funciones C
del sistema de archivos integrado, el archivo se identifica especificando un
descriptor de archivo. Un descriptor de archivo es un entero positivo que debe ser
exclusivo en cada trabajo. El trabajo utiliza un descriptor de archivo para
identificar un archivo abierto al realizar operaciones sobre el archivo. El descriptor
de archivo se representa con la variable fildes en las funciones C que operan en el
sistema de archivos integrado y con la variable descriptor en las funciones C que
operan en sockets.
Cada descriptor de archivo hace referencia a una descripcin de archivo abierto,
que contiene informacin como, por ejemplo, desplazamiento de archivo, estado
del archivo y modalidades de acceso para el archivo. Varios descriptores de
archivo pueden hacer referencia a la misma descripcin de archivo abierto, pero un
descriptor de archivo slo puede hacer referencia a una descripcin de archivo
abierto.

38

OS/400 Introduccin al sistema de archivos integrado V4R5

Sistema
ssize_t read(int files, . . .)
Descriptor
de archivo

Descripcin de
archivo abierto
Desplazamiento
xxx
Estado
xxxx
Modalidades
de acceso
xxxxxx
RV3N077-1

Figura 12. Descriptor de archivo y descripcin de archivo abierto

Si se utiliza una funcin de E/S continua de ILE C/400 con el sistema de archivos
integrado, el soporte de tiempo de ejecucin de ILE C/400 convierte el puntero de
archivo en un descriptor de archivo.
Cuando se utilizan los sistemas de archivos raz (/), QOpenSys o el definido por
el usuario, se puede pasar el acceso a una descripcin de archivo abierto de un
trabajo a otro, con lo que se permite al trabajo acceder al archivo. Esta operacin se
efecta utilizando la funcin givedescriptor() o takedescriptor() para pasar el
descriptor de archivo entre trabajos. Si desea obtener una descripcin de estas
funciones, puede consultar la publicacin Sockets Programming o el captulo API
de Sockets de la publicacin System API Programming .

La seguridad en los programas del sistema de archivos


integrado
Al utilizar las API del sistema de archivos integrado, se puede restringir el acceso a
los objetos del mismo modo que al utilizar las interfaces de gestin de datos. Tenga
en cuenta, de todos modos, que no se dispone de soporte para adoptar
autorizaciones. Una API del sistema de archivos integrado utiliza la autorizacin
del perfil de usuario con el que se ejecuta el trabajo.
Cada sistema de archivos puede tener sus propios requisitos de autorizaciones
especiales. Los trabajos de servidor NFS constituyen la nica excepcin de esta
regla. Las peticiones de servidor de Sistema de Archivos de Red se ejecutan bajo el
perfil del usuario cuyo nmero de identificacin (UID) se recibi en el servidor
NFS en el momento de la peticin.
Las autorizaciones en el sistema AS/400 son equivalentes a los permisos en los
sistemas UNIX. Los tipos de permisos son leer y grabar (para un archivo o un
directorio) y ejecutar (para un archivo) o buscar (para un directorio). Los permisos
se indican por medio de un conjunto de bits de permiso, que componen la
modalidad de acceso del archivo o directorio. Se pueden cambiar los bits de
permiso utilizando las funciones de cambiar modalidad chmod() o fchmod().
Tambin se puede utilizar la funcin umask() para controlar qu bits de permiso
de archivo se establecen cada vez que un trabajo crea un archivo.

Captulo 4. Soporte de programacin para el sistema de archivos integrado

39

Para obtener detalles sobre seguridad de datos y autorizaciones, consulte la


publicacin Security - Reference, SC41-5302-04 . Si desea obtener detalles sobre las
API del sistema de archivos integrado, puede consultar el captulo API del
Sistema de Archivos Integrado de la publicacin System API Programming .

Enlaces fijos y enlaces simblicos: comparacin


Al utilizar nombres de vas de acceso en los programas, se dispone de la opcin de
utilizar un enlace fijo o un enlace simblico (consulte el apartado Enlaces y
enlaces simblicos en el sistema de archivos integrado en la pgina 10). Cada tipo
de enlace tiene sus ventajas y sus desventajas. La Tabla 3 indica las condiciones
bajo las cuales un tipo de enlace presenta ventajas respecto el otro tipo.
Tabla 3. Comparacin entre enlace fijo y enlace simblico

40

Elemento

Enlace fijo

Enlace simblico

Resolucin de nombre

Ms rpido. Un enlace fijo


contiene una referencia
directa al objeto.

Ms lento. Un enlace
simblico contiene un
nombre de va de acceso al
objeto, que debe resolverse
para localizar el objeto.

Existencia de objeto

Necesario. Un objeto debe


existir para poder crear un
enlace fijo con l.

Opcional. Un enlace
simblico se puede crear
cuando el objeto al que hace
referencia no existe.

Supresin de objeto

Restringido. Todos los


Sin restriccin. Un objeto se
enlaces fijos con un objeto
puede suprimir incluso
deben estar desenlazados
aunque haya enlaces
(eliminados) para suprimir el simblicos que hagan
objeto.
referencia a l.

Objetos dinmicos (los


atributos cambian)

Ms lento. Muchos de los


atributos de un objeto se
almacenan en cada enlace
fijo. Los cambios efectuados
en un objeto dinmico, por
lo tanto, son ms lentos a
medida que aumenta el
nmero de enlaces fijos con
el objeto.

Ms rpido. Los cambios


efectuados en un objeto
dinmico no resultan
afectados por los enlaces
simblicos.

Objetos estticos (los


atributos no cambian)

Ms rpido. Para un objeto


esttico, la resolucin del
nombre es el principal objeto
de inters en cuanto a
rendimiento. La resolucin
del nombre es ms rpida
cuando se utilizan enlaces
fijos.

Ms lento. La resolucin del


nombre es ms lenta cuando
se utilizan enlaces
simblicos.

mbito

Restringido. Los enlaces fijos


no pueden cruzar sistemas
de archivos.

Sin restriccin. Los enlaces


simblicos pueden cruzar
sistemas de archivos.

OS/400 Introduccin al sistema de archivos integrado V4R5

Soporte de sockets en el sistema de archivos integrado


Si la aplicacin est utilizando los sistemas de archivos raz (/), QOpenSys o
definidos por usuario, puede aprovechar el soporte de socket local de sistema de
archivos integrado. Un tipo de objeto de socket local (tipo de objeto *SOCKET)
permite que dos trabajos que se ejecutan en el mismo sistema establezcan una
conexin de comunicaciones entre s.
Uno de los trabajos establece un punto de conexin utilizando la funcin bind() del
lenguaje C para crear un objeto socket local. El otro trabajo especifica el nombre
del objeto socket local en la funcin connect(), sendto() o sendmsg(). Estas
funciones y los conceptos de sockets en general se describen en el apartado
Programacin de sockets del AS/400 Information Center.
Una vez establecida la conexin, los dos trabajos pueden enviar datos y recibir
datos mutuamente utilizando las funciones del sistema de archivos integrado como
pueden ser write() y read(). Ninguno de los datos que se transfieren pasan en
realidad por el objeto socket. El objeto socket es simplemente un punto de
encuentro donde los trabajos se localizan mutuamente.
Cuando los dos trabajos acaban la comunicacin, cada uno de ellos utiliza la
funcin close() para cerrar la conexin del socket. El objeto socket local permanece
en el sistema hasta que se elimina con la funcin unlink() o con el mandato
Eliminar Enlace (RMVLNK).
Un objeto socket local no se puede salvar.

Nombres y soporte internacional en el sistema de archivos integrado


El soporte para los sistemas de archivos raz (/) y QOpenSys garantiza que los
caracteres de los nombres de objetos se mantienen constantes a travs de los
esquemas de codificacin utilizados en distintos idiomas y dispositivos. Cuando un
nombre de objeto se pasa al sistema, cada carcter del nombre se convierte en un
formato de 16 bits en el que todos los caracteres tienen una representacin
codificada estndar (consulte el apartado Continuidad de nombres a travs de
distintos modelos de codificacin en el sistema de archivos integrado en la
pgina 13). Cuando se utiliza el nombre, se convierte en el formato codificado
adecuado para la pgina de cdigos que se utiliza.
Si la pgina de cdigos a la que se est convirtiendo el nombre no contiene un
carcter utilizado en un nombre, el nombre se rechaza por no vlido.
Debido a que los caracteres se mantienen constantes a travs de las pginas de
cdigos, no debe efectuar ninguna operacin presuponiendo que un carcter
concreto se cambiar por otro carcter concreto cuando se utilice una pgina de
cdigos especfica. Por ejemplo, no debe presuponer que el carcter de signo
numrico (#) se cambiar por el carcter de libra esterlina () aunque puedan tener
la misma representacin codificada en pginas de cdigos distintas.
Observe que los nombres de los atributos ampliados de un objeto se convierten del
mismo modo que el nombre del objeto, por lo tanto, son aplicables las mismas
consideraciones.
Para obtener ms informacin acerca de las pginas de cdigos, consulte la
publicacin National Language Support, SC41-5101-01 .

Captulo 4. Soporte de programacin para el sistema de archivos integrado

41

Manejo de atributos ampliados en el sistema de archivos integrado


Existen muchos tipos de atributos ampliados (EA) y se pueden utilizar para
contener variedad de informacin. Puede ser necesario tener en cuenta los tres EA
siguientes, en particular:
.SUBJECT
Una descripcin breve del contenido o finalidad del objeto.
.TYPE El tipo de datos del objeto. El tipo de datos puede ser texto, binario, fuente
de un programa, un programa compilado u otra informacin.
.CODEPAGE
La pgina de cdigos que se ha de utilizar para el objeto. La pgina de
cdigos utilizada para el objeto tambin se utiliza para el EA asociado al
objeto.
Un punto (.) como primer carcter del nombre significa que el EA es un EA del
sistema estndar (SEA), que est reservado para uso del sistema.
Diversos objetos en los diversos sistemas de archivos pueden tener o no EA. El
sistema de archivos de biblioteca (QSYS.LIB) soporta tres EA predefinidos:
.SUBJECT, .TYPE y .CODEPAGE. En el sistema de archivos de servicios de
biblioteca de documento (QDLS), las carpetas y los documentos pueden tener
cualquier clase de EA. Algunas carpetas y documentos pueden tener EA y puede
que otras no. En los sistemas de archivos raz (/), sistemas abiertos (QOpenSys)
y el definido por el usuario, los directorios, archivos continuos y enlaces simblicos
pueden tener EA de cualquier clase. Algunos, no obstante, puede que no tengan
EA.
El mandato Trabajar con Enlaces de Objeto (WRKLNK) se puede utilizar para
visualizar el atributo ampliado (EA) .SUBJECT de un objeto. No existe otro soporte
de sistema de archivos integrado mediante el que las aplicaciones o los usuarios
puedan acceder y cambiar EA. Las nicas excepciones a esta regla son los
mandatos CL Visualizar un UDFS (DSPUDFS) y Visualizar Informacin del Sistema
de Archivos Montado (DSPMFSINF), que presentan los atributos ampliados a los
usuarios.
Sin embargo, los EA asociados a algunos objetos de QDLS pueden cambiarse
mediante interfaces proporcionadas por el sistema de archivos jerarquizado (HFS).
Consulte los apartados Sistema de archivos de servicios de biblioteca de
documentos (QDLS) en la pgina 54 y Sistema de archivos ptico (QOPT) en la
pgina 56, en los que hallar ms informacin sobre estos sistemas de archivos.
Si un PC cliente est conectado al AS/400 a travs de OS/2 o Windows 95/98,
pueden utilizarse las interfaces de programacin del sistema operativo respectivo
(como por ejemplo DosQueryFileInfo y DosSetFileInfo) para consultar y establecer
los EA de cualquier objeto de archivo. Los usuarios del OS/2 tambin pueden
cambiar los EA de un objeto en el escritorio utilizando el cuaderno de valores; es
decir, seleccionando Valores en el men emergente asociado al objeto.
Si define atributos ampliados, utilice las directrices de denominacin siguientes:
v El nombre de un EA puede tener una longitud mxima de 255 caracteres.
v No utilice un punto (.) como primer carcter del nombre. Un EA cuyo nombre
empieza con un punto se interpreta como un EA del sistema estndar.
v Para minimizar la posibilidad de conflictos de nombres, utilice una estructura de
denominacin coherente para los EA. Se aconseja el formato siguiente:

42

OS/400 Introduccin al sistema de archivos integrado V4R5

NombreEmpresaNombreProducto.Nombre_Atributo

Conversin de datos en el sistema de archivos integrado


Al acceder a los archivos mediante la interfaz del sistema de archivos integrado,
los datos de los archivos se pueden convertir o no, segn la modalidad de apertura
solicitada al abrir el archivo.
Un archivo abierto puede estar en una de las dos modalidades de apertura
siguientes:
Binario
Los datos se leen en el archivo y se graban en el archivo sin convertirlos.
La aplicacin es responsable del manejo de los datos.
Texto

Los datos se leen y graban en el archivo suponiendo que estn en el


formato textual. Cuando los datos se leen en el archivo, se convierten de la
pgina de cdigos del archivo a la pgina de cdigos de la aplicacin, el
trabajo o el sistema que recibe los datos. Cuando los datos se graban en el
archivo, se convierten de la pgina de cdigos de la aplicacin, el trabajo o
el sistema a la pgina de cdigos del archivo. En los archivos realmente
continuos, todos los caracteres de formato de lnea (como el retorno de
carro, tabulador y fin de archivo) simplemente se convierten de una pgina
de cdigos a otra.
Cuando se lee en archivos de registros que se estn utilizando como
archivos continuos, los caracteres de fin de lnea (retorno de carro y salto
de lnea) se aaden al final de los datos de cada registro. Cuando se graba
en archivos de registros:
v Los caracteres de fin de lnea se eliminan.
v Los caracteres tabulador se sustituyen con el nmero adecuado de
espacios en blanco en la siguiente posicin del tabulador.
v Las lneas se rellenan con espacios en blanco (para un miembro de
archivo fsico fuente) o con nulos (para un miembro de archivo fsico de
datos) al final del registro.

En una peticin de apertura, se puede especificar una de las opciones siguientes:


Binario, Forzado
Los datos se procesan como binarios independientemente del contenido
real del archivo. La aplicacin es responsable de saber cmo manejar los
datos.
Texto, Forzado
Se presupone que los datos son texto. Los datos se convierten de la pgina
de cdigos del archivo a la pgina de cdigos de la aplicacin.
Para la funcin open() del sistema de archivos integrado, se utiliza el valor por
omisin Binario, Forzado.

Captulo 4. Soporte de programacin para el sistema de archivos integrado

43

44

OS/400 Introduccin al sistema de archivos integrado V4R5

Captulo 5. Sistemas de archivos: conceptos


Sistemas de archivos en el sistema de archivos integrado:
comparacin
La Tabla 4 y Tabla 5 en la pgina 46 resumen las caractersticas y las limitaciones de
cada sistema de archivos.

Tabla 4. Resumen de los sistemas de archivos (Parte 1 de 2)


Posibilidad

/ (raz)

QOpenSys

QSYS.LIB

QDLS

QNTC

Componente estndar del OS/400

Continuo

Continuo

12

Tipo de archivo

Continuo

Continuo

Registro

Integrado con OfiVisin (por ejemplo,


el archivo se puede enviar por correo)

No

No

No

No

Acceso a travs del servidor de


archivos OS/400

Acceso directo a travs del FSIOP

No

Velocidad comparativa de abrir/cerrar

Media

Bsqueda de nombre sensible a las


maysculas y minsculas

No

No
2

Media

No
2

No

Baja

Baja

No

No

Longitud mxima de cada componente 255 cars.


en el nombre de va de acceso

255 cars.

10.6 cars.

Longitud mxima de nombre de va de 16MB


acceso 8

16MB

55 cars.

Longitud mxima de los atributos


ampliados de un objeto

2 Gb

2 Gb

Variable

Niveles mximos de la jerarqua de


directorios dentro del sistema de
archivos

Sin lmite

Nmero mximo de enlaces por objeto

32 767

Media

8.3 cars.

No
7

255 cars.

82 cars.

255 cars.

32 Kb

64KB

32

127

32 767

No

No

No

Objeto/archivo puede tener propietario S

No

Soporte de mandatos del sistema de


archivos integrado

Soporte de las API del sistema de


archivos integrado

Soporte de las API del sistema de


archivos jerarquizado (HFS)

No

No

No

No

No

10

Sin lmite

10

11

Soporte de enlaces simblicos

Admite ejecucin en hebras

13

Copyright IBM Corp. 1999, 2000

45

Tabla 4. Resumen de los sistemas de archivos (Parte 1 de 2) (continuacin)


Posibilidad

/ (raz)

QOpenSys

QSYS.LIB

QDLS

QNTC

Notas:
1. El FSIOP es un hardware utilizado por el LAN Server.
2. Cuando se accede a travs del servidor de archivos OS/400.
3. Cuando se accede a travs de un PC cliente de LAN Server. El acceso utilizando las API del AS/400 es
comparativamente lento.
4. Consulte el apartado Sistema de archivos de biblioteca (QSYS.LIB) en la pgina 51 para obtener informacin
ms detallada.
5. Consulte el apartado Sistema de archivos de servicios de biblioteca de documentos (QDLS) en la pgina 54
para obtener informacin ms detallada.
6. Un mximo de 10 caracteres en el nombre de objeto y de 6 caracteres en el tipo de objeto. Consulte el apartado
Sistema de archivos de biblioteca (QSYS.LIB) en la pgina 51 para conocer ms detalles.
7. Un mximo de 8 caracteres en el nombre y de 1 a 3 caracteres en la extensin de tipo de archivo (si procede).
Consulte el apartado Sistema de archivos de servicios de biblioteca de documentos (QDLS) en la pgina 54
para obtener informacin ms detallada.
8. Suponiendo un nombre de va de acceso absoluto que empiece con / seguido del nombre del sistema de
archivos (como, por ejemplo, /QDLS...).
9. El sistema de archivos QSYS.LIB tiene soporte para tres atributos ampliados predefinidos: .SUBJECT,
.CODEPAGE y .TYPE. La longitud mxima queda determinada por la longitud combinada de estos tres
atributos ampliados.
10. En la prctica, los niveles de directorios estn limitados por los lmites de espacio del programa y del sistema.
11. Excepto un directorio, que slo puede tener un enlace con otro directorio.
12. Los espacios de usuario de QSYS.LIB dan soporte a la entrada y salida de archivo continuo.
13. Las API del sistema de archivos integrado admiten la ejecucin en hebras cuando la operacin se dirige a un
objeto que reside en un sistema de archivos que admite ejecucin en hebras. Si estas API estn operando sobre
objetos en sistemas de archivos que no admiten la ejecucin en hebras cuando en el trabajo se ejecutan
mltiples hebras, la API fallar.
Abreviaturas
cars. = caracteres
B = bytes

KB = kilobytes

MB = megabytes

GB = gigabytes

Tabla 5. Resumen de los sistemas de archivos (Parte 2 de 2)


Posibilidad

QFileSvr.400

UDFS

NFS

QNetWare

Componente estndar del S


OS/400

No

Tipo de archivo

Continuo

Continuo

Continuo

Continuo

Continuo

Integrado con OfiVisin


(por ejemplo, el archivo
se puede enviar por
correo)

No

No

No

No

No

Acceso a travs del


servidor de archivos
OS/400

Acceso directo a travs


No
del Servidor PC Integrado
(FSIOP) 1

No

No

No

Velocidad comparativa de Baja


abrir/cerrar

Baja

46

QOPT

OS/400 Introduccin al sistema de archivos integrado V4R5

Media

Media

Alta

11

Tabla 5. Resumen de los sistemas de archivos (Parte 2 de 2) (continuacin)


Posibilidad
Bsqueda de nombre
sensible a las maysculas
y minsculas

QOPT

QFileSvr.400

No

Longitud mxima de cada Variable


componente en el nombre
de va de acceso

No

Variable

UDFS

QNetWare

Variable

No

255 cars.

Variable

255 cars.

16MB

Sin lmite

NFS

12

Longitud mxima de
nombre de va de acceso

294 cars.

Sin lmite

Longitud mxima de los


atributos ampliados de
un objeto

8 Mb

Niveles mximos de la
jerarqua de directorios
dentro del sistema de
archivos

Sin lmite

Nmero mximo de
enlaces por objeto 7

32 767

Variable

Soporte de enlaces
simblicos

No

No

No

Objeto/archivo puede
tener propietario

No

No

Soporte de mandatos del


sistema de archivos
integrado

Soporte de las API del


sistema de archivos
integrado

Soporte de las API del


sistema de archivos
jerarquizado (HFS)

No

No

No

Admite ejecucin en
hebras 14

No

No

2GB

Sin lmite

10

Sin lmite

13

255 cars.
64KB

Sin lmite

100

No

No

Captulo 5. Sistemas de archivos: conceptos

47

Tabla 5. Resumen de los sistemas de archivos (Parte 2 de 2) (continuacin)


Posibilidad

QOPT

QFileSvr.400

UDFS

NFS

QNetWare

Notas:
1. El FSIOP es un hardware utilizado por el LAN Server.
2. Depende de a qu sistema de archivos remoto se est accediendo.
3. Cuando se accede a travs del servidor de archivos OS/400
4. Consulte el apartado Sistema de archivos ptico (QOPT) en la pgina 56 para obtener informacin ms
detallada.
5. Suponiendo que se trate de un nombre de va de acceso absoluto que empiece por / seguido del nombre del
sistema de archivos
6. El sistema de archivos QFileSvr.400 no devuelve atributos ampliados aunque el sistema de archivos al que se
acceda soporte atributos ampliados.
7. En la prctica, los niveles de directorios estn limitados por los lmites de espacio del programa y del sistema.
8. Excepto un directorio, que slo puede tener un enlace con otro directorio.
9. El sistema de archivos al que se accede puede que soporte propietarios de objetos.
10. La longitud mxima de los atributos ampliados de UDFS en s no puede ser superior a 40 bytes.
11. Si se accede a travs de un PC cliente Novell NetWare. El acceso utilizando las API del AS/400 es
comparativamente lento.
12. La sensibilidad a las maysculas y las minsculas puede especificarse al crear un UDFS. Si se utiliza el
parmetro *MIXED cuando se crea un UDFS, permitir una bsqueda que distingue maysculas de
minsculas.
13. Los objetos de los servicios de directorio NetWare tienen un mximo de 255 caracteres. Los archivos y
directorios estn limitados al formato DOS 8.3.
14. Las API del sistema de archivos integrado admiten la ejecucin en hebras cuando se accede a ellas en un
proceso con posibilidad multihebra. El sistema de archivos no permite el acceso a los sistemas de archivos que
no admiten la ejecucin en hebras.
Abreviaturas
cars. = caracteres
B = bytes

KB = kilobytes

MB = megabytes

GB = gigabytes

Sistema de archivos raz (/)


El sistema de archivos raz (/) obtiene el mximo provecho del soporte de
archivos continuos y de la estructura jerrquica de directorios del sistema de
archivos integrado. Tiene las caractersticas de los sistemas de archivos del DOS y
del OS/2.
Adems:
v Est optimizado para la entrada/salida de archivos continuos.
v Soporta mltiples enlaces fijos y enlaces simblicos.
v Soporta sockets locales.
v Soporta objetos *OOPOOL.
v Soporta interfaces del programa de aplicacin (API) que admiten la ejecucin en
hebras.

Utilizacin del sistema de archivos raz (/)


Al sistema de archivos raz (/) slo se puede acceder a travs de la interfaz del
sistema de archivos integrado utilizando los mandatos del servidor de archivos
OS/400 o del sistema de archivos integrado, las pantallas de usuario y las API del
lenguaje C.

48

OS/400 Introduccin al sistema de archivos integrado V4R5

Maysculas y minsculas en el sistema de archivos raz (/)

El sistema de archivos conserva la misma forma de maysculas y minsculas en la


que se han entrado los nombres de objetos, pero no hace ninguna distincin entre
maysculas y minsculas cuando el sistema efecta bsquedas de nombres.

Nombres de va de acceso en el sistema de archivos raz (/)


v Los nombres de vas de acceso tienen el formato siguiente:
Directorio/Directorio . . . /Objeto

v Los componentes de los nombres de va de acceso que siguen al nombre


compartido siguen las reglas de nombres de va de acceso de Windows NT. La
combinacin de nombres de directorio y nombre de objeto puede ocupar una
longitud mxima de 255 caracteres.
v No existe ningn lmite en la profundidad de la jerarqua de directorios ms que
los lmites de espacio del programa y del sistema.
v Los caracteres de los nombres se convierten al formato UCS2 Nivel 1 al
almacenarse los nombres (consulte el apartado Continuidad de nombres a
travs de distintos modelos de codificacin en el sistema de archivos integrado
en la pgina 13).

Enlaces en el sistema de archivos raz (/)

Se permiten varios enlaces fijos con el mismo objeto en el sistema de archivos


raz (/). Los enlaces simblicos se soportan totalmente. Se puede utilizar un
enlace simblico para tener un enlace desde el sistema raz (/) con un objeto de
otro sistema de archivos como, por ejemplo, QSYS.LIB o QDLS.
Para ver la descripcin de los enlaces, consulte el apartado Enlaces y enlaces
simblicos en el sistema de archivos integrado en la pgina 10.

Utilizacin de mandatos del sistema de archivos integrado en el


sistema de archivos raz (/)
Todos los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 y las pantallas descritas en el apartado Realizacin de
operaciones en el sistema de archivos integrado desde el AS/400 en la pgina 15
pueden realizar operaciones en el sistema de archivos raz (/). Sin embargo,
puede que la ejecucin de estos mandatos en un proceso con posibilidad
multihebra no sea segura.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos raz (/)

Todas las API del lenguaje C que se listan en el apartado API del sistema de
archivos integrado en la pgina 33 pueden operar en el sistema de archivos raz
(/) de un modo seguro en ejecucin multihebra.

Sistema de archivos de sistemas abiertos (QOpenSys)


El sistema de archivos QOpenSys es compatible con los estndares de sistemas
abiertos basados en UNIX como, por ejemplo, POSIX y XPG. Al igual que el
sistema de archivos raz(/), este sistema de archivos se beneficia del soporte de
directorios y archivos continuos suministrado por el sistema de archivos integrado.
Adems:
v Se accede a l a travs de una estructura jerrquica de directorios semejante a la
de los sistemas UNIX.
v Est optimizado para la entrada/salida de archivos continuos.
v Soporta mltiples enlaces fijos y enlaces simblicos.
Captulo 5. Sistemas de archivos: conceptos

49

v
v
v
v

Soporta
Soporta
Soporta
Soporta

nombres sensibles a las maysculas y minsculas.


sockets locales.
objetos *OOPOOL.
las API que admiten ejecucin en hebras.

El sistema de archivos QOpenSys tiene las mismas caractersticas que el sistema de


archivos raz (/), excepto que es sensible a las maysculas y minsculas para
habilitar el soporte para los estndares de sistemas abiertos basados en UNIX.

Utilizacin de QOpenSys
Al QOpenSys puede accederse a travs de la interfaz del sistema de archivos
integrado utilizando los mandatos del servidor de archivos OS/400 o sistema de
archivos integrado, las pantallas de usuario y las API del lenguaje C.

Maysculas y minsculas en el sistema de archivos QOpenSys


A diferencia del sistema de archivos raz (/), el sistema de archivos QOpenSys
distingue entre minsculas y maysculas en las bsquedas de nombres de objeto.
Por ejemplo, una serie de caracteres suministrada toda en maysculas no
coincidir con la misma serie de caracteres donde alguno de los caracteres est en
minsculas.
Esta distincin de maysculas y minsculas permite utilizar nombres duplicados,
dado que existen diferencias en las maysculas y minsculas de los caracteres que
componen el nombre. Por ejemplo, puede tener un objeto denominado Sueldo, otro
objeto denominado SuEldo y otro denominado SUELDO en el mismo directorio de
QOpenSys.

Nombres de va de acceso en el sistema de archivos QOpenSys


v Los nombres de vas de acceso tienen el formato siguiente:
Directorio/Directorio/ . . . /Objeto

v Cada componente del nombre de va de acceso puede tener una longitud


mxima de 255 caracteres. El nombre completo de la va de acceso puede tener
una longitud mxima de 16 megabytes.
v No existe ningn lmite en la profundidad de la jerarqua de directorios ms que
los lmites de espacio del programa y del sistema.
v Los caracteres de los nombres se convierten al formato UCS2 Nivel 1 al
almacenarse los nombres (consulte el apartado Continuidad de nombres a
travs de distintos modelos de codificacin en el sistema de archivos integrado
en la pgina 13).

Enlaces en el sistema de archivos QOpenSys


Se permiten mltiples enlaces fijos con el mismo objeto en el sistema de archivos
QOpenSys. Los enlaces simblicos se soportan totalmente. Se puede utilizar un
enlace simblico para tener un enlace desde el sistema de archivos QOpenSys con
un objeto de otro sistema de archivos.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos y pantallas del sistema de archivos


integrado en el sistema de archivos QOpenSys
Todos los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 y las pantallas descritas en el apartado Realizacin de
operaciones en el sistema de archivos integrado desde el AS/400 en la pgina 15

50

OS/400 Introduccin al sistema de archivos integrado V4R5

pueden realizar operaciones en el sistema de archivos QOpenSys. Sin embargo,


puede que la ejecucin de estos mandatos en un proceso con posibilidad
multihebra no sea segura.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos QOpenSys
Todas las funciones del lenguaje C que se listan en el apartado API del sistema de
archivos integrado en la pgina 33 pueden realizar operaciones en el sistema de
archivos QOpenSys en modalidad de hebras.

Sistema de archivos de biblioteca (QSYS.LIB)


El sistema de archivos QSYS.LIB soporta la estructura de bibliotecas del AS/400.
Este sistema de archivos da acceso a los archivos de base de datos y a todos los
dems tipos de objeto del AS/400 que gestiona el soporte de bibliotecas.
Adems:
v Soporta todas las interfaces de usuario e interfaces de programacin que realizan
operaciones sobre las bibliotecas del AS/400 y sobre los objetos de dichas
bibliotecas.
v Soporta todos los lenguajes y recursos de programacin que operan sobre
archivos de base de datos.
v Ofrece un amplio soporte de administracin para gestionar los objetos del
AS/400.
v Soporta operaciones de E/S continuas en espacios de usuario.
Antes de la Versin 3 del OS/400, el sistema de archivos QSYS.LIB probablemente
se habra conocido como el sistema de archivos del AS/400. Los programadores
que utilizaban lenguajes tales como RPG o COBOL y recursos como las DDS para
desarrollar aplicaciones estaban utilizando el sistema de archivos QSYS.LIB. Los
operadores de sistemas que utilizaban mandatos, mens y pantallas para
manipular colas de salida estaban utilizando el sistema de archivos QSYS.LIB, al
igual que los administradores de sistemas que creaban y cambiaban perfiles de
usuario.
Todos estos recursos y las aplicaciones basadas en ellos funcionan igual que antes
de incorporar el sistema de archivos integrado. Sin embargo, dichos recursos no
pueden acceder a QSYS.LIB a travs de la interfaz del sistema de archivos
integrado.

Lista de autorizaciones QPWFSERVER en el sistema de


archivos QSYS.LIB
QPWFSERVER es una lista de autorizaciones (el tipo de objeto es *AUTL) que
proporciona requisitos de acceso adicionales a todos los objetos que se encuentran
en el sistema de archivos QSYS.LIB a los que se acceda mediante clientes remotos.
Las autorizaciones de la lista de autorizaciones se aplican a todos los objetos del
sistema de archivos QSYS.LIB.
La autorizacin por omisin de este objeto es la autorizacin PUBLIC *USE. El
administrador puede utilizar los mandatos EDTAUTL (Editar lista de
autorizaciones) o WRKAUTL (Trabajar con lista de autorizaciones) para modificar
el valor de esta autorizacin. El administrador puede asignar la autorizacin
PUBLIC *EXCLUDE a la lista de autorizaciones de tal forma que el pblico general
no pueda acceder a los objetos de QSYS.LIB desde clientes remotos.
Captulo 5. Sistemas de archivos: conceptos

51

Utilizacin de QSYS.LIB mediante la interfaz del sistema de


archivos integrado
Al sistema de archivos QSYS.LIB puede accederse mediante la interfaz del sistema
de archivos integrado utilizando los mandatos del servidor de archivos OS/400 o
sistema de archivos integrado, las pantallas de usuario y las API del lenguaje C. En
lo que respecta al uso de dichas interfaces del sistema de archivos integrado, debe
tener en cuenta las consideraciones y limitaciones siguientes.

Restricciones en el manejo de archivos en el sistema de


archivos QSYS.LIB
v No se da soporte a archivos lgicos.
v Los archivos fsicos soportados para el acceso en modalidad de texto son los
archivos fsicos descritos por programa que contienen un solo campo y los
archivos fsicos fuente que contienen un solo campo de texto. Los archivos
fsicos soportados para el acceso en modalidad binaria incluyen los archivos
fsicos descritos externamente adems de los archivos soportados para acceso en
modalidad de texto.
v No se da soporte al bloqueo de rango de bytes. (Si desea obtener ms
informacin acerca del bloqueo de rango de bytes, puede consultar la funcin
fcntl() en el captulo API del Sistema de Archivos Integrado de la publicacin
System API Programming .)
v Si algn trabajo tiene abierto un miembro de archivo de base de datos, slo un
trabajo tiene acceso de grabacin a ese miembro de archivo en todo momento.
Las dems peticiones disponen de acceso de slo lectura.

Soporte de espacios de usuario en el sistema de archivos


QSYS.LIB
QSYS.LIB soporta operaciones de E/S continua en objetos espacio de usuario. Por
ejemplo, un programa puede grabar datos continuos en un espacio de usuario y
leer datos de un espacio de usuario. El tamao mximo de un espacio de usuario
es 16 776 704 bytes.
Tenga en cuenta que los espacios de usuario no tienen CCSID (identificador de
juego de caracteres). Por consiguiente, el CCSID devuelto es el CCSID por omisin
del trabajo.

Maysculas y minsculas en el sistema de archivos QSYS.LIB


En general, el sistema de archivos QSYS.LIB no distingue las maysculas y
minsculas de los nombres de objetos. Una bsqueda de nombres de objetos
obtiene el mismo resultado independientemente de que los caracteres de los
nombres estn en maysculas o en minsculas.
Sin embargo, si un nombre est delimitado por comillas, se conservan las
maysculas y minsculas de los caracteres. Una bsqueda de nombres entre
comillas, por lo tanto, es sensible a las maysculas y minsculas de los caracteres
del nombre entre comillas.

Nombres de va de acceso en el sistema de archivos QSYS.LIB


v Cada componente del nombre de va de acceso debe contener el nombre del
objeto seguido de su tipo de objeto. Por ejemplo:
/QSYS.LIB/QGPL.LIB/PRT1.OUTQ
/QSYS.LIB/EMP.LIB/PAY.FILE/TAX.MBR

52

OS/400 Introduccin al sistema de archivos integrado V4R5

El nombre del objeto y el tipo del objeto se separan con un punto (.). Los objetos
de una biblioteca pueden tener el mismo nombre si tienen tipos de objeto
distintos, por lo que el tipo de objeto debe especificarse para identificar
exclusivamente al objeto.
v El nombre de objeto de cada componente puede tener una longitud mxima de
10 caracteres y el tipo de objeto, 6 caracteres.
v La jerarqua de directorios dentro de QSYS.LIB puede tener una extensin de
dos o tres niveles (dos o tres componentes en el nombre de va de acceso) en
funcin del tipo de objeto al que se accede. Si el objeto es un archivo de base de
datos, la jerarqua puede contener tres niveles (biblioteca, archivo, miembro); de
lo contrario, slo puede haber dos niveles (biblioteca, objeto). La combinacin de
la longitud de cada nombre de componente y el nmero de niveles de directorio
determina la longitud mxima del nombre de la va de acceso.
Si / y QSYS.LIB se incluyen como los dos primeros niveles, la jerarqua de
directorios de QSYS.LIB puede tener una extensin mxima de cinco niveles.
v Los caracteres de los nombres se convierten a la pgina de cdigos 37 al
almacenarse los nombres. Los nombres entre comillas, en cambio, se almacenan
utilizando la pgina de cdigos del trabajo.
Para obtener informacin acerca de las pginas de cdigos, consulte la
publicacinNational Language Support .

Enlaces en el sistema de archivos QSYS.LIB


Los enlaces simblicos no se pueden crear ni almacenar en el sistema de archivos
QSYS.LIB.
La relacin entre una biblioteca y los objetos de una biblioteca es equivalente a un
enlace fijo entre la biblioteca y cada objeto de la misma. El sistema de archivos
integrado maneja la relacin biblioteca-objeto como un enlace. As pues, es posible
tener un enlace desde un sistema de archivos con soporte para enlaces simblicos
con un objeto del sistema de archivos QSYS.LIB.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos y pantallas del sistema de archivos


integrado en el sistema de archivos QSYS.LIB
Los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 pueden realizar operaciones en el sistema de archivos
QSYS.LIB, con las excepciones siguientes:
v El mandato ADDLNK slo se puede utilizar para enlazar con un objeto de
QSYS.LIB.
v Los mandatos CHKIN y CHKOUT no estn soportados.
v Las operaciones de archivos slo se pueden efectuar con archivos fsicos
descritos por programa y con archivos fsicos fuente.
Las mismas restricciones son aplicables a las pantallas de usuario descritas en el
apartado Realizacin de operaciones en el sistema de archivos integrado desde el
AS/400 en la pgina 15.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos QSYS.LIB
Las funciones del lenguaje C listadas en el apartado API del sistema de archivos
integrado en la pgina 33 pueden realizar operaciones en el sistema de archivos
QSYS.LIB, a excepcin de las siguientes:

Captulo 5. Sistemas de archivos: conceptos

53

v Las operaciones de archivos slo se pueden efectuar con archivos fsicos


descritos por programa y con archivos fsicos fuente.
v La funcin symlink() slo se puede utilizar para enlazar con un objeto de
QSYS.LIB desde otro sistema de archivos que soporte enlaces simblicos.
v Las funciones siguientes no estn soportadas:
givedescriptor()
link()
takedescriptor()
utime()

Sistema de archivos de servicios de biblioteca de documentos (QDLS)


El sistema de archivos QDLS soporta la estructura de carpetas. Proporciona acceso
a documentos y carpetas.
Adems:
v Soporta carpetas y objetos de biblioteca de documentos (DLO) del AS/400.
v Soporta datos almacenados en archivos continuos.

Sistema de archivos integrado y HFS en el sistema de


archivos QDLS
Las operaciones se pueden efectuar sobre los objetos del sistema de archivos QDLS
no slo a travs de interfaces de oficina, sino tambin a travs de la interfaz del
sistema de archivos integrado o las API que proporciona un sistema de archivos
jerrquico denominado HFS. Mientras que el sistema de archivos integrado se basa
en el modelo de programa del entorno de lenguajes integrados (ILE), HFS se basa
en el modelo de programa del AS/400 original.
Las API del HFS permiten realizar operaciones adicionales que no estn soportadas
en el sistema de archivos integrado. En particular, las API del HFS se pueden
utilizar para acceder y cambiar los atributos ampliados de directorio (tambin
denominados atributos de entrada de directorio). Tenga en cuenta que las reglas de
denominacin para utilizar las API del HFS son distintas de las reglas de
denominacin para las API que utilizan la interfaz del sistema de archivos
integrado.
Para obtener ms informacin acerca de HFS, consulte la publicacin Office Services
Concepts and Programmers Guide, SH21-0703-00 y el captulo API del sistema
jerrquico de archivos de la publicacin System API Programming .

Utilizacin de QDLS mediante la interfaz del sistema de


archivos integrado
Al sistema de archivos QDLS puede accederse mediante la interfaz del sistema de
archivos integrado utilizando los mandatos del servidor de archivos OS/400 o
sistema de archivos integrado, las pantallas de usuario y las API del lenguaje C. En
lo que respecta al uso de dichas interfaces del sistema de archivos integrado, debe
tener en cuenta las consideraciones y limitaciones siguientes.

Incorporacin de usuarios en el sistema de archivos QDLS


Es necesario haberse incorporado en el directorio de distribucin del sistema para
trabajar con objetos de QDLS.

54

OS/400 Introduccin al sistema de archivos integrado V4R5

Maysculas y minsculas en el sistema de archivos QDLS


QDLS convierte los caracteres alfabticos ingleses de la a a la z que estn en
minsculas a maysculas cuando se utilizan en nombres de objetos. Por lo tanto, la
bsqueda de nombres de objetos utilizando slo esos caracteres no es sensible a las
maysculas y minsculas.
En todos los dems casos, la bsqueda es sensible a las maysculas y minsculas
en QDLS.
Si desea obtener ms detalles, puede consultar la descripcin Rules for Specifying
Folder and Document Names de la publicacin CL Reference .

Nombres de va de acceso en el sistema de archivos QDLS


v Cada componente del nombre de la va de acceso puede componerse de un solo
nombre, como el ejemplo siguiente:
/QDLS/FLR1/DOC1

o de un nombre ms una extensin (semejante a la extensin de los archivos del


DOS), como por ejemplo:
/QDLS/FLR1/DOC1.TXT

v El nombre de cada componente puede tener una longitud mxima de 8


caracteres, y la extensin (si la hay) puede tener una longitud mxima de 3
caracteres. La longitud mxima del nombre de la va de acceso es de 82
caracteres, asumiendo un nombre de va de acceso absoluto que empieza con
/QDLS.
v La jerarqua de directorios dentro de QDLS puede tener una extensin de 32
niveles. Si se incluyen / y QDLS como los dos primeros niveles, la jerarqua de
directorios puede tener una profundidad de 34 niveles.
v Los caracteres de los nombres se convierten a la pgina de cdigos del trabajo al
almacenarse los nombres, a menos que se haya creado el rea de datos
Q0DEC500 en la biblioteca QUSRSYS. Si existe esta rea de datos, los caracteres
de los nombres se convierten a la pgina de cdigos 500 al almacenarse los
nombres. Esta funcin aporta compatibilidad con el comportamiento del sistema
de archivos QDLS en releases anteriores. Puede rechazarse un nombre si no
puede convertirse a la pgina de cdigos apropiada.
Para obtener informacin acerca de las pginas de cdigos, consulte la
publicacinNational Language Support .

Enlaces en el sistema de archivos QDLS


Los enlaces simblicos no se pueden crear ni almacenar en el sistema de archivos
QDLS.
El sistema de archivos integrado maneja la relacin entre una carpeta y los objetos
de biblioteca de documentos situados en una carpeta como equivalente a un enlace
entre la carpeta y cada objeto de la carpeta. As pues, es posible enlazar con un
objeto del sistema de archivos QDLS desde un sistema de archivos con soporte
para enlaces simblicos.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Captulo 5. Sistemas de archivos: conceptos

55

Utilizacin de los mandatos y pantallas del sistema de archivos


integrado en el sistema de archivos QDLS
Los mandatos listados en Mandatos del sistema de archivos integrado en la
pgina 16 pueden realizar operaciones en el sistema de archivos QDLS, a excepcin
de:
v El mandato ADDLNK slo puede utilizarse para enlazar con un objeto de QDLS
desde otro sistema de archivos que soporte enlaces simblicos.
v Los mandatos CHKIN y CHKOUT estn soportados en los archivos, pero no en
los directorios.
Las mismas restricciones son aplicables a las pantallas de usuario descritas en el
apartado Realizacin de operaciones en el sistema de archivos integrado desde el
AS/400 en la pgina 15.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos QDLS
Las funciones del lenguaje C listadas en el apartado API del sistema de archivos
integrado en la pgina 33 pueden realizar operaciones en el sistema de archivos
QDLS, a excepcin de las siguientes:
v La funcin symlink() puede utilizarse solamente para enlazar con un objeto de
QDLS desde otro sistema de archivos que soporte enlaces simblicos.
v Las funciones siguientes no estn soportadas:
givedescriptor()
ioctl()
link()
Qp0lGetPathFromFileID()
readlink()
takedescriptor()
|

Sistema de archivos ptico (QOPT)


El sistema de archivos QOPT da acceso a los datos continuos almacenados en
soportes pticos.
Adems:
v Proporciona una estructura jerrquica de directorios semejante a los sistemas
operativos de PC como el DOS y el OS/2.
v Est optimizado para la entrada/salida de archivos continuos.
v Soporta datos almacenados en archivos continuos.

Sistema de archivos integrado y HFS en el sistema de


archivos QOPT
Las operaciones se pueden efectuar sobre los objetos del sistema de archivos QOPT
mediante la interfaz del sistema de archivos integrado o las API proporcionadas
por el sistema de archivos jerarquizado denominado HFS. Mientras que el sistema
de archivos integrado se basa en el modelo de programa del entorno de lenguajes
integrados (ILE), HFS se basa en el modelo de programa del AS/400 original.
Las API del HFS permiten realizar operaciones adicionales que no estn soportadas
en el sistema de archivos integrado. En concreto, puede utilizar las API del HFS
para acceder y cambiar atributos ampliados de directorio (tambin denominados
atributos de entrada de directorio) o para trabajar con archivos pticos retenidos.

56

OS/400 Introduccin al sistema de archivos integrado V4R5

Tenga en cuenta que las reglas de denominacin para utilizar las API del HFS son
distintas de las reglas de denominacin para las API que utilizan la interfaz del
sistema de archivos integrado.
Puede encontrar detalles acerca de las API de HFS en la publicacin System API
Reference o en la publicacin Optical Support, SC41-5310-02 .

Utilizacin de QOPT mediante la interfaz del sistema de


archivos integrado
Al sistema de archivos QOPT se puede acceder a travs de la interfaz del sistema
de archivos integrado utilizando el servidor de archivos OS/400 o los mandatos
del sistema de archivos integrado, las pantallas de usuario y las API. En lo que
respecta al uso de dichas interfaces del sistema de archivos integrado, debe tener
en cuenta las consideraciones y limitaciones siguientes.

Maysculas y minsculas en el sistema de archivos QOPT


QOPT convierte los caracteres alfabticos ingleses de la a a la z a maysculas
cuando se utilizan en nombres de objetos. Por lo tanto, la bsqueda de nombres de
objetos utilizando slo esos caracteres no es sensible a las maysculas y
minsculas.
Para obtener ms detalles, consulte la publicacin Optical Support .

Nombres de va de acceso en el sistema de archivos QOPT


v El nombre de va de acceso debe empezar por una barra inclinada (/) y puede
contener 294 caracteres como mximo. La va de acceso consta del nombre de
sistema de archivos, el nombre de volumen, los nombres de directorio y
subdirectorio y el nombre de archivo. Por ejemplo:
/QOPT/NOMBREVOLUMEN/NOMBREDIRECTORIO/NOMBRESUBDIRECTORIO/NOMBREARCHIVO

v El nombre de sistema de archivos, QOPT, es obligatorio.


v El nombre de volumen es obligatorio y puede tener 32 caracteres de longitud
como mximo.
v Pueden incluirse uno o ms directorios o subdirectorios en el nombre de va de
acceso, pero QOPT no requiere ninguno. El nmero total de caracteres de todos
los nombres de directorio y subdirectorio, incluida la barra inclinada inicial, no
puede ser superior a 256 caracteres. Los nombres de directorios y archivos
permiten cualquier carcter excepto los que van del X'00' a X'3F', X'FF',
caracteres alfabticos en minscula y los siguientes caracteres:
Asterisco (*)
Guin (-)
Interrogante (?)
Comillas (")
Mayor que (>)
Menor que (<)
v El nombre de archivo es el ltimo elemento del nombre de va de acceso. La
longitud del nombre de archivo est limitada por la longitud del nombre de
directorio en la va de acceso. Los nombres de directorios y nombre de archivos
combinados no pueden superar 256 caracteres, incluyendo la barra inclinada
inicial.
v El sistema de archivos QOPT graba los nombres de va de acceso en los soportes
de almacenamiento ptico en la pgina de cdigos especificada al inicializar el
volumen. Si se inicializa un volumen como EBCDIC, la pgina de cdigos ser
Captulo 5. Sistemas de archivos: conceptos

57

500. Si se inicializa un volumen como ASCII, la pgina de cdigos ser 850. El


nombre de va de acceso no se rechazar si no se puede convertir a la pgina de
cdigos del volumen.
El sistema de archivos QOPT siempre utiliza para un nombre de archivo dado la
pgina de cdigos de un volumen si se crea dicho archivo sin ninguna pgina
de cdigos. El soporte de almacenamiento CD-ROM no asocia ninguna pgina
de cdigos con los archivos. QOPT utiliza por tanto la pgina de cdigos 850
como valor por omisin para todas las pginas de cdigos de CD-ROM.
Para obtener informacin acerca de las pginas de cdigos, consulte la
publicacinNational Language Support .
Para obtener ms detalles acerca de las normas de nombres de va de acceso del
sistema de archivos QOPT, consulte el apartado dedicado a este particular en la
publicacin Optical Support .

Enlaces en el sistema de archivos QOPT


El sistema de archivos QOPT slo soporta un enlace con un objeto. Los enlaces
simblicos no se pueden crear ni almacenar en QOPT. Sin embargo, se puede
acceder a los archivos de QOPT utilizando un enlace simblico desde el sistema de
archivos raz (/) o QOpenSys.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos y pantallas del sistema de archivos


integrado en el sistema de archivos QOPT
Los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 pueden realizar operaciones sobre el sistema de archivos
QOPT, con las siguientes excepciones:
v CHGAUT
OBJ debe ser un volumen ptico.
USER no puede especificarse.
DTAAUT debe tener el valor *SAME.
OBJAUT debe tener el valor *SAME.
El siguiente ejemplo muestra una utilizacin vlida del mandato CHGAUT en el
sistema de archivos QOPT:
CHGAUT OBJ(nombre de volumen ptico) AUTL(lista autorizaciones)

v CPY
OBJ debe ser un archivo. No puede ser un volumen ni un directorio.
v CRTDIR
DTAAUT debe tener el valor *INDIR.
OBJAUT debe tener el valor *INDIR.
CRTOBJAUD debe tener el valor *SYSVAL.
v MOV
OBJ debe ser un archivo. No puede ser un volumen ni un directorio.
v RMVDIR
RMVLNK debe tener el valor *NO
v RNM
OBJ debe ser un archivo o un volumen. No puede ser un directorio.
v Los siguientes mandatos del sistema de archivos integrado no estn soportados
en el sistema de archivos QOPT:

58

OS/400 Introduccin al sistema de archivos integrado V4R5

ADDLNK
CHGAUD
CHGOWN
CHGPGP
CHKIN
CHKOUT
RST
SAV
WRKOBJOWN
WRKOBJPGP
Las mismas restricciones son aplicables a las pantallas de usuario descritas en el
apartado Realizacin de operaciones en el sistema de archivos integrado desde el
AS/400 en la pgina 15.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos QOPT
Las funciones del lenguaje C listadas en el apartado API del sistema de archivos
integrado en la pgina 33 pueden realizar operaciones sobre el sistema de archivos
QOPT, con las siguientes excepciones:
v Qp0lRenameKeep
El nombre de va de acceso debe ser un archivo o un volumen. No puede ser
un directorio.
v Qp0lRenameUnlink
El nombre de va de acceso debe ser un archivo o un volumen. No puede ser
un directorio. El destino no debe existir.
v rename
El nombre de va de acceso debe ser un archivo o un volumen. No puede ser
un directorio.
v Las siguientes API de sistema de archivos integrado no estn soportadas en el
sistema de archivos QOPT:
chmod()
chown()
fchmod()
fchown()
givedescriptor()
ioctl()
link()
readlink()
symlink()
takedescriptor()
utime()

Sistema de archivos del servidor de archivos OS/400 (QFileSvr.400)


El sistema de archivos del servidor de archivos OS/400 proporciona acceso
transparente a otros sistemas de archivos que residan en sistemas AS/400 remotos.
Se accede a l mediante una estructura jerrquica de directorios.

Captulo 5. Sistemas de archivos: conceptos

59

El sistema de archivos QFileSvr.400 debe considerarse como un cliente que acta


en nombre de los usuarios para ejecutar peticiones de archivo. QFileSvr.400
interacta con el servidor de archivos OS/400 del sistema destino para efectuar la
operacin de archivo real.

Utilizacin de QFileSvr.400 mediante la interfaz del sistema de


archivos integrado
Al sistema de archivos QFileSvr.400 se puede acceder a travs de la interfaz del
sistema de archivos integrado utilizando el servidor de archivos OS/400 o los
mandatos del sistema de archivos integrado, las pantallas de usuario y las API. En
lo que respecta al uso de dichas interfaces del sistema de archivos integrado, debe
tener en cuenta las consideraciones y limitaciones siguientes.
Nota: Las caractersticas del sistema de archivos QFileSvr.400 se determinan a
partir de las caractersticas del sistema de archivos al que se accede en el
sistema destino.

Maysculas y minsculas en el sistema de archivos del servidor


de archivos OS/400
Para un directorio de primer nivel, que en realidad representa el directorio raz
(/) del sistema destino, el sistema de archivos QFileSvr.400 conserva el mismo
formato de maysculas y minsculas en el que se han entrado los nombres de
objeto. Sin embargo, no se efecta ninguna distincin entre maysculas y
minsculas cuando QFileSvr.400 busca nombres.
Para todos los dems directorios, el hecho de distinguir maysculas y minsculas
depende del sistema de archivos especfico al que se acceda. QFileSvr.400 conserva
el mismo formato de maysculas y minsculas en el que se entran los nombres de
objeto cuando las peticiones de archivo se envan al servidor de archivos OS/400.

Nombres de va de acceso en el sistema de archivos del


servidor de archivos OS/400
v Los nombres de vas de acceso tienen el formato siguiente:
/QFileSvr.400/NombreUbicacinRemota/Directorio/Directorio . . . /Objeto

El directorio de primer nivel (es decir, NombreUbicacinRemota en el ejemplo


anterior) representa lo siguiente:
El nombre del sistema destino que se utilizar para establecer una conexin
de comunicaciones. El nombre de sistema destino puede ser uno de los
siguientes:
- Un nombre de sistema principal TCP/IP (por ejemplo,
beowulf.newyork.corp.com)
- Un nombre de LU 6.2 SNA (por ejemplo, appn.newyork).
El directorio raz (/) del sistema destino
Por consiguiente, cuando se crea un directorio de primer nivel utilizando una
interfaz de sistema de archivos integrado, los atributos especificados se pasan
por alto.
Nota: Los directorios de primer nivel no perduran tras una IPL. Es decir, los
directorios de primer nivel deben crearse de nuevo despus de cada IPL.
v Cada componente del nombre de va de acceso puede tener una longitud
mxima de 255 caracteres. El nombre completo de la va de acceso puede tener
una longitud mxima de 16 megabytes.

60

OS/400 Introduccin al sistema de archivos integrado V4R5

Nota: El sistema de archivos en el que reside el objeto puede restringir la


longitud de componente y la longitud del nombre de va de acceso a
menos que el mximo permitido por QFileSvr.400.
v No existe lmite para la extensin de la jerarqua de directorios, a excepcin de
los lmites del programa y del sistema, as como los lmites impuestos por el
sistema de archivos al que se accede.
v Los caracteres de los nombres se convierten al formato UCS2 Nivel 1 al
almacenarse los nombres (consulte el apartado Continuidad de nombres a
travs de distintos modelos de codificacin en el sistema de archivos integrado
en la pgina 13).

Comunicaciones en el sistema de archivos del servidor de


archivos OS/400
v Las conexiones TCP con el servidor de archivos de un sistema destino pueden
establecerse slo si el subsistema QSERVER del sistema destino est activo.
v Las conexiones LU 6.2 SNA slo se intentan si hay una sesin controlada
localmente que no est en uso (por ejemplo, una sesin establecida
especficamente para que la utilice la conexin LU 6.2). Al establecer conexiones
LU 6.2, el sistema de archivos QFileSvr.400 utiliza la modalidad BLANK. En el
sistema destino, el trabajo QPWFSERV se somete en el subsistema QSERVER. El
perfil de usuario de este trabajo se define mediante la entrada de
comunicaciones para la modalidad BLANK. Para obtener ms informacin
acerca de las comunicaciones LU 6.2, consulte la publicacin APPC Programming,
SC41-5443-00 .
v Las peticiones de servidor de archivos que utilizan TCP como protocolo de
comunicaciones se ejecutan dentro del contexto del trabajo que emite la peticin.
Las peticiones de servidor de archivos que utilizan SNA como protocolo de
comunicaciones se ejecutan en el trabajo del sistema OS/400 Q400FILSVR.
v Si una conexin todava no est establecida con el sistema destino, el sistema de
archivos QFileSvr.400 asume que el directorio de primer nivel representa un
nombre de sistema principal TCP/IP. El sistema de archivos QFileSvr.400 sigue
los siguientes pasos para establecer una conexin con el sistema destino:
1. Resolver el nombre de ubicacin remota en una direccin IP.
2. Conectar con el correlacionador de servidores del servidor de sistema
principal en el puerto conocido pblicamente 449 utilizando la direccin IP
resuelta. A continuacin, enviar una consulta al correlacionador de servidores
para el nombre de servicio as-file. Como resultado de la consulta se
produce una de las siguientes situaciones:
Si as-file est en la tabla de servicio del sistema destino, el
correlacionador de servidores devuelve el puerto en el que el daemon del
servidor de archivos OS/400 estn en escucha.
Si el correlacionador de servidores no est activo en el sistema destino, se
utiliza el nmero de puerto por omisin para as-file (8473).
A continuacin, el sistema de archivos QFileSvr.400 intenta establecer una
conexin TCP con el daemon del servidor de archivos OS/400 en el sistema
destino. Cuando se establece la conexin, QFileSvr.400 intercambia peticiones
y responde con el servidor de archivos. Dentro del subsistema QSERVER, las
peticiones de prearranque QPWFSERVSO toman el control de la conexin.
Cada trabajo de prearranque se ejecuta en su propio perfil de usuario.
3. Si el nombre de ubicacin remota no se resuelve en una direccin IP, se
presupone que el directorio de primer nivel es un nombre de LU 6.2 SNA.
Por consiguiente, se intenta establecer una conexin APPC con el servidor de
archivos OS/400
Captulo 5. Sistemas de archivos: conceptos

61

v El sistema de archivos QFileSvr.400 efecta una comprobacin peridicamente


(cada 2 horas) para determinar si hay conexiones que no se utilicen (por
ejemplo, ningn archivo abierto asociado con la conexin) y que dichas
conexiones no han tenido actividad durante un perodo de 2 horas. Si se
encuentra una conexin que cumpla estas caractersticas, la conexin se finaliza.
v El sistema de archivos QFileSvr.400 no puede detectar bucles. El siguiente
nombre de va de acceso es un ejemplo de un bucle:
/QFileSvr.400/Remoto2/QFileSvr.400/Remoto1/QFileSvr.400/Remoto2/...

donde Remoto1 es el sistema local. Cuando se especifica un nombre de va de


acceso que contiene un bucle, el sistema de archivos QFileSvr.400 devuelve un
error tras un breve periodo de tiempo. El error indica que se ha producido un
tiempo de espera excedido.
El sistema de archivos QFileSvr.400 utilizar una sesin libre existente al
comunicarse a travs de SNA. Es necesario arrancar el mdulo y establecer una
sesin para QFileSvr.400 para conectarse satisfactoriamente al sistema de
comunicaciones remoto.

Seguridad y autorizaciones sobre objetos en el sistema de


archivos del servidor de archivos OS/400
v Para acceder a un sistema de archivos que reside en un sistema AS/400 destino,
el usuario debe tener un ID de usuario y una contrasea en el sistema destino
que coincida con el ID de usuario y la contrasea del sistema local.
Nota: Si se cambia la contrasea en el sistema local o destino despus de que se
haya verificado el acceso al sistema destino, el cambio no se reflejar
hasta que finalice la conexin con el sistema destino. Sin embargo, no hay
retardo si se suprime el perfil de usuario del sistema local y se crea otro
perfil de usuario con el mismo ID de usuario. En este caso, el sistema de
archivos QFileSvr.400 verifica que se tenga acceso al sistema destino.
v La autorizacin sobre objetos se basa en el perfil de usuario que reside en el
sistema destino. Es decir, slo puede accederse a un objeto del sistema de
archivos en el sistema destino si el perfil de usuario del sistema destino tiene la
autorizacin adecuada sobre el objeto.

Enlaces en el sistema de archivos del servidor de archivos


OS/400
El sistema de archivos QFileSvr.400 soporta slo un enlace con un objeto. Los
enlaces simblicos no se pueden crear ni almacenar en QFileSvr.400. No obstante,
puede accederse a los archivos de QFileSvr.400 utilizando un enlace simblico
desde los sistemas de archivos raz (/), QOpenSys o definidos por usuario.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos y pantallas del sistema de archivos


integrado en el sistema de archivos del servidor de archivos
OS/400
Los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 pueden realizar operaciones en el sistema de archivos
QFileSvr.400, con las siguientes excepciones:
ADDLNK
CHGAUT
CHGOWN

62

OS/400 Introduccin al sistema de archivos integrado V4R5

DSPAUT
RST
SAV
WRKOBJOWN
WRKOBJPGP
Las mismas restricciones son aplicables a las pantallas de usuario descritas en el
apartado Realizacin de operaciones en el sistema de archivos integrado desde el
AS/400 en la pgina 15.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos del servidor de archivos OS/400
Las funciones del lenguaje C listadas en el apartado API del sistema de archivos
integrado en la pgina 33 pueden realizar operaciones en el sistema de archivos
QFileSvr.400, con las siguientes excepciones:
chown()
fchown()
givedescriptor()
link()
Qp0lGetPathFromFileID()
symlink()
takedescriptor()

Sistema de archivos definido por el usuario (UDFS)


Los sistemas de archivos UDFS residen en la agrupacin de almacenamiento
auxiliar (ASP) que se elija. Estos sistemas de archivos los crea y los gestiona el
usuario.
Adems:
v Proporcionan una estructura jerrquica de directorios semejante a la de los
sistemas operativos de PC como, por ejemplo, DOS y OS/2.
v Estn optimizados para la entrada/salida de archivos continuos.
v Soportan mltiples enlaces fijos y enlaces simblicos.
v Soportan sockets locales.
v Soportan las API que operan de un modo seguro en ejecucin multihebra.
Pueden crearse varios UDFS dndole a cada uno un nombre exclusivo. Durante su
creacin, pueden especificarse diversos atributos del UDFS, entre otros:
v Un nmero de agrupacin de almacenamientos auxiliares (ASP) en el que se
almacenan los objetos situados en el UDFS.
v Las caractersticas de sensibilidad a maysculas y minsculas de los nombres de
objeto situados en el UDFS.
La sensibilidad a maysculas y minsculas de un UDFS determina si los
caracteres en maysculas y en minsculas coincidirn al realizar bsquedas de
nombres de objeto dentro del UDFS.

Conceptos del sistema de archivos integrado UDFS


En un UDFS, al igual que ocurre en los sistemas de archivos raz (/) y
QOpenSys, pueden crearse directorios, archivos continuos, enlaces simblicos,
sockets locales y objetos SOM.
Captulo 5. Sistemas de archivos: conceptos

63

Un objeto archivo especial de bloqueo (*BLKSF) representa un UDFS. A medida


que se van creando UDFS, tambin se van creando automticamente archivos
especiales de bloqueo. Slo puede accederse al archivo especial de bloqueo
mediante los mandatos genricos del sistema de archivos integrado, las API y la
interfaz QFileSvr.400.
Un UDFS existe nicamente en dos estados: montado y desmontado. Cuando se
monta un UDFS, puede accederse a los objetos que ste contiene. Cuando se
desmonta un UDFS, los objetos que ste contiene dejan de ser accesibles.
Para poder acceder a los objetos de un UDFS, debe montarse este ltimo en un
directorio (por ejemplo, /home/JUAN). Cuando monte un UDFS en un directorio, el
contenido original de dicho directorio, incluyendo los objetos y los subdirectorios,
quedan inaccesibles. El contenido del UDFS se vuelve accesible a travs de la va
de acceso del directorio en el que se monta el UDFS. Por ejemplo, el directorio
/home/JUAN contiene un archivo /home/JUAN/sueldo. Un UDFS contiene tres
directorios correo, acciones y salida. Despus de montar el UDFS en /home/JUAN,
el archivo /home/JUAN/sueldo es inaccesible y tres directorios de UDFS pasan a
estar accesibles como /home/JUAN/correo, /home/JUAN/acciones, y
/home/JUAN/salida. Despus de desmontar el UDFS, se puede acceder de nuevo al
archivo /home/JUAN/sueldo y no a los tres directorios del UDFS.
Para obtener ms informacin acerca del montaje de sistemas de archivos, consulte
la publicacin OS/400 Network File System Support, SC41-5714-01 .

Utilizacin de UDFS mediante la interfaz del sistema de


archivos integrado
Maysculas y minsculas en un sistema de archivos integrado
UDFS
Se puede especificar si los nombres de objeto del UDFS sern sensibles a las
maysculas y minsculas o no.
Si selecciona que lo sean, al buscar nombres de objetos se distinguir entre
caracteres en maysculas y caracteres en minsculas. Por ejemplo, si se facilita un
nombre todo en maysculas, no coincidir con el mismo nombre con alguno de los
caracteres en minsculas. Por lo tanto, /home/MURPH/ y /home/murph/ se reconocen
como directorios distintos. Para crear un UDFS sensible a las maysculas y
minsculas, puede especificar *MIXED para el parmetro CASE al utilizar el
mandato CRTUDFS.
Si selecciona que el UDFS no sea sensible a maysculas y minsculas, el sistema
no distinguir entre ellas al realizar bsquedas de nombres. Por lo tanto,
reconocer /home/MAYTE e /HOME/mayte como el mismo directorio, no como dos
directorios distintos. Para crear un UDFS no sensible a las maysculas y
minsculas, puede especificar *MONO para el parmetro CASE al utilizar el
mandato CRTUDFS.
En cualquier caso, el sistema de archivos guarda el formato de maysculas y
minsculas con el que el usuario ha entrado los nombres de objeto. La opcin de
sensibilidad a maysculas y minsculas slo se aplica al modo en que el usuario
busca los nombres en el sistema.

64

OS/400 Introduccin al sistema de archivos integrado V4R5

Nombres de va de acceso en un sistema de archivos integrado


UDFS
Un objeto archivo especial de bloqueo (*BLKSF) representa un UDFS cuando la
totalidad del UDFS y todos los objetos que contiene han de manipularse. Los
nombres de archivo especial de bloqueo deben tener el formato
/dev/QASPXX/nombre_udfs.udfs

donde XX es el nmero de la ASP donde se almacena el UDFS y nombre_udfs es el


nombre exclusivo del UDFS dentro de dicha ASP. Observe que el nombre del
UDFS debe terminar con la extensin .udfs.
Los nombres de vas de acceso para objetos en un UDFS son relativos al directorio
sobre el que se monta un UDFS. Por ejemplo, si se monta el UDFS
/dev/qasp01/wysocki.udfs en /home/daniel, los nombres de va de acceso de todos
los objetos del UDFS empezarn por /home/daniel.

Enlaces en un sistema de archivos integrado UDFS


Los objetos de un UDFS permiten mltiples enlaces fijos con el mismo objeto y
soportan plenamente los enlaces simblicos. Un enlace simblico puede crear un
enlace de un UDFS a un objeto de otro sistema de archivos.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos del sistema de archivos integrado en


un UDFS
Todos los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 y las pantallas descritas en el apartado Realizacin de
operaciones en el sistema de archivos integrado desde el AS/400 en la pgina 15
pueden realizar operaciones en un sistema de archivos definido por el usuario.
Existen otros mandatos CL que son especficos para el sistema de archivos definido
por el usuario y otros sistemas de archivos montados en general. Estn descritos en
la tabla siguiente.
Tabla 6. Mandatos CL del sistema de archivos definido por el usuario
Mandato

Descripcin

ADDMFS

Aadir sistema de archivos montado. Coloca los sistemas


de archivos de servidor remoto exportados en directorios
de cliente locales.

CRTUDFS

Crear UDFS. Crea un sistema de archivos definido por el


usuario.

DLTUDFS

Suprimir UDFS. Suprime un sistema de archivos definido


por el usuario.

DSPMFSINF

Visualizar informacin de sistema de archivos montado.


Visualiza informacin acerca de un sistema de archivos
montado.

DSPUDFS

Visualizar UDFS. Visualiza informacin acerca de un


sistema de archivos definido por el usuario.

MOUNT

Montar sistema de archivos. Coloca los sistemas de


archivos de servidor remoto exportados en directorios de
cliente locales. Es un alias del mandato ADDMFS.

RMVMFS

Eliminar sistema de archivos montado. Elimina los sistemas


de archivos de servidor remoto exportados del espacio de
nombres del cliente local.

Captulo 5. Sistemas de archivos: conceptos

65

Tabla 6. Mandatos CL del sistema de archivos definido por el usuario (continuacin)


Mandato

Descripcin

UNMOUNT

Desmontar sistema de archivos. Elimina los sistemas de


archivos de servidor remoto exportados del espacio de
nombres del cliente local. Es un alias del mandato
RMVMFS.

Nota: Para que los mandatos del sistema de archivos integrado puedan realizar
operaciones sobre los objetos almacenados en un UDFS, primero debe
montar ste.

Utilizacin de las API del sistema de archivos integrado en un


UDFS
Todas las funciones del lenguaje C que se listan en el apartado API del sistema de
archivos integrado en la pgina 33 pueden realizar operaciones en un sistema de
archivos definido por el usuario.
Nota: Para que los mandatos del sistema de archivos integrado puedan realizar
operaciones sobre los objetos almacenados en un UDFS, primero debe
montar ste.

Interfaz grfica de usuario (GUI) del sistema de archivos


integrado UDFS
Una interfaz grfica de usuario proporciona un acceso fcil y cmodo a los UDFS.
Dicha interfaz permite crear, suprimir, visualizar, montar y desmontar un UDFS
desde un cliente Windows 95/98/NT.

Crear un sistema de archivos integrado UDFS


El mandato Crear Sistema de Archivos Definido por el Usuario (CRTUDFS) crea un
sistema de archivos que puede verse por medio de los mandatos CL, las API y el
espacio de nombres del sistema de archivos integrado. Los mandatos ADDMFS o
MOUNT colocan el UDFS encima del directorio local ya existente. Puede crearse
un UDFS en la ASP que se prefiera. Tambin puede especificarse la sensibilidad a
maysculas y minsculas.

Suprimir un sistema de archivos integrado UDFS


El mandato Suprimir sistema de archivos definido por usuario (DLTUDFS)
suprime un UDFS no montado existente y todos los objetos incluidos. El mandato
no funcionar si el UDFS est montado. La supresin de un UDFS provocar la
supresin de todos los objetos del mismo. Si no tiene la autorizacin adecuada
para suprimir todos los objetos de un UDFS, no se suprime ningn objeto.

Visualizar un sistema de archivos integrado UDFS


Al mandato Visualizar Sistema de Archivos Definido por el Usuario (DSPUDFS)
presenta los atributos de un UDFS existente, tanto si est montado como si no. El
mandato Visualizar informacin de sistema de archivos montado (DSPMFSINF)
presentar informacin acerca de un UDFS montado y acerca de cualquier sistema
de archivos montado.

Montar un sistema de archivos integrado UDFS


El mandato Aadir sistema de archivos montado (ADDMFS) y los mandatos
MOUNT hacen que los objetos de un sistema de archivos estn accesibles al
espacio de nombres del sistema de archivos integrado. Para montar un UDFS, es
necesario especificar *UDFS para el parmetro TYPE del mandato ADDMFS.

66

OS/400 Introduccin al sistema de archivos integrado V4R5

Desmontar un sistema de archivos integrado UDFS


El mandato UNMOUNT hace que el contenido de un UDFS resulte inaccesible
para las interfaces del sistema de archivos integrado. Una vez desmontado un
UDFS, no se podr acceder a los objetos del mismo de forma individual. Los
mandatos Eliminar Sistema de Archivos Montado (RMVMFS) o UNMOUNT harn
que un sistema de archivos montado resulte inaccesible al espacio de nombres del
sistema de archivos integrado. Si se est utilizando alguno de los objetos del
sistema de archivos (por ejemplo, hay un archivo abierto) en el momento de la
utilizacin del mandato, se devolver un mensaje de error. El UDFS no se
desmontar. Si se monta algo encima de una parte del UDFS, ste no podr
desmontarse hasta que quede descubierto.
Por ejemplo, se monta el UDFS /dev/qasp02/jenn.udfs sobre /home/judy en el
espacio de nombres del sistema de archivos integrado. Si, a continuacin, se monta
otro sistema de archivos, /pubs encima de /home/judy, el contenido de jenn.udfs
dejar de ser accesible. Adems, no podr desmontar jenn.udfs hasta que
desmonte el segundo sistema de archivos desde /home/judy.

Salvar y restaurar un sistema de archivos integrado UDFS


Se tiene la posibilidad de salvar y restaurar todos los objetos del UDFS, as como
las autorizaciones asociadas al mismo. El mandato Salvar (SAV) permite salvar
objetos de un UDFS, mientras que el mandato Restaurar (RST) permite restaurar
objetos en un UDFS. Ambos mandatos funcionarn tanto si el UDFS est montado
como si no lo est.

Sistema de archivos de red (NFS)


El sistema de archivos NFS proporciona al usuario acceso a los datos y objetos
almacenados en un servidor NFS remoto. Un servidor NFS puede exportar un
sistema de archivos de red que los clientes NFS montarn a continuacin
dinmicamente.
Adems, todo sistema de archivos montado de forma local por medio del Sistema
de Archivos de Red tendr las funciones, caractersticas, limitaciones y
dependencias del directorio o sistema de archivos que se ha montado en el
servidor remoto. Las operaciones no se realizan de forma local en los sistemas de
archivos montados. El flujo de peticiones a travs de la conexin con el servidor
debe obedecer a los requisitos y restricciones del tipo de sistema de archivos en el
servidor.

Utilizacin de los sistemas de archivos NFS mediante la


interfaz del sistema de archivos integrado
El Sistema de Archivos de Red es accesible a travs de la interfaz del sistema de
archivos integrado y tiene las siguientes consideraciones y limitaciones.

Caractersticas del sistema de archivos de red


Las caractersticas de cualquier sistema de archivos montado por medio de NFS
dependen del tipo de sistema de archivos a partir del que se haya montado en el
servidor. Es importante tener presente que las peticiones realizadas en lo que
parece ser un directorio o un sistema de archivos local actan, en realidad, en el
servidor a travs de la conexin NFS.
Esta relacin cliente/servidor puede resultar confusa. Supongamos, por ejemplo,
que se monta el sistema de archivos QDLS del servidor encima de una rama del

Captulo 5. Sistemas de archivos: conceptos

67

directorio raz (/) del cliente. Aunque el sistema de archivos montado parece ser
una ampliacin del directorio local, en realidad funcionar y actuar como el
sistema de archivos QDLS.
Tener presente esta relacin de los sistemas de archivos montados a travs de NFS
es importante para procesar las peticiones de forma local y mediante la conexin
del servidor. Que un mandato se procese correctamente a nivel local no significa
que vaya a funcionar en el directorio montado desde el servidor. Cada directorio
montado en el cliente tendr las propiedades y las caractersticas del sistema de
archivos del servidor.

Combinaciones de servidores y clientes en el sistema de


archivos de red
Existen tres posibilidades principales de conexiones cliente/servidor que pueden
afectar a la forma en la que funcionar el sistema de archivos de red y sus
caractersticas.
1. El usuario monta un sistema de archivos de un servidor AS/400 en un cliente.
2. El usuario monta un sistema de archivos de un servidor UNIX en un cliente.
3. El usuario monta un sistema de archivos de un servidor no AS/400 y no UNIX
en un cliente.
En el primer caso, el sistema de archivos montado se comportar en el cliente
exactamente igual que en el servidor AS/400. Por ejemplo, si un usuario monta el
sistema de archivos QOPT del servidor en el cliente, se comportar con las mismas
caractersticas y limitaciones que el sistema de archivos QOPT. Aunque parezcan
ser locales, los sistemas de archivos montados en el cliente tendrn los mismos
atributos que el sistema de archivos del servidor.
En el segundo caso, es importante darse cuenta de que cualquier sistema de
archivos montado desde un servidor UNIX se comportar de modo similar al
sistema de archivos QOpenSys del AS/400. Si desea saber ms acerca del sistema
de archivos QOpenSys, consulte el apartado Sistema de archivos de sistemas
abiertos (QOpenSys) en la pgina 49.
En el tercer caso, ser necesario leer la documentacin del sistema de archivos
asociado con el sistema operativo del servidor.

Enlaces en el sistema de archivos de red


En general, en el sistema de archivos de red se permiten varios enlaces fijos con el
mismo objeto. Los enlaces simblicos se soportan totalmente. Se puede utilizar un
enlace simblico para tener un enlace desde el sistema de archivos de red con un
objeto de otro sistema de archivos. La posibilidad de tener varios enlaces fijos y
simblicos depende por completo del sistema de archivos que se est montando
con NFS.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos del sistema de archivos integrado en


el sistema de archivos de red
Todos los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 y las pantallas descritas en el apartado Realizacin de
operaciones en el sistema de archivos integrado desde el AS/400 en la pgina 15
pueden realizar operaciones en el Sistema de Archivos de Red. Hay algunos
mandatos CL que son especficos del sistema de archivos de red y otros sistemas
de archivos montados en general. Sin embargo, puede que la ejecucin de estos

68

OS/400 Introduccin al sistema de archivos integrado V4R5

mandatos en un proceso con posibilidad multihebra no sea segura. Estn descritos


en la tabla siguiente. Encontrar la descripcin completa de los mandatos y
pantallas relacionados especficamente con el Sistema de Archivos de Red en la
publicacin OS/400 Network File System Support .
Tabla 7. Mandatos CL del Sistema de Archivos de Red
Mandato

Descripcin

ADDMFS

Aadir sistema de archivos montado. Coloca los sistemas de archivos


de servidor remoto exportados en directorios de cliente locales.

CHGNFSEXP

Cambiar exportacin de sistema de archivos de red. Aade o elimina


rboles de directorios de la tabla de exportacin de los sistemas de
archivos exportados a los clientes del sistema de archivos de red.

DSPMFSINF

Visualizar informacin de sistema de archivos montado. Visualiza


informacin acerca de un sistema de archivos montado.

ENDNFSSVR

Finalizar servidor de sistema de archivos de red. Finaliza uno o todos


los daemons de sistema de archivos de red del servidor.

EXPORTFS

Exportar sistema de archivos. Aade o elimina rboles de directorios de


la tabla de exportacin de los sistemas de archivos exportados a los
clientes del sistema de archivos de red.

MOUNT

Montar sistema de archivos. Coloca los sistemas de archivos de


servidor remoto exportados en directorios de cliente locales. Es un alias
del mandato ADDMFS.

RLSIFSLCK

Liberar bloqueos del sistema de archivos integrado. Libera todos los


bloqueos de rango de bytes del sistema de archivos de red mantenidos
por un cliente o sobre un objeto.

RMVMFS

Eliminar sistema de archivos montado. Elimina los sistemas de archivos


de servidor remoto exportados del espacio de nombres del cliente local.

STRNFSSVR

Iniciar servidor de sistema de archivos de red. Inicia uno o todos los


daemons de sistema de archivos de red del servidor.

UNMOUNT

Desmontar sistema de archivos. Elimina los sistemas de archivos de


servidor remoto exportados del espacio de nombres del cliente local. Es
un alias del mandato RMVMFS.

Nota: Para poder utilizar los mandatos en un sistema de archivos de red, primero
debe montarse ste.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos de red
Todas las funciones del lenguaje C que se listan en el apartado API del sistema de
archivos integrado en la pgina 33 pueden realizar operaciones en el sistema de
archivos de red en modalidad de hebras. Para obtener una descripcin completa de
las funciones del lenguaje C relacionadas especficamente con el sistema de
archivos de red, consulte la publicacin OS/400 Network File System Support .
Nota: Para poder utilizar las API en un sistema de archivos de red, primero debe
montarse ste.

Sistema de archivos NetWare (QNetWare)


Los sistemas de archivos QNetWare proporcionan acceso a los datos ubicados en
un Integrated Netfinity Server para AS/400 local o remoto en el que se ejecuta
Novell NetWare 4.10 o 4.11, o en Servidores PC autnomos en los que se ejecuta
Novell NetWare 3.12, 4.10, 4.11 o 5.0.
Captulo 5. Sistemas de archivos: conceptos

69

Adems:
v Proporciona acceso a los objetos de los Servicios de Directorio NetWare (NDS).
v Soporta datos almacenados en archivos continuos.
v Proporciona montaje dinmico de Sistemas de Archivos NetWare en el espacio
de nombres local.
Nota: El sistema de archivos QNetWare est disponible slo si en el sistema est
instalada la integracin mejorada NetWare para AS/400, opcin 25 del
BOSS. Despus de realizar la siguiente IPL una vez efectuada la instalacin,
el directorio /QNetWare y sus subdirectorios aparecen como parte de la
estructura de directorios del sistema de archivos integrado. .

Montar sistemas de archivos NetWare


Los sistemas de archivos NetWare ubicados en servidores Novell NetWare pueden
montarse en el sistema de archivos raz (/), en QOpenSys y en otros sistemas de
archivos con el fin de simplificar el acceso y de que el rendimiento sea mejor que
con el directorio /QNetWare. Montar los sistemas de archivos NetWare puede servir
tambin para sacar partido de las opciones del mandato Aadir Sistema de
Archivo Montado (ADDMFS) como, por ejemplo, montar un sistema de archivos
de lectura-grabacin como de slo lectura.
Los sistemas de archivos NetWare pueden montarse utilizando una va de acceso
NDS o especificando una va de acceso NetWare en la forma
SERVIDOR/VOLUMEN:directorio/directorio. Por ejemplo, para montar el directorio
portal ubicado en el volumen Nido del servidor Ruiseor, se utilizara la sintaxis
siguiente:
RUISEOR/NIDO:portal

Esta sintaxis de va de acceso es semejante a la sintaxis del mandato MAP de


NetWare. Las vas de acceso de NDS pueden utilizarse para especificar una va de
acceso a un volumen de NetWare, pero, en s, no pueden montarse.

Estructura de directorios de QNetWare


La estructura de directorios de /QNetWare representa varios sistemas de archivos
distintos:
v La estructura representa los servidores Novell NetWare y los volmenes en la
red de la forma siguiente:
/QNetWare/SERVIDOR.SVR/VOLUMEN

La extensin .SVR se utiliza para representar un servidor Novell NetWare.


v Cuando se accede a un volumen de un servidor por medio de los mens, los
mandatos o las API del sistema de archivos integrado, el directorio raz del
volumen NetWare queda montado de forma automtica en el directorio
VOLUMEN de /QNetWare.
v QNetWare representa los rboles de NDS de la red de la manera siguiente:
/QNetWare/ARB_EMPR.TRE/ESP.C/ORG.O/UNID_ORG.OU/VOL_SVR1.CN

Las extensiones .TRE, .C, .O, .OU y .CN se utilizan para representar rboles de
NDS, pases, organizaciones, unidades organizativas y nombres comunes,
respectivamente. Si a un volumen de Novell NetWare se accede a travs de la
va de acceso de NDS por medio de un objeto volumen o del alias de un objeto
volumen, el directorio raz del mismo se monta tambin de forma automtica en
el objeto de NDS.

70

OS/400 Introduccin al sistema de archivos integrado V4R5

Utilizacin de QNetWare mediante la interfaz del sistema de


archivos integrado
Al sistema de archivos QNetWare puede accederse mediante la interfaz del sistema
de archivos integrado utilizando el servidor de archivos OS/400 o los mandatos,
las pantallas de usuario y las API del sistema de archivos integrado. Debe tener
presentes las consideraciones, limitaciones y dependencias siguientes.

Autorizaciones y propiedad en el sistema de archivos QNetWare


Los archivos y directorios de QNetWare los almacenan y gestionan servidores
Novell NetWare. Al utilizar mandatos y API para recuperar o establecer las
autorizaciones de los propietarios o los usuarios, QNetWare correlaciona los
usuarios de NetWare con los usuarios de AS/400 tomando como base el nombre
de los usuarios. Si el nombre de NetWare tiene una longitud de ms de diez
caracteres o no existe ningn usuario de AS/400 correspondiente, no se
correlaciona la autorizacin. Los propietarios que no pueden correlacionarse se
correlacionan de forma automtica con el perfil de usuario QDFTOWN. Las
autorizaciones de los usuarios pueden visualizarse y cambiarse con los mandatos
WRKAUT y CHGAUT. Al transferirlas al servidor, o desde el servidor, se
correlacionan con autorizaciones de AS/400.

Auditora en el sistema de archivos QNetWare


Aunque Novell NetWare soporta la auditora de archivos y directorios, el sistema
de archivos QNetWare no puede cambiar los valores de auditora de dichos
objetos. Por lo tanto, el mandato CHGAUD no est soportado.

Archivos y directorios en el sistema de archivos QNetWare


El sistema de archivos QNetWare no contempla el caso en que los archivos y
directorios se entran en un mandato o API. Todos los nombres se pasan a
maysculas al transmitirlos al servidor NetWare. Novell NetWare tambin soporta
los espacios de nombres de mltiples plataformas, como por ejemplo DOS, OS/2,
Apple Macintosh y NFS. El sistema de archivos QNetWare slo da soporte al
espacio de nombres del DOS. Puesto que el espacio de nombres DOS es obligatorio
en todos los volmenes de Novell NetWare, todos los archivos y directorios
aparecern en el sistema de archivos QNetWare.

Objetos NDS en el sistema de archivos QNetWare


El sistema de archivos QNetWare da soporte a la visualizacin de nombres de NDS
en maysculas y en minsculas.

Enlaces en el sistema de archivos QNetWare


El sistema de archivos QNetWare da soporte slo a un enlace con un objeto. En
QNetWare no pueden crearse ni almacenarse enlaces simblicos. Sin embargo,
pueden crearse en los directorios raz (/) o de QOpenSys que sealen a un
archivo o directorio de QNetWare.

Utilizacin de los mandatos y las pantallas del sistema de


archivos integrado en el sistema de archivos QNetWare
Los mandatos listados en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 pueden realizar operaciones en el sistema de archivos
QNetWare, con la excepcin de los mandatos siguientes, que las realizan en enlaces
o que conllevan propiedad de grupos, auditora y reincorporacin/reservas:
ADDLINK
CHGAUD
CHGPGP
CHKIN
Captulo 5. Sistemas de archivos: conceptos

71

CHKOUT
WRKOBJOWN
WRKOBJPGP
Adems de los mandatos anteriores, los siguientes no pueden utilizarse en
volmenes, servidores ni objetos de NDS:
CPYFRMSTMF
CPYTOSTMF
CRTDIR
CHGOWN

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos QNetWare
Las funciones del lenguaje C listadas en el apartado Interfaces de programas de
aplicacin (API) para el sistema de archivos integrado en la pgina 32 pueden
realizar operaciones en el sistema de archivos, QNetWare, excepto las API
siguientes:
givedescriptor()
link()
readlink()
symlink()
takedescriptor()
Adems de las API anteriores, no pueden utilizarse las siguientes API sobre
objetos, servidores o volmenes NDS:
chmod()
chown()
create()
fchmod()
fchown()
fcntl()
ftruncate()
lseek()
mkdir()
read()
readv()
unmask()
write()
writev()

Sistema de archivos de Windows NT Server (QNTC)


El sistema de archivos QNTC proporciona acceso a los datos y objetos que se
encuentran almacenados en un Integrated Netfinity Server para AS/400 local o
remoto en el que se ejecuta Windows NT 4.0 Server o superior, o en un servidor
autnomo. Permite que las aplicaciones del AS/400 utilicen los mismos datos que
los clientes de Windows NT. Almacena los datos en archivos continuos. Consulte la
publicacin IBM Integracin de Windows NT Server con AS/400 -- Puesta a punto,
SC10-3235-03 (SC41-5439-03) (SC41-5439) donde encontrar informacin ms
detallada.

72

OS/400 Introduccin al sistema de archivos integrado V4R5

El sistema de archivos QNTC forma parte del sistema operativo OS/400 base. Para
utilizar el sistema de archivos QNTC, los Programas de Utilidad de Conectividad
TCP/IP para el AS/400 han de estar instalados (su nmero de pieza es 5769-TC1).
No es necesario que est instalada la Integracin del AS/400 con Windows NT
Server, opcin 29 del sistema operativo, para acceder a /QNTC.

Utilizacin de QNTC mediante la interfaz del sistema de


archivos integrado
Al utilizar los mandatos del servidor de archivos OS/400 o los mandatos del
sistema de archivos integrado, las pantallas de usuario y las API, se puede acceder
al sistema de archivos QNTC mediante la interfaz del sistema de archivos
integrado. Debe tener en cuenta las consideraciones y limitaciones siguientes.

Autorizaciones y propiedad en el sistema de archivos QNTC


El sistema de archivos QNTC no soporta el concepto de propiedad de un archivo o
de un directorio. Los intentos de utilizar un mandato o una API para cambiar la
propiedad de los archivos almacenados en QNTC sern infructuosos. Un perfil de
usuario de sistema, que recibe el nombre de QDFTOWN, tiene en propiedad todos
los archivos y directorios de QNTC.
La autorizacin sobre los archivos y directorios del servidor NT se administra
desde el servidor Windows NT. QNTC no soporta los mandatos WRKAUT y
CHGAUT.

Maysculas y minsculas en el sistema de archivos QNTC


El sistema de archivos QNTC conserva el mismo formato de maysculas y
minsculas en el que se han entrado los nombres de objetos, pero no distingue
maysculas de minsculas en los nombres. Una bsqueda de nombres de objetos
obtiene el mismo resultado independientemente de que los caracteres de los
nombres estn en maysculas o en minsculas.

Nombres de va de acceso en el sistema de archivos QNTC


v El nombre de va de acceso debe empezar por una barra inclinada y puede
contener 255 caracteres como mximo.
v Los nombres de va de acceso son sensibles a las maysculas y minsculas.
v La va de acceso est formada por el nombre de sistema de archivos, el nombre
del servidor Windows NT, el nombre compartido, los nombre del directorio y los
subdirectorios y el nombre del objeto. Los nombres de vas de acceso tienen el
formato siguiente:
/QNTC/NombreServidor/NombreCompartido/Directorio/ . . . /Objeto
(QNTC es una parte necesaria del nombre de va de acceso.)

v El nombre de servidor puede tener una longitud de 15 caracteres como mximo.


Debe formar parte de la va de acceso.
v El nombre compartido puede tener una longitud de 12 caracteres como mximo.
v Cada componente del nombre de va de acceso tras el nombre compartido puede
tener una longitud mxima de 255 caracteres.
v Dentro de QNTC, suele haber disponibles 130 niveles de jerarqua. Si todos los
componentes del nombre de la va de acceso se incluyen como niveles de
jerarqua, la jerarqua de directorios puede llegar a tener una extensin de 132
niveles.
v El nombre compartido se almacena en el CCSID de Unicode.
v Cada servidor Windows NT en funcionamiento en la subred local aparecer
automticamente como un directorio bajo /QNTC. Utilice el mandato Crear
Directorio (MKDIR) (consulte la Tabla 1 en la pgina 16) o la API mkdir()
Captulo 5. Sistemas de archivos: conceptos

73

(consulte el tema Interfaces de programas de aplicacin (API) para el sistema


de archivos integrado en la pgina 32) para aadir servidores Windows NT
externos a la subred local.

Enlaces en el sistema de archivos QNTC


El sistema de archivos QNTC da soporte slo a un enlace con un objeto. No puede
crear o almacenar enlaces simblicos en QNTC. Puede utilizar un enlace simblico
desde los sistemas de archivos raz (/) o QOpenSys para acceder a los datos de
QNTC.
Consulte el apartado Enlaces y enlaces simblicos en el sistema de archivos
integrado en la pgina 10 para ver la descripcin de los enlaces.

Utilizacin de los mandatos y pantallas del sistema de archivos


integrado en el sistema de archivos QNTC
Los mandatos que se enumeran en el apartado Mandatos del sistema de archivos
integrado en la pgina 16 pueden operar sobre el sistema de archivos QNTC, con
la excepcin de los mandatos siguientes, que operan sobre enlaces, propiedad de
objetos, acciones de guardar o restaurar, reincorporar y reservar:
ADDLNK
CHGOWN
CHGAUT
CHGPGP
CHKIN
CHKOUT
DSPAUT
RST
SAV
WRKAUT
WRKOBJOWN
WRKOBJPGP
Las mismas restricciones son aplicables a las pantallas de usuario descritas en el
apartado Realizacin de operaciones en el sistema de archivos integrado desde el
AS/400 en la pgina 15.

Utilizacin del mandato MKDIR en el sistema de archivos QNTC


Utilice el mandato Crear Directorio (MKDIR) para aadir un directorio de servidor
al directorio /QNTC. Todos los servidores Windows NT en funcionamiento de la
subred local se crean automticamente. Estos servidores Windows NT externos a la
subred local deben aadirse utilizando el mandato MKDIR o la API mkdir(). Por
ejemplo:
MKDIR '/QNTC/NTSRV1'

aadir el servidor NTSRV1 en la estructura de directorios del sistema de archivos


QNTC para permitir el acceso a los archivos y directorios de este servidor.
Tambin puede aadir un nuevo servidor a la estructura de directorios utilizando
la direccin TCP/IP. Por ejemplo:
MKDIR '/QNTC/9.130.67.24'

aadir el servidor en la estructura de directorios del sistema de archivos QNTC.

74

OS/400 Introduccin al sistema de archivos integrado V4R5

Nota: Si utiliza la API mkdir() o el mandato CL MKDIR para aadir directorios a


la estructura de directorios, stos no permanecern visibles despus de una
IPL. El mandato MKDIR o la API mkdir() deben volverse a emitir tras cada
IPL de sistema.

Utilizacin de las API del sistema de archivos integrado en el


sistema de archivos QNTC
Las funciones del lenguaje C que se enumeran en el apartado API del sistema de
archivos integrado en la pgina 33 pueden operar en el sistema de archivos
QNTC, con las siguientes excepciones:
v Las funciones chmod(), fchmod(), utime() y umask() no tendrn ningn efecto
sobre los objetos de QNTC, pero si se intentan utilizar no se producir ningn
error.
v El sistema de archivos QNTC no da soporte a las funciones siguientes.
chown()
fchown()
givedescriptor()
link()
Qp0lGetPathFromFileID()
readlink()
symlink()
takedescriptor()

Captulo 5. Sistemas de archivos: conceptos

75

76

OS/400 Introduccin al sistema de archivos integrado V4R5

Apndice A. Programa de ejemplo con funciones C del


sistema de archivos integrado
Este sencillo programa de lenguaje C ilustra la utilizacin de varias funciones del
sistema de archivos integrado. El programa ejecuta las operaciones siguientes:
1

Utiliza la funcin getuid() para determinar el ID de usuario (uid) real.

Utiliza la funcin getcwd() para determinar el directorio actual.

Utiliza la funcin open() para crear un archivo. Define que el propietario


(la persona que ha creado el archivo) tenga autorizacin de lectura,
grabacin y ejecucin sobre el archivo.

Utiliza la funcin write() para grabar una serie de bytes en el archivo. El


descriptor de archivo proporcionado en la operacin de apertura (3)
identifica al archivo.

Utiliza la funcin close() para cerrar el archivo.

Utiliza la funcin mkdir() para crear un nuevo subdirectorio en el


directorio actual. El propietario obtiene acceso de lectura, grabacin y
ejecucin al subdirectorio.

Utiliza la funcin chdir() para pasar del subdirectorio nuevo al directorio


actual.

Utiliza la funcin link() para crear un enlace con el archivo creado


anteriormente (3).

Utiliza la funcin open() para abrir el archivo slo para lectura. El enlace
creado en (8) posibilita el acceso al archivo.

10

Utiliza la funcin read() para leer una serie de bytes del archivo. El
descriptor de archivo proporcionado en la operacin de apertura (9)
identifica al archivo.

11

Utiliza la funcin close() para cerrar el archivo.

12

Utiliza la funcin unlink() para eliminar el enlace con el archivo.

13

Utiliza la funcin chdir() para pasar del directorio actual al directorio


padre en el que se ha creado el nuevo subdirectorio.

14

Utiliza la funcin rmdir() para eliminar el subdirectorio creado


anteriormente (6).

15

Utiliza la funcin unlink() para eliminar el archivo creado anteriormente


(3).

Nota: Este programa de ejemplo funcionar correctamente en aquellos sistemas en


los que el CCSID del trabajo en el que se ejecuta sea 37. Los nombres de va
de acceso y de objeto de las API del sistema de archivos integrado deben
codificarse en el CCSID del trabajo; sin embargo, el compilador C almacena
las constantes de tipo carcter en el CCSID 37. Para que la compatibilidad
sea total, convierta las constantes de tipo carcter, como, por ejemplo, los
nombres de va de acceso y de objeto, antes de pasar las API al CCSID del
trabajo. Si desea ms informacin sobre cmo utilizar el mandato inconv()
para convertir cadenas de caracteres de un CCSID a otro, consulte la
publicacin OS/400 National Language Support APIs, (SC41-5863-01).
Copyright IBM Corp. 1999, 2000

77

#include
#include
#include
#include
#include
#define
#define
#define
#define
#define
#define
char
char
char
char
int
int
int
uid_t

<stdlib.h>
<stdio.h>
<fcntl.h>
<unistd.h>
<sys/types.h>
BUFFER_SIZE
NEW_DIRECTORY
TEST_FILE
TEST_DATA
USER_ID
PARENT_DIRECTORY

2048
"dirtest"
"test.file"
"Hola todos!"
"user_id_"
".."

InitialFile[BUFFER_SIZE];
LinkName[BUFFER_SIZE];
InitialDirectory[BUFFER_SIZE] = ".";
Buffer[32];
FilDes = -1;
BytesRead;
BytesWritten;
UserID;

void CleanUpOnError(int level){


printf("Encontrado error, borrando.\n");
switch ( level )
{
case 1:
printf("No se pudo obtener directorio de trabajo actual.\n");
break;
case 2:
printf("No se pudo crear el archivo %s.\n",TEST_FILE);
break;
case 3:
printf("No se pudo grabar en archivo %s.\n",TEST_FILE);
close(FilDes);
unlink(TEST_FILE);
break;
case 4:
printf("No se pudo cerrar el archivo %s.\n",TEST_FILE);
close(FilDes);
unlink(TEST_FILE);
break;
case 5:
printf("No se pudo crear el directorio %s.\n",NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 6:
printf("No se pudo ir al directorio %s.\n",NEW_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 7:
printf("No se pudo crear enlace %s con %s.\n",LinkName,InitialFile);
chdir(PARENT_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 8:
printf("No se pudo abrir el enlace %s.\n",LinkName);
unlink(LinkName);
chdir(PARENT_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 9:
printf("No se pudo leer el enlace %s.\n",LinkName);

78

OS/400 Introduccin al sistema de archivos integrado V4R5

close(FilDes);
unlink(LinkName);
chdir(PARENT_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 10:
printf("No se pudo cerrar el enlace %s.\n",LinkName);
close(FilDes);
unlink(LinkName);
chdir(PARENT_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 11:
printf("No se pudo deshacer el enlace %s.\n",LinkName);
unlink(LinkName);
chdir(PARENT_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 12:
printf("No se pudo ir al directorio %s.\n",PARENT_DIRECTORY);
chdir(PARENT_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 13:
printf("No se pudo eliminar el directorio %s.\n",NEW_DIRECTORY);
rmdir(NEW_DIRECTORY);
unlink(TEST_FILE);
break;
case 14:
printf("No se pudo desenlazar el archivo %s.\n",TEST_FILE);
unlink(TEST_FILE);
break;
default:
break;
}
printf("El programa finaliz con Error.\n"\
"Pueden no estar eliminados todos los archivos y directorios de prueba.\n");}
int main (){
1
/* Obtener e imprimir el ID de usuario real con la funcin getuid(). */
UserID = getuid();
printf("El ID de usuario real es %u. \n",UserID);
2
/* Obtener el directorio de trabajo actual y almacenarlo en InitialDirectory. */
if ( NULL == getcwd(InitialDirectory,BUFFER_SIZE) )
{
perror("Error getcwd");
CleanUpOnError(1);
return 0;
}
printf("El directorio de trabajo actual es %s. \n",InitialDirectory);
3
/* Crear el archivo TEST_FILE para grabar, si no existe.
Otorgar al propietario autorizacin de lectura, grabacin y ejecucin. */
FilDes = open(TEST_FILE, O_WRONLY | O_CREAT | O_EXCL, S_IRWXU);
if ( -1 == FilDes )
{
perror("Error open");
CleanUpOnError(2);
return 0;
}
printf("Creado %s en directorio %s.\n",TEST_FILE,InitialDirectory);
4
/* Grabar TEST_DATA en TEST_FILE va FilDes */
BytesWritten = write(FilDes,TEST_DATA,strlen(TEST_DATA));
Apndice A. Programa de ejemplo con funciones C del sistema de archivos integrado

79

if ( -1 == BytesWritten )
{
perror("Error write");
CleanUpOnError(3);
return 0;
}
printf("Grabado %s en archivo %s.\n",TEST_DATA,TEST_FILE);
5
/* Cerrar TEST_FILE va FilDes */
if ( -1 == close(FilDes) )
{
perror("Error close");
CleanUpOnError(4);
return 0;
}
FilDes = -1;
printf("Archivo %s cerrado.\n",TEST_FILE);
6
/* Crear un nuevo directorio en el directorio de trabajo actual y
otorgar al propietario autorizacin de lectura, grabacin y ejecucin */
if ( -1 == mkdir(NEW_DIRECTORY, S_IRWXU) )
{
perror("Error mkdir");
CleanUpOnError(5);
return 0;
}
printf("Directorio %s creado en directorio
%s.\n",NEW_DIRECTORY,InitialDirectory);
7
/* Cambiar el directorio de trabajo actual por el
directorio NEW_DIRECTORY recin creado. */
if ( -1 == chdir(NEW_DIRECTORY) )
{
perror("Error chdir");
CleanUpOnError(6);
return 0;
}
printf("Se ha pasado al directorio
%s/%s.\n",InitialDirectory,NEW_DIRECTORY);
/* Copiar PARENT_DIRECTORY en InitialFile y
aadir "/" y TEST_FILE a InitialFile. */
strcpy(InitialFile,PARENT_DIRECTORY);
strcat(InitialFile,"/");
strcat(InitialFile,TEST_FILE);
/* Copiar USER_ID en LinkName despus aadir el
ID usuario como una serie a LinkName. */
strcpy(LinkName, USER_ID);
sprintf(Buffer, "%d\0", (int)UserID);
strcat(LinkName, Buffer);
8
/* Crear un enlace con el nombre de InitialFile con LinkName. */
if ( -1 == link(InitialFile,LinkName) )
{
perror("Error link");
CleanUpOnError(7);
return 0;
}
printf("Creado un enlace %s con %s.\n",LinkName,InitialFile);
9
/* Abrir el archivo LinkName slo para lectura. */
if ( -1 == (FilDes = open(LinkName,O_RDONLY)) )
{
perror("Error open");
CleanUpOnError(8);
return 0;
}
printf("Abierto %s para lectura.\n",LinkName);
10
/* Leer en archivo LinkName, va FilDes, en Buffer. */
BytesRead = read(FilDes,Buffer,sizeof(Buffer));
if ( -1 == BytesRead )
{
perror("Error read");
CleanUpOnError(9);

80

OS/400 Introduccin al sistema de archivos integrado V4R5

return 0;
}
printf("%s ledo en %s.\n",Buffer,LinkName);
if ( BytesRead != BytesWritten )
{
printf("AVISO: el nmero de bytes ledos no "\
"es igual al nmero de bytes grabados.\n");

11
/* Cerrar el archivo LinkName va FilDes. */
if ( -1 == close(FilDes) )
{
perror("Error close");
CleanUpOnError(10);
return 0;
}
FilDes = -1;
printf("Cerrado %s.\n",LinkName);
12
/* Desenlazar el enlace LinkName con InitialFile. */
if ( -1 == unlink(LinkName) )
{
perror("Error unlink");
CleanUpOnError(11);
return 0;
}
printf("%s est desenlazado.\n",LinkName);
13
/* Volver a cambiar el directorio de trabajo actual
por el directorio inicial. */
if ( -1 == chdir(PARENT_DIRECTORY) )
{
perror("Error chdir");
CleanUpOnError(12);
return 0;
}
printf("pasando del directorio al %s.\n",InitialDirectory);
14
/* Eliminar el directorio NEW_DIRECTORY */
if ( -1 == rmdir(NEW_DIRECTORY) )
{
perror("Error rmdir");
CleanUpOnError(13);
return 0;
}
printf("Eliminando directorio %s.\n",NEW_DIRECTORY);
15
/* Desenlazar el archivo TEST_FILE */
if ( -1 == unlink(TEST_FILE) )
{
perror("Error unlink");
CleanUpOnError(14);
return 0;
}
printf("Desenlazando archivo %s.\n",TEST_FILE);
printf("Programa terminado satisfactoriamente.\n");
return 0;}

Apndice A. Programa de ejemplo con funciones C del sistema de archivos integrado

81

82

OS/400 Introduccin al sistema de archivos integrado V4R5

Apndice B. Llamada de procedimiento remoto independiente


del transporte
Desarrollada por Sun Microsystems, la Llamada de Procedimiento Remoto (RPC),
separa y distribuye aplicaciones clientes desde un mecanismo servidor. Incluye un
estndar para la representacin de datos, llamado eXternal Data Representation, o
XDR, que posibilita que ms de un tipo de mquina tenga acceso a los datos
transmitidos. La RPC independiente de transporte (TI-RPC) es la versin ms
reciente de RPC. Proporciona un mtodo para separar el protocolo subyacente que
se utiliza en la capa de red, proporcionando una transicin ms compacta de un
protocolo a otro. Los nicos protocolos que estn disponibles actualmente en el
AS/400 son los protocolos TCP y UDP.
El desarrollo de aplicaciones distribuidas a travs de una red es una tarea ms
compacta cuando se utiliza RPC. Los destinos primarios son las aplicaciones que
tienden a distribuir las interfaces de usuario y la recuperacin de datos.

Selecciones de red
Las API siguientes proporcionan los medios para elegir el transporte en el que una
aplicacin debe ejecutarse.
Estas API requieren que el archivo *STMF /etc/netconfig exista en el sistema. Si el
archivo netconfig no existiese en el directorio /etc, el usuario debe copiarlo del
directorio /QIBM/ProdData/OS400/RPC. El archivo netconfig se encuentra
siempre en el directorio QIBM/ProdData/OS400/RPC.
API

Descripcin

endnetconfig()

Libera el puntero a los registros almacenados en el archivo


netconfig

freenetconfigent()

Libera la estructura netconfig devuelta a partir de la


llamada a la funcin getnetconfigent()

getnetconfig()

Devuelve el puntero al registro actual del archivo netconfig


e incrementa su puntero hasta el registro siguiente

getnetconfigent()

Devuelve el puntero a la estructura netconfig que


corresponde al identificador de red de entrada

setnetconfig()

Inicializa el puntero del registro a la primera entrada del


archivo netconfig. La funcin setnetconfig() debe utilizarse
antes de que se utilice por primera vez la funcin
getnetconfig(). La funcin setnetconfig() devuelve un handle
exclusivo (un puntero a los registros almacenados en el
archivo netconfig) para que la funcin getnetconfig() lo
utilice.

Copyright IBM Corp. 1999, 2000

83

Conversin de nombre a direccin


Las API siguientes posibilitan que una aplicacin obtenga la direccin de un
servicio o de un sistema principal especificado independientemente del transporte.
API

Descripcin

netdir_free()

Libera las estructuras que las API de conversin de nombre


a direccin han asignado

netdir_getbyaddr()

Correlaciona las direcciones con los nombres de sistema


principal y los nombres de servicio

netdir_getbyname()

Correlaciona el nombre de sistema principal y el nombre de


servicio especificados en el parmetro de servicio con un
conjunto de direcciones coherentes con el transporte
identificado en la estructura netconfig

netdir_options()

Proporciona interfaces a las posibilidades especficas del


transporte como, por ejemplo, la direccin de difusin y los
recursos de puerto reservado de TCP y UDP

netdir_sperror()

Emite un mensaje informativo en el que se indica la causa


del fallo de una API de conversin de nombre a direccin

taddr2uaddr()

Convierte una direccin (local) especfica del transporte a


una direccin (universal) independiente del transporte

uaddr2taddr()

Convierte una direccin (universal) independiente del


transporte a una direccin (local) especfica del transporte
(estructura netbuf)

eXternal Data Representation (XDR)


Las API siguientes posibilitan que las aplicaciones con Llamada de Procedimiento
Remoto (RPC) manejen estructuras de datos arbitrarias, independientemente de los
rdenes de los bytes de los sistemas principales o de los convenios de diseo de
las estructuras.

84

API

Descripcin

xdr_array()

Una primitiva de tipo filtro que convierte entre matrices de


longitud variable y sus representaciones externas
correspondientes. Se llama a esta funcin para codificar o
decodificar cada elemento de la matriz

xdr_bool()

Una primitiva de tipo filtro que convierte entre booleanos


(que equivalen a enteros en C) y sus representaciones
externas. Al codificar los datos, los valores que este filtro
produce pueden ser 1 o 0.

xdr_bytes()

Una primitiva de tipo filtro que convierte entre matrices


con un nmero definido de bytes y sus representaciones
externas. Esta funcin se ocupa de un subconjunto de
matrices genricas en las que el tamao de los elementos de
la matriz se sabe que es 1 y la descripcin externa de cada
elemento est incorporada. La longitud de la secuencia de
bytes se encuentra de forma explcita en un entero sin
signo. La secuencia de bytes no termina con un carcter
nulo. La representacin externa de los bytes es idntica a la
representacin interna.

xdr_char()

Una primitiva de tipo filtro que convierte entre los


caracteres propios del lenguaje C y sus representaciones
externas

OS/400 Introduccin al sistema de archivos integrado V4R5

API

Descripcin

xdr_double()

Una primitiva de tipo filtro que convierte entre los nmeros


con precisin doble propios del lenguaje C y su
representacin externa

xdr_double_char()

Una primitiva de tipo filtro que convierte entre los


caracteres de dos bytes propios del lenguaje C y sus
representaciones externas

xdr_enum()

Una primitiva de tipo filtro que convierte entre las


enumeraciones (enum) propias del lenguaje C y sus
representaciones externas

xdr_free()

Libera recursivamente el objeto al que apunta el puntero


que se ha pasado

xdr_float()

Una primitiva de tipo filtro que convierte entre los nmeros


de coma flotante (nmeros normalizados con una nica
coma flotante) propios del lenguaje C y sus
representaciones externas.

xdr_int()

Una primitiva de tipo filtro que convierte entre enteros


propios del lenguaje C y sus representaciones externas.

xdr_long()

Una primitiva de tipo filtro que convierte entre enteros de


tipo long propios del lenguaje C y sus representaciones
externas.

xdr_netobj()

Una primitiva de tipo filtro que convierte entre datos


opacos de longitud variable y sus representaciones externas.

xdr_opaque()

Una primitiva de tipo filtro que convierte entre datos


opacos de tamao fijo y sus representaciones externas.

xdr_pointer()

Proporciona seguimiento de punteros dentro de estructuras


y serializa punteros de tipo nulo. Puede representar
estructuras de datos recursivas como, por ejemplo, rboles
binarios o listas enlazadas.

xdr_reference()

Una primitiva de tipo filtro que proporciona seguimiento a


punteros dentro de estructuras. Esta primitiva posibilita
serializar, deserializar y liberar cualquier puntero dentro de
una estructura que est referenciado por otra estructura. La
funcin xdr_reference() no concede un significado especial a
un puntero nulo durante el proceso de serializacin, por lo
que el hecho de pasar la direccin de un puntero nulo
puede provocar un error de memoria. En consecuencia, el
programador debe describir los datos con una unin
discriminada de dos lados. Un lado se utiliza cuando el
puntero es vlido, mientras que el otro se utiliza cuando el
puntero es nulo.

xdr_short()

Una primitiva de tipo filtro que convierte entre enteros de


tipo short propios del lenguaje C y sus representacin
externa

xdr_string()

Una primitiva de tipo filtro que convierte entre cadenas de


caracteres propias del lenguaje C y sus representaciones
externas correspondientes

xdr_u_char()

Una primitiva de tipo filtro que convierte entre los


caracteres sin signo propios del lenguaje C y sus
representaciones externas

xdr_u_int()

Una primitiva de tipo filtro que convierte entre los enteros


sin signo propios del lenguaje C y sus representaciones
externas

Apndice B. Llamada de procedimiento remoto independiente del transporte

85

API

Descripcin

xdr_u_long()

Una primitiva de tipo filtro que convierte entre los enteros


sin signo de tipo long propios del lenguaje C y sus
representaciones externas

xdr_u_short()

Una primitiva de tipo filtro que convierte entre los enteros


sin signo de tipo short propios del lenguaje C y sus
representaciones externas

xdr_union()

Una primitiva de tipo filtro que convierte entre uniones C


discriminadas y sus representaciones externas
correspondientes

xdr_vector()

Una primitiva de tipo filtro que convierte entre matrices de


longitud fija y sus representaciones externas
correspondientes

xdr_void()

No tiene parmetros. Se pasa a otras funciones RPC que


necesitan un parmetro, pero no transmite datos

xdr_wrapstring()

Una primitiva que llama a la API xdr_string(xdr, sp,


maxuint), donde maxuint es el valor mximo de un entero
sin signo. xdr_wrapstring() es til porque el paquete RPC
pasa un mximo de dos funciones XDR como parmetros y
la funcin xdr_string() necesita tres.

Autenticacin
Las API siguientes proporcionan autenticacin a las aplicaciones con Llamada de
procedimiento remoto independiente del transporte (TI-RPC).
API

Descripcin

auth_destroy()

Destruye la estructura de la informacin de autenticacin a


la que el parmetro auth apunta

authnone_create()

Crea y devuelve un handle de autenticacin RPC por


omisin que pasa informacin de autenticacin nula con
cada llamada de procedimiento remoto.

authsys_create()

Crea y devuelve un handle de autenticacin RPC que


contiene informacin de autenticacin

RPC independiente del transporte (TI-RPC)


Las API siguientes proporcionan un entorno para el desarrollo de aplicaciones
distribuidas al aislar la aplicacin de cualquier dispositivo de transporte especfico.
De esta forma se incrementa la facilidad de uso de los transportes.

Interfaces API TI-RPC simplificadas


Las API simplificadas siguientes especifican el tipo de transporte que ha de
utilizarse. Las aplicaciones que utilicen este nivel no tienen que crear handles
explcitamente.

86

API

Descripcin

rpc_call()

Llama a un procedimiento remoto que se encuentra en el


sistema especificado.

rpc_reg()

Registra un procedimiento con paquete de servicio RPC

OS/400 Introduccin al sistema de archivos integrado V4R5

Interfaces API TI-RPC de nivel superior


Las API siguientes posibilitan que la aplicacin especifique el tipo de transporte.
API

Descripcin

clnt_call()

Llama a un procedimiento remoto asociado con el cliente

clnt_control()

Cambia la informacin relativa a un objeto de cliente

clnt_create()

Crea un handle genrico de cliente

clnt_destroy()

Destruye el handle de RPC de cliente

svc_create()

Crea un handle de servidor

svc_destroy()

Destruye un handle de transporte del servicio RPC

Interfaces API TI-RPC de nivel intermedio


Las API siguientes son parecidas a las API de nivel superior, pero las aplicaciones
de usuario seleccionan la informacin especfica de transporte mediante las API de
seleccin de red:
API

Descripcin

clnt_tp_create()

Crea un handle de cliente

svc_tp_create()

Crea un handle de servidor

Interfaces API TI-RPC de nivel experto


Las API siguientes posibilitan que la aplicacin seleccione el transporte que se
desea utilizar. Tambin ofrecen un nivel mayor de control sobre los detalles de los
handles CLIENT y SVCXPRT. Estas API son parecidas a las API de nivel
intermedio con un control adicional que se proporciona al utilizar las API de
conversin de nombre a direccin.
Control adicional que se obtiene al utilizar las API de conversin de nombre a
direccin.
API

Descripcin

clnt_tli_create()

Crea un handle de cliente

rpcb_getaddr()

Busca la direccin universal de un servicio

rpcb_set()

Registra la direccin del servidor con el RPCbind

rpcb_unset()

Los servidores la utilizan para eliminar el registro de sus


direcciones

svc_reg()

Asocia un programa y la versin con despachar

svc_tli_create()

Crea un handle de servidor

svc_unreg()

Elimina una asociacin definida mediante svc_reg()

Otras interfaces API TI-RPC


Estas API posibilitan que diversas aplicaciones funcionen de forma coordinada con
las API simplificadas, de nivel superior, de nivel intermedio y de nivel experto.

Apndice B. Llamada de procedimiento remoto independiente del transporte

87

88

API

Descripcin

clnt_freeres()

Libera los datos asignados mediante el sistema RPC o el


XDR

clnt_geterr()

Obtiene la estructura de error a partir del handle de cliente

svc_freeargs()

Libera los datos asignados mediante el sistema RPC o el


XDR

svc_getargs()

Decodifica los argumentos de una peticin RPC

svc_getrpccaller()

Obtiene la direccin de red del llamador

svc_run()

Espera a que lleguen las peticiones RPC

svc_sendreply()

Enva los resultados de una llamada de procedimiento a un


cliente remoto.

svcerr_decode()

Enva informacin al cliente relativa a un error en la


decodificacin

svcerr_noproc()

Enva informacin al cliente relativa a un error en el


nmero del procedimiento

svcerr_systemerr()

Enva informacin al cliente relativa a un error en el sistema

OS/400 Introduccin al sistema de archivos integrado V4R5

Apndice C. Ejemplo de cdigo RPG para un sistema de


archivos integrado
http://www.as400.ibm.com/snippets contiene un ejemplo de cdigo RPG para un
sistema de archivos integrado. Para ver este ejemplo, realice los siguientes pasos:
1. Seleccione RPG Source en la lista desplegable de la categora Search.
2. Pulse en Search.
3. Desplace la lista hasta que vea la opcin Using Integrated File System from
RPG.
4. Pulse Code for using Integrated File System from RPG.

Copyright IBM Corp. 1999, 2000

89

90

OS/400 Introduccin al sistema de archivos integrado V4R5

Bibliografa
Esta bibliografa lista la informacin de AS/400
que contiene informacin previa o ms detallada
de la informacin que se expone en este manual.
v APPC Programming, SC41-5443-00
Este manual describe el soporte APPC
(comunicaciones avanzadas programa a
programa) para el sistema AS/400. Constituye
una gua para realizar el desarrollo de
programas de aplicacin que utilizan APPC y
para la definicin del entorno de
comunicaciones para APPC.
v CL Programming, SC41-5721-03
Esta publicacin trata las funciones y conceptos
del OS/400 que son relevantes en
programacin.
v El tema Lenguaje de control de la categora
Programacin del AS/400 Information Center
proporciona una descripcin del lenguaje de
control (CL) del AS/400 y de sus mandatos.
Cada descripcin de mandato incluye un
diagrama de sintaxis, parmetros, valores por
omisin, palabras clave y un ejemplo.
v ILE Concepts, SC41-5606-04
En esta publicacin se describen los conceptos
y la terminologa del Entorno de Lenguajes
Integrado del sistema operativo OS/400.
v ILE C for AS/400 Programmers Guide,
SC09-2712-01
Esta publicacin proporciona la informacin
necesaria para disear, editar, compilar, ejecutar
y depurar programas ILE C/400 en el AS/400.
v ILE C for AS/400 Run-Time Library Reference,
SC09-2711-01
Esta publicacin proporciona informacin
acerca de la estructura de los programas ILE
C/400 y contiene detalles sobre las funciones
de biblioteca y los archivos de incluir
(cabecera).
v International Application Development,
SC41-5603-01
Este manual proporciona informacin relativa a
valores de CCSID, esquemas de codificacin,
pginas de cdigos y juegos de caracteres
grficos.
v Gestin de OfiVisin/400, SH10-9074-00
(SH21-0699-00)

Copyright IBM Corp. 1999, 2000

Este manual describe procedimientos de


administracin relevantes para el sistema de
archivos QDLS.
v National Language Support, SC41-5101-01
Esta publicacin explica los conceptos de
soporte de idioma nacional (NLS), por ejemplo
el juego de caracteres y la pgina de cdigos y
proporciona informacin necesaria para
evaluar, planificar y utilizar las posibilidades
plurilinges NLS del AS/400.
v OS/400 Network File System Support,
SC41-5714-01
En esta publicacin est descrito el sistema de
archivos de red por medio de una serie de
aplicaciones sacadas de la vida real. Se incluye
informacin sobre exportacin, montaje y
bloqueo de archivos, as como conceptos de
seguridad. Con esta publicacin aprender a
utilizar NFS para crear y desarrollar un espacio
de nombres de red protegido.
v Office Services Concepts and Programmers Guide,
SH21-0703-00
Este manual proporciona informacin
secundaria para los usuarios del sistema de
archivos QDLS.
v Optical Support, SC41-5310-02
Este manual sirve de gua del usuario y manual
de consulta para IBM Optical Support en
OS/400. La informacin de esta publicacin
puede servir de ayuda al usuario para
comprender los conceptos de servidor de datos
de biblioteca ptica, planificar una biblioteca
ptica, administrar y manejar un servidor de
datos de biblioteca ptica y solucionar
problemas relativos al servidor de datos de
biblioteca ptica.
v Client Access Express for Windows Host Servers,
SC41-5740-03
En esta publicacin estn descritos los
servidores suministrados con OS/400, se
explica cmo los productos Client Access/400
utilizan los servidores y se facilita informacin
acerca del soporte del sistema y las actividades
relacionadas con la gestin de servidores.
v Security - Reference, SC41-5302-04
Esta publicacin proporciona informacin
tcnica detallada acerca de la seguridad de
OS/400.

91

Bibliografa
v System API Programming, SC41-5800-00
Esta publicacin proporciona informacin
acerca de la utilizacin de las API de OS/400.
v El tema API del OS/400 de la categora
Programacin del AS/400 Information Center
proporciona una descripcin de cada una de las
API del OS/400, incluidas las API del sistema
de archivos integrado.
v Gestin de trabajos, SC10-3124-03 (SC41-5306-03)
Esta publicacin describe conceptos relativos a
la gestin de trabajos.

92

OS/400 Introduccin al sistema de archivos integrado V4R5

ndice
A
API
ILE C/400 36
programa de ejemplo 77
reglas de nombres de vas de
acceso 36
sistema de archivos integrado 33
utilizacin en programas C 29, 32
archivo 77
funciones (API) 33
mens y pantallas 15
modalidades de abrir 43
transferir 25
archivo continuo
qu es? 3
comparacin con archivo orientado a
registros 3
copiar en/de archivo de base de
datos 29
en programa de ejemplo 77
indicando utilizacin en ILE
C/400 36
por qu utilizarlo 3
utilizacin en programas 29
ventajas 2
archivo de base de datos
comparacin con archivo continuo 3
copiar en/de archivo continuo 29
crear a partir de archivo continuo 29
atributo ampliado CODEPAGE 42
atributo ampliado SUBJECT 42
atributo ampliado TYPE 42
atributos ampliados
qu son? 13
continuidad a travs de idiomas
nacionales 13, 41
directrices de denominacin 42
manejo 42
tipos 42
autorizacin
en programa de ejemplo 77
funciones (API) 33
limitaciones del sistema de archivos
QNTC 73
limitaciones en el sistema de archivos
QFileSvr.400 62
mandatos 16
manejo en programas 39

B
bibliografa

91

C
carpetas
sistema de archivos QDLS 4, 54
Client Access 24
cliente PC
trabajar con el sistema de archivos
integrado 22
Copyright IBM Corp. 1999, 2000

clientes PC
cmo estn representados los sistemas
de archivos 25
conversin
datos 43
nombres de objeto 13, 41
conversin de caracteres 2, 13, 41
conversin de datos 43

D
definido por el usuario, sistema de
archivos 5
descripcin 5
descripcin de archivo abierto 38
descriptor de archivo 38
directorio
qu es? 6
actual 8
en programa de ejemplo 77
funciones (API) 33
inicial (home) 8
mandatos 16
mens y pantallas 15
sistema de archivos integrado 21
ventajas 1
directorio actual 8
directorio de trabajo 8
directorio inicial (home) 8

E
ejemplo
nombres de vas de acceso 9, 19, 36
programa utilizando las API del
sistema de archivos integrado 77
utilizacin de enlace simblico 11
enlace
qu es? 10
comparacin 40
en programa de ejemplo 77
fijo 10
funciones (API) 33
mandatos 16
mens y pantallas 15
por qu utilizarlo 10
simblico 11
uso en el sistema de archivos /
(raz) 49
uso en el sistema de archivos
QNTC 74
utilizacin en el sistema de archivos
QDLS 55
utilizacin en el sistema de archivos
QFileSvr.400 62
utilizacin en el sistema de archivos
QOpenSys 50
utilizacin en el sistema de archivos
QOPT 58
utilizacin en el sistema de archivos
QSYS.LIB 53

enlace fijo
qu es? 10
comparacin con enlace simblico 40
enlace simblico
qu es? 11
comparacin con enlace fijo 40
ejemplo de utilizacin 11
espacio de usuario
utilizacin en el sistema de archivos
QSYS.LIB 52
esquemas de codificacin 13, 41

F
FTP 25
funciones
en programa de ejemplo 77
ILE C/400 36
reglas de nombres de vas de
acceso 36
sistema de archivos integrado 33
utilizacin en programas C 29, 32

I
ILE C/400
alternativas API 32
funciones ANSI 36
funciones del sistema de archivos
integrado 33
informacin impresa relacionada 91
interfaz de sistema de archivos
integrado 1, 2, 5
interfaz de usuario
mandatos 16
mens y pantallas 15
vista desde PC 25

L
LU 6.2 en el sistema de archivos
QFileSvr.400 60

M
mandatos
lista 16
reglas de nombres de vas de
acceso 19
utilizacin 16
mens
reglas de nombres de vas de
acceso 19
utilizacin 15
migracin a travs de sistemas de
archivos 25
modalidad de acceso 39
modalidad de archivo abierto binario
modalidad de archivo abierto de
texto 43

43

93

modalidades de abrir archivo

43

N
NetServer 24
NetWare (QNetWare), sistema de archivos
caractersticas y limitaciones 69
nombre de va de acceso
qu es? 9
nombre de va de acceso absoluto 9
nombre de va de acceso relativo 9
reglas para las API 36
reglas para mandatos y pantallas 19
uso en el sistema de archivos /
(raz) 49
uso en el sistema de archivos
QNTC 73
utilizacin en el sistema de archivos
QDLS 55
utilizacin en el sistema de archivos
QFileSvr.400 60
utilizacin en el sistema de archivos
QOpenSys 50
utilizacin en el sistema de archivos
QOPT 57
utilizacin en el sistema de archivos
QSYS.LIB 52
nombre de va de acceso absoluto 9
nombre de va de acceso relativo 9
nombres
continuidad a travs de esquemas de
codificacin 13
continuidad a travs de idiomas
nacionales 41
uso en el sistema de archivos /
(raz) 49
uso en el sistema de archivos
QNTC 73
utilizacin en el sistema de archivos
QDLS 55
utilizacin en el sistema de archivos
QFileSvr.400 60
utilizacin en el sistema de archivos
QOpenSys 50
utilizacin en el sistema de archivos
QOPT 57
utilizacin en el sistema de archivos
QSYS.LIB 52

O
objeto
migracin entre sistemas de
archivos 25
operaciones (programa de ejemplo) 77
ptico, sistema de archivos (QOPT)
descripcin 5
OS/2 Warp Server para AS/400 5

P
pgina de cdigos 2, 13, 41
pantallas
reglas de nombres de vas de
acceso 19
utilizacin 15
permiso 39

94

procesador de E/S servidor de


archivos 5
programa de lenguaje C
ejemplo 77
funciones del sistema de archivos
integrado 33
funciones ILE C/400 36
protocolo de transferencia de
archivos 25
punteros 38

Q
QFileSvr.400 4
QFileSvr.400 (QFileSvr.400), sistema de
archivos
descripcin 4
QFileSvr.400, sistema de archivos
descripcin 4
QNetWare, sistema de archivos 4
caractersticas y limitaciones 69
descripcin 4
QOPT 5

R
raz (/), sistema de archivos
caractersticas y limitaciones
descripcin 5
red, sistema de archivos 4
descripcin 4

48

S
seguridad
funciones (API) 33
limitaciones del sistema de archivos
QNTC 73
limitaciones en el sistema de archivos
QFileSvr.400 62
mandatos 16
manejo en programas 39
servidor de archivos 5
servidor de archivos de PC 5
servidor de archivos OS/400 5
servidor de archivos OS/400
(QFileSvr.400), sistema de archivos
caractersticas y limitaciones 59
sistema de archivos
qu es? 4
biblioteca (QSYS.LIB)
caractersticas y limitaciones 51
descripcin 5
comparacin 45
de servidor de archivos OS/400
(QFileSvr.400)
caractersticas y limitaciones 59
definido por el usuario, sistema de
archivos
descripcin 5
interfaz 5
migrar objetos 25
NetWare (QNetWare), sistema de
archivos
caractersticas y limitaciones 69
ptico (QOPT)
caractersticas y limitaciones 56

OS/400 Introduccin al sistema de archivos integrado V4R5

sistema de archivos (continuacin)


QNetWare, sistema de archivos
descripcin 4
raz (/)
caractersticas y limitaciones 48
descripcin 5
servicios de biblioteca de documentos
(QDLS)
caractersticas y limitaciones 54
descripcin 4
servidor QNTC
caractersticas y limitaciones 72
sistema de archivos de red
caractersticas y limitaciones 67
descripcin 4
sistema de archivos definido por el
usuario
caractersticas y limitaciones 63
sistema de archivos ptico (QOPT)
descripcin 5
sistema de archivos QFileSvr.400
(QFileSvr.400)
descripcin 4
sistema de archivos QNTC
descripcin 4
sistemas abiertos (QOpenSys)
caractersticas y limitaciones 49
descripcin 4
transferir archivos 25
ventajas 2
sistema de archivos de biblioteca
(QSYS.LIB)
caractersticas y limitaciones 51
descripcin 5
sistema de archivos de red
caractersticas y limitaciones 67
sistema de archivos de servicios de
biblioteca de documentos (QDLS)
caractersticas y limitaciones 54
descripcin 4
sistema de archivos de sistemas abiertos
(QOpenSys)
caractersticas y limitaciones 49
descripcin 4
Sistema de archivos de Windows NT
Server (QNTC)
caractersticas y limitaciones 72
sistema de archivos definido por el
usuario
caractersticas y limitaciones 63
sistema de archivos integrado
por qu utilizarlo? 2
qu es? 1
interfaces de programacin
lista de funciones 33
programa de ejemplo 77
punteros y descriptores de
archivo 38
reglas de nombres de vas de
acceso 36
seguridad 39
soporte de idioma nacional 41
utilizacin en programas C 32
mandatos
lista 16
reglas de nombres de vas de
acceso 19

sistema de archivos integrado


(continuacin)
utilizacin 16
mens y pantallas
reglas de nombres de vas de
acceso 19
utilizacin 15
trabajar desde PC
cmo estn representados los
sistemas de archivos 25
trabajar desde un PC
interaccin con directorios y
objetos 22
sistema de archivos jerarquizado (HFS)
utilizacin de API para el sistema de
archivos QDLS 54
utilizacin de las API para el sistema
de archivos QOPT 56
sistema de archivos pticos (QOPT)
caractersticas y limitaciones

56

sistema de archivos QDLS


caractersticas y limitaciones
descripcin 4

54

sistema de archivos QFileSvr.400


caractersticas y limitaciones
sistema de archivos QNTC

59

caractersticas y limitaciones
descripcin 4

72

sistema de archivos QOpenSys


caractersticas y limitaciones
descripcin 4

49

sistema de archivos QOPT


caractersticas y limitaciones
descripcin 5

56

sistema de archivos QSYS.LIB


caractersticas y limitaciones
descripcin 5
socket

51

41

soporte de idioma nacional

2, 13, 41

T
TCP/IP en el sistema de archivos
QFileSvr.400 60

U
unicode

13

ndice

95

96

OS/400 Introduccin al sistema de archivos integrado V4R5

IBM

Das könnte Ihnen auch gefallen