A dedicated kernel for multi-threading applications.

Thursday, December 08, 2016

Pong from Toro

Hi folks, last days I have been spending some time in the network stack of Toro. It is a piece of code that I am scare to touch because most the time it does not work and I cannot figure out why. So I spent some time getting the good environment for testing and a lot of patient. As a result, I fixed a bug in the ne2000 driver and in the network stack so at least I have toro kernel answering pings. I will continue in this way doing more testing on the network stack. The code is there I just have to get so time to make it work. Enjoy the screenshots! ;)


Figure 1. Toro on QEMU detecting the network stack
Figure 2. I improved the serial console debug. Now it shows more interested info.

Figure 3. TORO VM answering pings


Sunday, October 30, 2016

CloudIt!

Hi folks, I committed the new script CloudIt.sh which is meant to unify the way than an application is compile within Toro and then run in a VM. The script accepts one parameter which is the name of a fpc application. For example, the following figure shows the use of the script to compile and run the ToroHello.pas

Figure 1
The script compiles the application within the Toro kernel (see Figure 2), and then, it generates a .img that can be run in a Qemu VM (see Figure 3).

Figure 2

Figure 3
To get the needed parameters to create the Qemu instance, the script looks for a .qemu which is named with the same name than the application, e.g., ToroHello.qemu. Such a file only contains the needed parameters to pass to qemu.  

The idea in ClouidIt.sh is to show Toro as a unikernel, in this case, for the fpc compiler. It enables a fpc programmer to compile an application within the kernel and then run it in a VM instance. To go further with this approach, Toro should be able to run in an hypervirsor like Xen. This remains a very interesting future work! :)  

Monday, April 18, 2016

Compiling and Testing TORO on Windows 10

Introduction 

Hi folks, I just fixed some bugs to compile Toro by using fpc-2.6.4, and to simulate it in Windows 10 by using qemu. I present some tips to do it.

Compilation 


I am currently using MIGW64 to compile TORO from the command line.  It is only necessary to run make in the toro-code/tests, and then, run the corresponding .sh file to compile the example, e.g., ToroHello.sh by invoking ./ToroHello.sh. The last commits fix any problem during the compilation. The outputting screen should look like in the picture. The needed tools for the compilation are MINGW64 for the make, Nasm for the compilation of the bootloader and fpc-2.6.4 for the build.pas. Once all installed, run the procedure presented above.  
  

Debuging

The debugging works well by using the last version of qemu. After installed it, it is only necessary to invoke the corresponding .sh by passing the -e argument, e.g., ./ToroHello.sh -e. By doing so, we get a pretty TORO outputing saying that he is alive. 




Wednesday, February 04, 2015

FOSDEM2015

Hi folks,

after a weekend in Brussels, I am again in Nice. It was a really interesting experience at FOSDEM. I put some pictures of the talk. I really enjoyed. I also left the link to the presentation. In any case, I think the presentation will be online soon at fosdem.org.

Regards, Matias.