home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
lvmtlk12.zip
/
readme.1st
< prev
Wrap
Text File
|
2002-06-02
|
7KB
|
155 lines
******************************************************************************
* THE IBM LOGICAL VOLUME MANAGER PROGRAMMER'S TOOLKIT *
******************************************************************************
This package contains the programmer's toolkit and API documentation for
the IBM OS/2 Logical Volume Manager. The Logical Volume Manager (LVM) is a
disk partition/volume management program which replaces the old 'FDISK'
utility.
This version of LVM is included in the following operating systems:
* OS/2 Warp Server for e-business
* Convenience Package (1 and 2) for OS/2 Warp Version 4
* Convenience Package (1 and 2)for OS/2 Warp Server for e-business
* eComStation
LVM has a great many features which set it above FDISK, including:
* 'Sticky' drive letters which may be arbitrarily assigned (i.e., not
dependent on disk geometry)
* Enables enhanced file system support (such as JFS)
* Allows repartitioning without rebooting
* Volume 'spanning' (combining several partitions into a single
logical volume, even across multiple hard disks)
* Dynamic volume expansion (when using the JFS file system)
* Support for long volume names (e.g. on the Boot Manager menu)
All of LVM's functionality (the 'LVM Engine') is contained in a system DLL
(LVM.DLL) which may be called directly by application programmers. This
toolkit and documentation provide programmers with the necessary information
for doing so.
ARCHIVE CONTENTS
----------------
README.1ST : This file.
LICENSE : A copy of the GNU General Public License.
JMA_TK.TXT : The original readme file written by John Martin Alfreddson,
who first compiled LVM.LIB.
'doc' directory:
This directory contains the API documentation, in IBM INF format.
LVMAPI1.INF : Documentation for 'lvm_intr.h' (LVM Interface).
LVMAPI2.INF : Documentation for 'lvm_cons.h' (LVM Constants).
LVMAPI3.INF : Documentation for 'lvm_gbls.h' (LVM Global Definitions).
LVMAPI4.INF : Documentation for 'lvm_type.h' (LVM Internal Types).
(Each of these books contains increasingly more esoteric information. Most
people will never even need to look at the contents of the fourth book.)
'include' directory:
This directory contains the header files required for using the toolkit.
lvm_intr.h : Main LVM header file (must be included in applications).
lvm_cons.h : Additional header file (included by lvm_intr.h).
lvm_type.h : Additional header file (included by lvm_intr.h).
lvm_list.h : Additional header file (included by lvm_intr.h).
lvm_gbls.h : Additional header file (included by lvm_intr.h).
'lib' directory:
This directory contains the import library required for using the toolkit.
LVM.LIB : Import library for linking with compiled programs.
'samples' directory:
This directory contains two sample programs, with source code.
lvmtest.cmd : Batch file for compiling lvmtest.cpp.
lvmtest.cpp : Source code for LVMTEST, a simple sample program.
Makefile : 'Make' file for querylvm.cpp.
querylvm.cpp : Source code for QUERYLVM, a more extensive sample program.
readme.txt : Notes on the sample programs.
'src' directory:
This directory contains the source code for the compiled toolkit and
documentation files (a GPL requirement).
ipfsrc.zip : IPF source code for the INF documents under 'doc'.
lvmtk.def : Definition-file source code for LVM.LIB (under 'lib').
INSTALLATION
------------
Copy the contents of 'lib' to a directory on your compiler's library path
(the %LIB% path for the IBM C/C++ Compilers).
Copy the contents of 'include' to a directory on your compiler's include
path (the %INCLUDE% path for the IBM C/C++ Compilers).
Copy the contents of 'doc' to a directory on your BOOKSHELF path.
Create a program object for the LVM API Documentation which calls VIEW.EXE
(or your favourite alternate help-file viewer) with the parameter:
LVMAPI1.INF+LVMAPI2.INF+LVMAPI3.INF+LVMAPI4.INF
Place the samples and the other files in this package wherever you please.
ACKNOWLEDGEMENTS
----------------
The toolkit and documentation are derived from the 'Reference OS/2 Code' located
in the CVS repository of the IBM Enterprise Volume Management System (EVMS) open
source project. They are licensed under the GNU GPL.
Whether or not programs written using this toolkit must also be licensed under
GPL is uncertain. Several people have told me that header files are considered
information and not code, thus programs written using them need not be GPL'd.
However, if you want to be legally safe, you might want to double-check with the
Free Software Foundation (http://www.gnu.org) before writing non-Free programs
using this toolkit.
LVM.LIB and the LVMTEST sample program were originally created and distributed
by John Martin Alfreddson.
The API documentation and the QUERYLVM sample program were created by Alex
Taylor.
The toolkit header files were written by IBM. They have been modifed slightly
(a few commas and one C++ comment marker were removed from lvm_list.h and
lvm_type.h) by Alex Taylor in order to fix some errors with certain compilers.
******************************************************************************
* NOTE *
* *
* There is a distinction made between LVM Version 1 and LVM Version 2. As *
* far as I can tell, all existing versions of LVM for OS/2 (including WSeB *
* and eComStation) are Version 1. *
* *
* However, the reference code published on the EVMS repository (from which *
* all this documentation is derived) seems to be for LVM Version 2. *
* *
* Some of the features described in the API documentation are specific to *
* Version 2, and are therefore unusable on OS/2 systems (at least until such *
* a day as LVM Version 2 is released). *
* *
* For more information, see LVMAPI1.INF. *
* *
******************************************************************************
--
Alex Taylor
http://www.cs-club.org/~alex
June 2 2002