The Network System Abstraction Layer (NSAL) project is an open source offering of over 8 years of effort on the part of Novell's eDirectory engineers to provide a high-performance virtual machine interface for network server software. The original purpose of NSAL was to provide an abstraction of system-level services. From this stand point, NSAL can be thought of as a functional equivalent of the POSIX standard (POSIX is broader in scope, however). The difference is that NSAL is written at a slightly higher level, allowing it to abstract system-level services on non-POSIX platforms, such as Win32.
NSAL provides the following portable services on NetWare, Win32, and POSIX compliant systems:
Our experience has shown us that a good operating system abstraction library requires a good philosphical basis. NSAL's philosophical basis is simple: Don't provide anything that can be built on top of NSAL in a portable manner, and don't provide anything that is already available in the C standard library (C99 standard where possible, C89 where necessary). Accordingly, NSAL doesn't provide string routines or a buffered file I/O API. Exceptions to the rule are made when significant additional functionality can be provided by NSAL's implementation of an interface. For example, NSAL provides memory management, even though the ANSI C library provides heap management. This was done because NSAL can provide a much richer set of diagnostics and debugging functionality beneath a heap management API. All decisions regarding the functionality that NSAL provides are made in this manner.
This project is just getting started. Please be patient. Platform binaries and source releases will be posted soon as a first open source release.
Browsing the Subversion tree gives you access to this project's shared source code and files. You may also view the complete histories of any file in the repository.
The subversion repository is at http://forgesvn1.novell.com/svn/nsal. Please refer to the NSAL Subversion access information page for detailed, platform-specific instructions on using this SVN repository link.
| Name | Position |
| Ahodgkinson |
© 2008 Novell, Inc. All Rights Reserved.