github jrohel/NetMount client-v1.6.0,server-v1.6.0,ninstall-v1.0
NetMount client version 1.6.0, server version 1.6.0, and ninstall version 1.0

8 hours ago

Changes in NetMount client version 1.5.0 -> 1.6.0

Features

  • Support hexadecimal numbers in arguments

    NetMount still accepts numbers in decimal by default, but if a number in an argument starts
    with "0x" or "0X", it is now interpreted as a hexadecimal number.

  • Read-ahead buffering for file reads

    By default, it uses a 64-byte buffer and, when reading files, requests at least 64 bytes
    from the server to fill this buffer - assuming that subsequent reads will be sequential and
    can be served directly from it. This change results in up to 64x faster reads when
    the application reads 1 byte at a time, and 16x faster for 4-byte blocks. Read-ahead buffering
    also reduces the load on the network and the NetMount server. Serving a single 64-byte read is
    much less demanding than handling 16 separate 4-byte requests, or 64 one-byte requests.

    The size of the read-ahead buffer is configurable using the /MIN_READ_LEN:<length> argument.
    The <length> value may be one of the following: 0, 1, 2, 4, 8, 16, 32, or 64.
    Setting it to 0 disables read-ahead buffering entirely.
    If the /MIN_READ_LEN:<length> argument is not provided, the default value of 64 is used.
    This setting is independent for each mounted drive. However, internally, the NetMount client uses
    a single shared 64-byte read-ahead buffer for all mounted drives, and the setting determines
    how many bytes from the beginning of the buffer are used by each drive.

    Read-ahead buffering is applied only when the read request is smaller than the configured buffer
    size. Larger reads bypass the buffer.

Other

  • Optimize memory usage

    Release environment from memory, and do it during the INSTALL phase

  • Extend validation of arguments

  • Add 8086/80286 targets to Makefile and disassembly

  • Add documentation section on sharing a network interface with other applications

Changes in NetMount server version 1.5.0 -> 1.6.0

Features

  • Improve server file names conversion to DOS 8.3 format

    Previously, invalid characters in filenames were removed.

    The updated logic now attempts to transliterate Unicode characters to ASCII.
    It removes combining characters (accents, diacritics, etc.) and replaces
    non-ASCII characters with their ASCII equivalents.

    By default, the transliteration mapping table is loaded from the file
    "netmount-u2a.map", but the path can be changed using the --translit_map_path=<PATH> argument.
    Setting <PATH> to an empty string disables the use of the mapping table.

    The mapping table is user-extensible and can be customized easily.
    If a Unicode character is not found in the mapping table, it is replaced by an underscore '_'.

    Examples:

    original name old conversion new but missing map file new conversion
    data.tar.gz DATATA~1.GZ DATA_TAR.GZ DATA_TAR.GZ
    NašePísně.doc NAEPSN~1.DOC NA_EP_~1.DOC NASEPI~1.DOC
    píseň.txt PSE~1.TXT P_SE_.TXT PISEN.TXT
    история.txt ~1.TXT _______.TXT ISTORIJA.TXT

Added NInstall DOS utility

The "ninstall" utility installs the DOS TSR NetMount driver using parameters specified
in a configuration file. Specifically, it launches "NETMOUNT INSTALL" in the current working
directory and passes the supported parameters from the file as command-line arguments.
The user may also provide additional arguments.

The configuration file must contains lines in the format "<key> <value>".
Supported keys are: "IPADDR", "NETMASK", "GATEWAY", "PACKETINT", and "MTU".
The file must include the "IPADDR" key; all other keys are optional.
All other lines are ignored.

This format was chosen to be compatible with the configuration file used by the mTCP project.
For example, a file generated by the mTCP DHCP client can be used directly.

Binaries

The release includes the complete NetMount source code (server, DOS client, and the NInstall DOS utility), as well as:

  • 2 builds of the DOS client: for 8086 and 80286 CPUs
  • 2 statically linked builds of the server for Windows: for i686 and x86_64 (cross-compiled using MinGW on Linux, tested using Wine on Linux, and on Windows XP SP3)
  • 4 statically linked builds of the server for Linux: i686, x86_64, ARM aarch64 big endian, ARM aarch64 little endian
  • 1 build of the DOS utility NInstall for the 8086 CPU
  • the "netmount-u2a.map" file with the transliteration table

For transliteration of Unicode characters in filenames to ASCII, the file netmount-u2a.map
with the transliteration table must be placed next to the server binary.
If this file is missing, non-ASCII characters will be replaced with underscores (_).

Previously, DOS binaries were built under Wine using the Windows version of Open Watcom v2.
They are now built using the Linux version of Open Watcom v2.

Don't miss a new NetMount release

NewReleases is sending notifications on new releases.