Menu

MyNOS - My! Not another Operating System / News: Recent posts

New IPC for mynos-core

The microkernel IPC was re-designed (and re-implemented) from scratch. It uses ports and channels (similar to ports and sockets) and a message can be shared or not, in the latter case the pages are copy-on-writed from sender to receiver (if the message is very short then is copied).
Other improvements and bug fixes was also introduced.

Posted by Cesare Zavattari 2004-09-01

Copy-On-Write

Copy-On-Write has been implemented in mynos-core kernel.

Posted by Cesare Zavattari 2003-11-07

Threads support

Support for threads was added to the kernel. The model is pretty clean: every thread belongs to the same process (same pid) and a fork duplicates the whole process (every thread).

Posted by Cesare Zavattari 2003-08-18

Soft taskswitch and more...

The mynos-core taskswitch policy changed from hardware (jump to tssd) to software. In the meanwhile the fork implementation changed and the sched() function was added too.
Next steps will be threads, timers and a real scheduler.
Stay tuned!

Posted by Cesare Zavattari 2003-07-30

Progress report

Advanced IPC under specification phase; in the meanwhile we have developed and tested the serial driver (running as a daemon process as the keyboard one). Services can register dynamically with the kernel. A screenshot shows the daemon printing a message received from the serial port (using bochs and the serial port emulation). We have conducted a private test sending messages via the serial port from/to a sinclair spectrum old computer.
List of available daemons: keyboard, serial, simple readonly ramdisk, ocaml virtual machine.

Posted by Cesare Zavattari 2003-04-07

MyNOS! has Semaphores!

Semaphores have been implemented. Now there is also a first implementation of process queues management.

Posted by Tommaso Schiavinotto 2002-11-26

IPC buffer check implemented

The Inter Process Communication buffer check is now implemented.

Posted by Cesare Zavattari 2002-11-20

IPC implemented: MyNOS reaches Alpha state!

After a long night's work, a preliminary version of IPC has been implemented. Currently, send, receive and receiveAll are implemented. Send and receive take a pid as the party's identification, and all communication primitives work in either synchronous or asynchronous (nonblocking) mode. Limitations: no control over buffer permissions, the trasmission involves 2 copies of the message.

To test the behavior of the communication syscalls, a simple readonly ramdisk service has been implemented. MyNOS is now a microkernel with its first service.... read more

Posted by alley 2002-11-09

About to go alpha: roadmap.

We are eager and willing to switch from "planning" to "alpha" stage. Some of the things that are presently in the kernel are preliminar, but some are stable. Even if we want to improve all components, we know we will not until we get to a more complete system, using which the necessity to improve such components arises.

For this reason, efforts will take place in the near future to take the project to a point where we can claim alpha stage. To do so, we need to implement interprocess communication (IPC). A preliminary, simple-minded implementation will do, for now; either way, it'll call for synchronization mechanisms like mutexes, some sort of scheduler, etc.... read more

Posted by alley 2002-11-06

Static ELF format supported!

Kernel can load static ELF modules. Ocaml virtual machine has been successfully tested.

Posted by Tommaso Schiavinotto 2002-11-04

ocaml virtual machine ran on mynos kernel!

we have compiled and linked the ocaml virtual machine against the dietlibc and ran it as a process on mynos kernel, using as a input a simple program in ocaml bytecode. it works (see screenshot page)

Posted by Cesare Zavattari 2002-10-22

Fork implemented

Fork has been implemented (in a simple fashion) without copy-on-write. If you can provide us with info on how to implement copy-on-write for nested forks please contact us.

Posted by Cesare Zavattari 2002-10-11

Allocate-on-fault

The allocate-on-fault feature was added in the past days to the MyNOS pages management.

Posted by Cesare Zavattari 2002-10-03

MyNOS memory management under development

the kernel memory management is under development. Paging is already enabled. We are coding the pages management and a malloc prototype.
Soon the code will be available on cvs.

Posted by Cesare Zavattari 2002-01-08