Re: [pok-devel] ARINC-653 intrapartition communication compatibility

[ Thread Index | Date Index | More Archives ]

On 02/20/2014 08:30 PM, Maxim Malkov wrote:
> I'll post a message describing changes that I've already made
> tomorrow. Maybe it will be immediately obvious what can possibly break. 
I probably forgot many changes that I've made, but here's at least some
of them:

ARINC layer:
 * buffers, blackboards, semaphores and events can no longer be created
in normal operating mode
 * many improvements in invalid parameter handling
 * internal POK error code are correctly mapped to ARINC ones

 * memcmp no longer compares four times more data than requested
 * not a change in libc itself, but looks like I eliminated all the code
that ever used terrible streq

Middleware layer:
 * buffers, blackboards, semaphores and events names are no longer static
 * Each buffer message now contains message length (i.e. RECEIVE_BUFFER
returns the same message length that has been passed to SEND_BUFFER)
 * Non-blocking semaphore check

 * Basic preemption locking (+ ARINC interface)
 * Lockobj fixes (some code paths were incorrect wrt. spinlock, certain
syscalls returned incorrect value) and improvements (nonblocking trylock)
 * Some fixes in the scheduler

Bottom line: after all the fixes, the only problems with intrapartition
services I'm aware of are releated to missing functionality in scheduler
(mostly, priority levels). I still have to test interpartition services,
error handling and misc. stuff.

Maxim Malkov
Software Engineering Department, ISPRAS

Mail converted by MHonArc 2.6.19+