Network & Security IT - Le RSI
Check news about my company
Name : MPC-OS
Author : Alexandre Fenyo (firstname.lastname@example.org)
Target OS : FreeBSD 3.x
Programming language : C (kernel & user-level), C++, perl
Libraries : STL(C++), xforms
Download : MPC-OS-5.tar.gz
Web : http://mpc.lip6.fr
MPC-OS is the Operating System of the MPC parallel computer.
MPC-OS contains about 40000 lines of mixed C/C++/perl/shell/XWindow software featuring :
- source and binary distribution available for FreeBSD-3.x
- self configuration and compilation of the package (automake/autoconf)
- basic kernel communication layers : hsldriver, PUT, SLR/P, SLR/V
- optimized implementation of secure layers : DDSCP, RFCP, SFCP, MICP
- advanced memory locking system (wiring the ranges of virtual addresses during inter-nodes DMA)
- multithreaded Object Request Broker development toolkit
- manager for negociation of resources (built on top of the multithreaded ORB). The Loader daemon handles task activation. The manager handles new task activation (throw communications with the Loader daemon), application classes creation (task managment), channel negociations between tasks and allocation/deallocation of kernel data structures for communication end-points.
- Automatic computation of routing tables from a description of the topology of the network
- many external daemons and programs (monitoring, benchmarking, etc.) :
- - hslclient (RPC transport and configuration client)
- - hslserver (RPC transport and configuration server)
- - getevents (kernel events retriever)
- - vmspace (memory analyser)
- - init_pcibus (configuration of PCI bus)
- - readpci (read from PCI configuration space on a device)
- - writepci (write to PCI configuration space on a device)
- - readphys (direct read in physical memory)
- - writephys (direct write in physical memory)
- - dumpPCIDDC (dump the internal tables used by PCIDDC)
- - dumptables (dump internal tables used by SLR/SCP)
- - testputbench (benchmark and test program for layer PUT)
- - testputrecv (test program for layer PUT)
- - testputsend (direct access to PUT API)
- - prot_dump (dump the MPC-OS vm map entries used to wire data)
- - prot_garbcoll (start a garbage collection inside the MPC-OS vm map entries)
- mpcview : a graphical XWindow interface to manage PCIDDC
- user-level layer PUT (useraccess library)
- MDCP, a new layer on top of SLR/P, provides read/write primitives without any callback function to handle (easier to use than lower level kernel layers - Note that MDCP is still `zero-copy' if the write() primitive is called before the read() one)
- SELECT implementation to wait for events on file descriptors and channels in the same time
- libmpc : user level library allowing the user to make requests to the manager (spawn tasks, channel allocation...) and to the MDCP kernel layer
- libsocketwrap is a shared object that wraps the socket API and maps those syscalls into libmpc calls. This library can be dynamically linked into any application to provide a binary compatible port to MPC-OS. libsocketwrap has been tested with the MPICH implementation of MPI, on a 2 nodes MPC computer (testbench : distributed computation of PI). libsocketwrap needs a little work to become fully functionnal with other high level toolkits
- many examples of use (addlpe, fetchobj, on, off, receivelpe, testrecv, testrecv2, testrecv2wait, testrecvv, testsend, testsend2, testsend2wait, testsendv, testuseraccess, vmtest, prot_wire)
- emulator of PCIDDC and RCube chips on top of Ethernet for people wanting to start developing on MPC, without having any MPC computer
IP phone to analog phone interface circuit
At work, people usually do not get an analog phone line anymore since numeric or IP phones appeared. See how to connect your old analog device (modem, wireless DECT phone, Minitel) only using your IP phone to get the network access: read this.
Very low cost 20MHz signal generator for ham radio HF power amplifiers testing
Learn how to make a 20MHz HF signal generator using a few simple discrete analog components. Moreover, see how a 33 years old Tektronix oscilloscope gives better results than a numeric one bought recently. The whole story is here.
Split tunneling with Cisco
Enabling split tunneling with Cisco IPsec VPN Linux client software is always possible: read this.
Modelling IEEE Spanning Tree protocols using an UML Class Diagram
To really understand the dependencies between the many Spanning Tree protocols, I wrote an UML class diagram describing their relationships here.
Motorized camera controlled by the telephone
This project demonstrates how to drive a camera from the telephone line, any details here.
My Former Web Site
Since 04/26/01, I maintain a web site named www.fenyo.net. Since I made many updates recently, click here to access the original content, where old informations are kept. The photo is also from 2001 :-)
Agnes' Web Site
Agnes, my wife, maintains a web server where you will find plenty of original resources : free software from her own production, probability courses, exams' corrections, photos of her trips in the US... Do not hesitate to visit her site, she will be glad to see her access.log growing !
Canardou's Web Site
Canardou has always been for me a friend that really matters, helping me in every situation. According to informations currently available, Canardou could be affected by the H5N1 virus. So, for a few weeks, Public Health Bird Regulations have made me forbid Canardou to walk away from our appartement. Feel free to take news about him from his personal home page.