use multiple ramdisks
im in trouble with my ramdisk, because its to small for my application i want to cross-compile for an embedded system. in fact i have only a precompiled kernel and cant change the settings of the kernel. the kernel is configured for ramdisks with a maximum size of 20MB.
i have a montavista toolchain but dont have a montavista distribtion, because its a way too expensive.
so .. the question. i want to try if its possible to use multiple ramdisks for my embedded linux. one ramdisk as root i already have. and the other as partitions or sth. if i start the kernel with exec 0x01600000 -c ".. root=/dev/ram initrd=.." it only boots with the given ramdisk. whre can i apply a second ramdisk to use as extra filesystem to gain more usable space? is this possible?
hoping for help.
If it is a Linux-based distribution, real-time or not, then it has to be freely available. They can charge for support, but not for the code itself. Have you tried to get the distribution software from them, without support?
this distribution (monta vista) isnt freely available. of course its linux based.
i have to buy a license which is extremly expensive. i already write an email to monta vista and they say, there is nothing get for free .. the version i need has also expired.
so there is still the problem with the ramdisks
Well, while under the LPGL they can incorporate proprietary libraries and such, any changes to the kernel are, AFAIK, required to be available as source code upon request. Also, since the ramdisk size is a simple configuration issue (the size is probably specified in a configuration file or script) then it should be possible for you to expand the contents of the installation CD or floppy and make those modifications yourself, then burn your own boot/installation media.
In any case, I am thinking of reporting this to the FSF and Kernel.org to see if MonteVista is violating the terms of their licenses. They wouldn't be the first company that the FSF has sued (successfully) for release of the source code in such circumstances. MonteVista can certainly charge for a "license" to thier proprietary code, or for support, but something like this, to make it impossible for a user to reconfigure the OS to their needs, expired license or no, is unconscionable, in my opinion.
oh .. i think you misunderstood. (or my explaination was bad^^)
i need this distribution, because the toolchain i have is provided by them. using the toolchain with ubuntu doesnt work for me. the distributer of the embedded system used montavista .. so they had a license. but me as an enduser, dont have this license.
im really not sure, whether they make theier source code available, or not.
so, whats with this multiple ramdisks fact?
Unfortunately, I don't have any experience configuring ramdisks on Linux, though it should be simple enough to determine how to mount one. My guess is that the /etc/fstab in your embedded system bood device has the ramdisk mounted, but without knowing how it is configured, I don't know for sure. Does the embedded system have a telnet or ssh port active so you can access it directly?
yes, i can access via minicom directly to the embedded system.
i know how to boot with one ramdisk .. its initrd and stuff as a boot command.
but im not sure how to include a second one directly from linux, because the place of the ramdisk isnt defined .. i only know the address on the flash .. sth like 0x0045ac34 .. writing this address in fstab isnt possible.
actually im using nfs to work with. of course it isnt a good solution because the server has to be online the whole time the embedded system is working.
Check this link: Linux Ramdisk mini-HOWTO
It might help with what you want to do.