The reason why you can't simply launch a program using the .bin is because the program would still be limited by the 64k limit. Until they figure out how to run it in KERNEL mode rather than USER mode, no matter what you do with it, you'll still be limited by 64k. they're working on raising that limit via attempting system calls to get closer to the kernel....
I say just get some genius to write a downgrader that works within the 64KB limit and downgrade the 2.0s to 1.5... =/
Quote:
While it is correct that unsigned code is now running on 2.00 PSPs. However the code is running in USER mode not KERNEL mode.
For those who don't know what this means, code that runs in kernel mode (i.e. the PSP OS/firmware) is protected by the PSP hardware (CPU). Code running in user mode (games, apps) cannot access memory used by the kernel.
This means that at the moment, unsigned code can only access things that games/apps can access, such as the screen output, sound output and button/d-pad input. Unsigned code can only be run in the area of memory exploited by the buffer overflow (64Kb). In order to allocate enough RAM to run proper homebrew (e.g. emulators) kernel access is required. Only kernel code can allocate memory to user processes (homebrew). This is where we are at the moment. In order to get a fully exploited system, the kernel needs to be attacked. Then the PSP will be under total control of the homebrew code.
There are different layers of protection between user mode and kernel mode. Think of it as an onion where kernel mode is the core and user mode is the outer layer. As you remove the layers and move up privilige levels, you get closer to the kernel. You can make system calls in user mode which instruct the kernel to do various things but these calls are always controlled by the kernel and are not easy to exploit. By using system calls, it is possible to increase your privilige level and get closer to the kernel (peeling the layers from the onion). This will however take time and a lot more hardcore hacking to achieve.
|