alex@wolf.umbc.edu (Alex Crain) (04/10/89)
Does anyone know how to do dynamic page allocation in unix-pc device drivers? Specifically, I want to use rminit(), rmalloc() and rmfree(), but I'm having trouble understanding exactly how they work, and I want to avoid the crash-n-burn method of finding out. I've got examples from 4.3BSD and I think the code from the IPC stuff came to me in my sleep (I would never dissassemble AT&T code), but its still a little vague. ThanX :alex Alex Crain Systems Programmer alex@umbc3.umbc.edu Univ Md Baltimore County umbc3.umbc.edu!nerwin!alex
alex@wolf.umbc.edu (Alex Crain) (04/14/89)
In article <1893@umbc3.UMBC.EDU>, alex@wolf.umbc.edu (Alex Crain) writes: > Does anyone know how to do dynamic page allocation in unix-pc > device drivers? Specifically, I want to use rminit(), rmalloc() and > rmfree(), but I'm having trouble understanding exactly how they work, and > I want to avoid the crash-n-burn method of finding out. You can't do dynamic page allocation rith the rm*() functions. These functions simple impose a first fit allocation algorithm over a block of existing memory. They are useful, but not in your case because you want to allocate fixed size buffers, so you're better off using a freelist allocation scheme. If you like, email me and I'll send you some sample code. > :alex > Alex Crain > Systems Programmer alex@umbc3.umbc.edu > Univ Md Baltimore County umbc3.umbc.edu!nerwin!alex I'm hoping that If I keep this conversation going, somebody might jump in... :alex Alex Crain Systems Programmer alex@umbc3.umbc.edu Univ Md Baltimore County umbc3.umbc.edu!nerwin!alex