iSCSI booting with U-Boot and iPXE
U-Boot has only a reduced set of supported network protocols. A major gap is the lack of a TCP stack.
For booting a diskless computer this leaves us with BOOTP or DHCP to get the address of a boot script. TFTP can be used to load the boot script and the operating system kernel and initial file system (initrd).
These protocols are insecure. The client cannot validate the authenticity of the contacted servers. And the server cannot verify the identity of the client.
Furthermore the services providing the operating system loader or kernel are not the ones that the operation system will use. Especially in a SAN environment this makes updating the operating system a hassle. After installing a new kernel version the boot files have to be copied to the TFTP server directory.
The HTTPS protocol provides certificate based validation of servers. Sensitive data like passwords can be securely transmitted.
The iSCSI protocol is used for connecting storage attached networks. It provides mutual authentication using the CHAP protocol. It typically runs on a TCP transport.
Thus a better solution than DHCP/TFTP boot would be to load a boot script via HTTPS and to download any other files needed for booting via iSCSI.
An alternative to implementing these protocols in U-Boot is to use an existing software that can run on top of U-Boot. iPXE is the "swiss army knife" of network booting. It supports both HTTPS and iSCSI. It has a script engine for fine grained control of the boot process and can provide a command shell.
iPXE can be built as an EFI application (named snp.efi) which can be loaded and run by U-Boot. Read more
Xypron GUI Components
GUI Components is a class library written in Java. It facilitates writing Swing applications.
Discrete Event Simulation
Xypron Discrete Event Simulation is a class library and application written in Java. It provides discrete event simulation for supply chains.
Xypron Statistics is a Java library which was developped with supply chain simulation in mind. The normal, the exponential and the gamma distribution have been included. Methods to calculate fill rate and order rate service levels as well as safety factors are provided. The Mersenne Twister algorithm is used to provide high quality random number generation.
GLPK for Windows
GLPK for Windows supplies Windows executables for the GLPK library.
GLPK for Java
GLPK for Java supplies a Java binding for the GLPK library.
The Linear Optimization Wrapper for Java provides an intuitive interface.
GLPK for C#/CLI
GLPK for C#/CLI supplies a Common Language Interface binding for the GLPK library.
Statistics for MySQL
Statistics for MySQL provides additional statistical functions (like Pearson's coefficient of correlation) which are missing in MySQL. DLLs for 32 and 64bit Windows as well as makefiles for Linux are available.
MediaWiki Extension: Require Editor Privilege
The Require Editor Privilege extension for MediaWiki adds two new user groups: editors and readers. Readers can read any article that a user could read in a standard wiki. Editors can do anything a user could do in a standard wiki. Users without the readers privilege can view the main page only.
Graphical Category Browser for MediaWiki
The Graphical Category Browser adds graphs to the category pages showing the relationships to other categories. A special page "Graphical Categories Browser" is added, showing a network diagram of all categories.