| ??? 06/13/08 06:43 Read: times |
#155794 - code memory limitations and OS Responding to: ???'s previous message |
Alex Cos said:
The project aim is to develop an entire software stack, from the scratch, on a resource poor chip. I specified (at the beginning of the project) that a resource poor chip is an ATMega128 or similar. "Resource poor" is apparently a very relative term. In the 8-bit microcontroller world, the ATMega128 is a rather big shot... Alex Cos said: then it is relatively easy to use a segmented code memory with the 64kB limit applying to the sum of the OS core ("kernel") plus the biggest thread.
Till Now I have an operating system with preemptive threads support[...] Note, that the ATMega's 128kB (64kword) code memory limit is ultimative (or, more precisely, the biggest existing AVR has 256kB code memory, so if you blow that limit with the code there are no more options); whereas there are several '51 derivatives available, where external *code* memory can be attached (even a "von-Neumanized" RAM for processor-like operation), which can go up to infinity in capacity, implementing some paging scheme (this does not apply for the SiLabs variety, though). I am mentioning this because your approach uses these chips as a processor, not as a controller. This is not to say you should make your decisions based on this fact, just maybe a line or two to add to your thesis. JW |



