This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

supervisor mode

Hello,

is it quite normal, that a arm9 microcontroller starts in the supervisor mode? How could I changed the mode into user mode? Or is it better to work in the supervisor mode?

I've only the startup file and a short main.c file

#include <stdio.h>

int main(void)
 {

 while(1);

}

In the startup file I only can see that every mode will be initialized.

best regards
tobi

Parents
  • is it quite normal, that a arm9 microcontroller starts in the supervisor mode?

    Well, it sort of has to. If it started in user mode, there wouldn't be a way to enter supervisor mode (because that's exactly what code running in user mode is not allowed to do). That's probably true for any processor that supports differen execution modes/rings.

    Usually, you need to worry about switching modes when you're writing an operating system. If you're using an OS out of the box, then the OS will take care of that for you, provided that you stick to the documentation as far as OS startup and initialization goes.

Reply
  • is it quite normal, that a arm9 microcontroller starts in the supervisor mode?

    Well, it sort of has to. If it started in user mode, there wouldn't be a way to enter supervisor mode (because that's exactly what code running in user mode is not allowed to do). That's probably true for any processor that supports differen execution modes/rings.

    Usually, you need to worry about switching modes when you're writing an operating system. If you're using an OS out of the box, then the OS will take care of that for you, provided that you stick to the documentation as far as OS startup and initialization goes.

Children