I've done the porting to RTL 3.0 of the RTAI Dynamic Memory Manager
(rt_mem_mgr) distributed with RTAI-1.5.
It works for me, but I'd like that some RTL experts verify that all is Ok.
Here is a list of main changes for the porting:
---------------------------------------------------------------------------------
flags = rt_spin_lock_irqsave(&rt_mem_lock); // RTAI
rtl_spin_lock_irqsave(&rtl_dmm_lock, flags); // RTL3.0
---------------------------------------------------------------------------------
rt_spin_unlock_irqrestore(flags, &rt_mem_lock); // RTAI
rtl_spin_unlock_irqrestore(&rtl_dmm_lock, flags); // RTL3.0
---------------------------------------------------------------------------------
alloc_sysrq.srq = rt_request_srq(0, rt_alloc_sysrq_handler, 0) // RTAI
alloc_sysrq.srq = rtl_get_soft_irq (rtl_alloc_sysrq_handler, "rtl_dmm") // RTL3.0
---------------------------------------------------------------------------------
rt_pend_linux_srq(alloc_sysrq.srq); // RTAI
rtl_global_pend_irq(alloc_sysrq.srq); // RTL3.0
---------------------------------------------------------------------------------
void rt_alloc_sysrq_handler(void) // RTAI
void rtl_alloc_sysrq_handler(int irq, void *dev_id, struct pt_regs *p) // RTL3.0
---------------------------------------------------------------------------------
kmalloc(granularity, GFP_KERNEL) // RTAI
kmalloc(granularity, GFP_ATOMIC) // RTL3.0
---------------------------------------------------------------------------------
I can make source public if you give me a FTP server.
Regards,
Joel
Karim Yaghmour wrote:
>
> You can dynamically allocate memory in real-time using the rt_mem_mgr
> stuff in RTAI.
>
> Cheers
>
> Karim
>
> [EMAIL PROTECTED] wrote:
> >
> > I remember seeing many discussions on the list about memory allocation,
> > but i am failing to find them now.
> > I remember that you can only do memory allocation in initmodule. Is
> > this right? I would like to allocate a few
> > kbytes either in a fifo handler or a real time thread. Is this ok?
> > eric
> >
>
> ===================================================
> Karim Yaghmour
> [EMAIL PROTECTED]
> Operating System Consultant
> (Linux kernel, real-time and distributed systems)
> ===================================================
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/