Home→Forums→MonoBrick EV3 Firmware→memory specifications for Mono FW
- This topic has 5 replies, 3 voices, and was last updated 10 years, 6 months ago by Helmut Wunder.
-
AuthorPosts
-
May 11, 2014 at 08:28 #4298
Helmut WunderParticipantheya,
what are the exact memory specifications for Mono FW on EV3?
Is this depending (and by what degree) on the 512k, 2G, or 4G image ?Given one has a 16GB SD card what are the maximum amounts:
– static stored data like several stored programs, accessory data files like look-up tables or init~ or log files (flash)
– actively executable program code (RAM, possibly flash)
– is the memory for an executable program organized by stack and heap?
– usable static memory for variables (RAM, possibly flash)
– usable dynamically allocated memory for variables (RAM, possibly flash)
– how much of the available memory (flash and RAM) is used by Linux OS ?
– how much of the available memory (flash and RAM) is used by the .net VM ?
May 11, 2014 at 21:31 #4317
Lars JeppesenKeymasterHi,
I will try to answer your questions to my best knowledge.
The reason for the different image sizes is that the image contains the complete SD card, including the partition table.
This means that we have to decide the sizes of the partitions when we make the image.
The image contains 2 partitions. 1 FAT of 50MB and the rest is an EXT3 partition.
If you write the 2GB image to a 16GB flash card you will still have an 50MB FAT partition and a (2GB-50MB) EXT3 partiton.
The rest 14GB of the SD card will not be allocated.
If you want to have use all of a 16GB it is possible to make the image directly from the source (https://github.com/Larsjep/monoev3image)– static stored data like several stored programs, accessory data files like look-up tables or init~ or log files (flash)
Depends on the size of the EXT3 partition. Linux and the Mono runtime takes about 400MB.
– actively executable program code (RAM, possibly flash)
When the system is started it uses about 24MB af RAM. The EV3 has 64MB ram, so this leaves apx. 40MB for your programs.
This can be extended by creating a swap file, but this will be very slow.– is the memory for an executable program organized by stack and heap?
Yes internally. But the mono runtime will take care of this for you.
– usable static memory for variables (RAM, possibly flash)
– usable dynamically allocated memory for variables (RAM, possibly flash)
The memory space for variables, dynamically allocated and executable code is the same. See previous answer.
– how much of the available memory (flash and RAM) is used by Linux OS ?
Around 24MB of the 64MB available.
– how much of the available memory (flash and RAM) is used by the .net VM ?
Sorry, but I have no idea.
Regards
Lars- This reply was modified 10 years, 6 months ago by Lars Jeppesen.
May 11, 2014 at 21:58 #4319
Helmut WunderParticipantthank you very much for your detailed reply, it helped me a lot to understand more about this system.
So using the 4GB image will actually not be a limitation.
40 MB RAM is fine, and it’s very interesting that we may have optionally a swap file additionally – I’ll keep that in mind if I’ll once run in lack of memory 😎May 15, 2014 at 16:40 #4346
Helmut WunderParticipantwhat will happen if I enlarged the partion sizes for FAT and EXT3 manually, e.g. using the “Partition Magic” disk tool?
Will it still work as expected?May 16, 2014 at 09:27 #4350
Anders SøborgKeymasterHi
I am not sure – I haven’t tried it. Try it yourself and let us know what happens…
Anders
May 16, 2014 at 10:12 #4351
Helmut WunderParticipantI surely will – ASAP, i.e.: as soon as USB file upload will be enabled 😎
-
AuthorPosts
You must be logged in to reply to this topic.
Follow