License Φ Download Φ Books&Manuals Φ Team Φ Home
The Creators Update version of Windows 10 (64bit) was released in April 2017 featuring a pretty complete Linux based on a special version of Ubuntu (64bit). This sub-system is providing Linux on Windows using the native Windows API to let Linux programs run under a 'bash' shell. This can be used to directly run a ConceptBase server (CBserver) on such a Windows 10 machine.
To enable Linux under Windows 10, follow the instructions at MSDN Bash on Ubuntu on Windows. The installation procedure has three steps (details in the MSDN link):
The third step has to be repeated for each user on your local Windows computer who wants to use the Linux sub-system. If you have only a single user account on your Windows computer, then execute step 3 just for this user. Afterwards, you can enter Linux commands by running the 'bash' app, e.g. inside PowerShell or directly. The Ubuntu/Linux system is also 64bit and complete enough to run the CBserver. The whole installation process takes 10-15 minutes. Step 3 is downloading and installing the Linux sub-system.
The Linux sub-system is elegantly integrated into Windows by providing the 'bash' application. This can be called within plain Windows batch files. In ConceptBase, this is used to call the Linux version of the CBserver via a bash call inside the batch file cbserver.bat. The CBserver is a Linux 64bit binary. It does however run just fine under Windows since the Linux sub-system hooks all Linux API calls to corresponding Windows API calls. The server gets the whole memory address space of the Windows machine.
Note 1: The 'bash' app is a 64bit program. It is not visible to 32bit programs such as Java (32bit). Hence, you must install Java (64bit) under Windows (64bit) to start up the CBserver from the CBIva user interface of ConceptBase. To use the new capability, you need to install ConceptBase V8.04 (2017-05-24) or later.
Note 2: The implementation of the IP protocol under Windows allows several server processes to work on the same port number. The first one is then the active one and the others are waiting. Under Linux, attempts to start a 2nd server leads to an error ("Unable to bind socket to name") and the 2nd server is aborted. Though the CBserver in Windows is started with the Linux sub-system, it still inherits the bahavior wrt. ports from Windows. So be aware not to start several CBservers unintentionally.
The CBIva user interface is started by the batch file cbiva.bat under Windows. Sometimes, Windows reports that java.exe could not be started correctly. This is a temporary failure. Just start CBIva a second time. It may also occur that the user interface fails to make a connection to a local CBserver that is started via CBIva or via CBGraph. If you encounter this problem, then start the CBserver with the batch file cbserver.bat before you start CBIva or CBGraph. You can then connect to this CBserver.
University of Skövde, Sweden