Thomas Dorner wrote recently:
!So here are my questions to the OS390 folks:
!
!Does the new PerlIO works like that for you too?
I cannot say since I no longer have access to OS/390 (now called z/OS).
!Do you have something like different filesystems with different encodings
on
!OS390? (E.g. in our BS2000 Posix subsystem we have a root filesystem
using
!EBCDIC encoding and the developers home directories below /home on an
ASCII
!filesystem. That way we can access the home directories with something
!similar to Samba from our PCs.)
In principle the answer to your question is "yes there are different
encodings for different filesystems", however most useful are the EBCDIC
based ones. For example the HFS or Hierarchical File System used
by the z/OS POSIX subsystem uses code page 1047, whereas older may
traditional
code pages are used for the traditional "data set" file system used
by TSO && CLIST commands. Both cp 1047 and the older code pages in use
are EBCDIC based.
!If yes, is there some automagical conversion done when working with files
!from an ASCII filesystem? (Above trick with the automatic conversion
!switched on with the environment variable IO_CONVERSION works for almost
!every program in the BS2000 Posix subsystem.)
Yes automagical conversion takes place mostly at what I might
(possibly inaccurately call) the application interface layer.
Examples include terminal emulators that may need to telnet or
rsh into z/OS, ftp servers, nfs clients and server, as well as
web servers. Internal to the program running on z/OS everything
may appear to be using code page 1047. Externally to tcp/ip sockets,
or even to block mode terminal emulators characters are transcoded.
There is a fast table that is ususally loaded into primary system
memory that does the transcoding and does it rather quickly.
The addition looks good and would be appropriate for either
README.bs2000 or pod/perlebcdic.pod in my opinion. If the latter
be sure that it is added in a spot clearly labelled for bs2000
and/or posix-bc since the environment variables IO_CONVERSION does
not work on z/OS (whereas calling chcp from the shell might, but usually
not useful in the POSIX subsystem).
Peter Prymmer