Spuldrfs: Difference between revisions
Jump to navigation
Jump to search
Line 10: | Line 10: | ||
* MFC data segment faults are handled by the driver. That means you do not have to worry about it. | * MFC data segment faults are handled by the driver. That means you do not have to worry about it. | ||
* Large data buffers which can be used for data exchange between SPU | * Large data buffers which can be used for data exchange between SPU and PPU. | ||
* Data buffers are not physically continuous which eliminates the RAM allocation problem. | |||
* Full access to all SPU registers from user-space. | * Full access to all SPU registers from user-space. | ||
Revision as of 14:58, 19 August 2012
Introduction
- spuldrfs is a Linux virtual filesystem which allows you to execute isolated SPU modules from user-space.
- spuldrfs is like spuisofs but can also execute loaders like lv1ldr or isoldr.
- I used this driver e.g. to run modified lv1ldr to dump my ENCDEC keys.
- spuldrfs.tar.gz: http://www.multiupload.nl/9OHEN8BQXF
Features
- MFC data segment faults are handled by the driver. That means you do not have to worry about it.
- Large data buffers which can be used for data exchange between SPU and PPU.
- Data buffers are not physically continuous which eliminates the RAM allocation problem.
- Full access to all SPU registers from user-space.
Mounting
glevand@debian:~$ sudo mount -t spuldrfs none /mnt
Filesystem Layout
glevand@debian:~$ ls -l /mnt total 0 -rw-rw-rw- 1 root root 1048576 Aug 16 10:33 buf1 -rw-rw-rw- 1 root root 1048576 Aug 16 10:33 buf2 -rw-rw-rw- 1 root root 1048576 Aug 16 10:33 buf3 -r--r--r-- 1 root root 0 Aug 16 10:33 info -rw-rw-rw- 1 root root 1048576 Aug 16 11:07 ldr -rw-rw-rw- 1 root root 262144 Aug 16 10:33 ls -rw-rw-rw- 1 root root 1048576 Aug 16 11:07 metldr -rw-rw-rw- 1 root root 131072 Aug 16 10:33 priv2 -rw-rw-rw- 1 root root 131072 Aug 16 10:33 problem --w--w--w- 1 root root 0 Aug 16 11:07 run -r--r--r-- 1 root root 4096 Aug 16 10:33 shadow glevand@debian:~$ cat /mnt/info buf1 d000000003746000 buf2 d000000003847000 buf3 d000000003948000 glevand@debian:~$