97 lines
4.8 KiB
Plaintext
97 lines
4.8 KiB
Plaintext
Title: Safe Memory Access
|
|
|
|
Description:
|
|
|
|
This test verifies that the safe memory access (_mem_safe) functions as
|
|
intended.
|
|
|
|
---------------------------------------------------------------------------
|
|
|
|
Building and Running Project:
|
|
|
|
This nanokernel project outputs to the console. It can be built and executed
|
|
on QEMU as follows:
|
|
|
|
make qemu
|
|
|
|
---------------------------------------------------------------------------
|
|
|
|
Troubleshooting:
|
|
|
|
Problems caused by out-dated project information can be addressed by
|
|
issuing one of the following commands then rebuilding the project:
|
|
|
|
make clean # discard results of previous builds
|
|
# but keep existing configuration info
|
|
or
|
|
make pristine # discard results of previous builds
|
|
# and restore pre-defined configuration info
|
|
|
|
---------------------------------------------------------------------------
|
|
|
|
Sample Output:
|
|
|
|
testing SUCCESS of READ on RO memory with width 1.......PASS
|
|
testing SUCCESS of READ on RO memory with width 2.......PASS
|
|
testing SUCCESS of READ on RO memory with width 4.......PASS
|
|
testing FAILURE of WRITE on RO memory with width 1.......PASS
|
|
testing FAILURE of WRITE on RO memory with width 2.......PASS
|
|
testing FAILURE of WRITE on RO memory with width 4.......PASS
|
|
testing SUCCESS of READ on RW memory with width 1.......PASS
|
|
testing SUCCESS of READ on RW memory with width 2.......PASS
|
|
testing SUCCESS of READ on RW memory with width 4.......PASS
|
|
testing SUCCESS of WRITE on RW memory with width 1.......PASS
|
|
testing SUCCESS of WRITE on RW memory with width 2.......PASS
|
|
testing SUCCESS of WRITE on RW memory with width 4.......PASS
|
|
testing FAILURE of INVALID ACCESS on RW memory with width 4.......PASS
|
|
testing FAILURE of READ on RO memory with width 0.......PASS
|
|
testing SUCCESS of READ on RO memory with width 1.......PASS
|
|
testing SUCCESS of READ on RO memory with width 2.......PASS
|
|
testing FAILURE of READ on RO memory with width 3.......PASS
|
|
testing SUCCESS of READ on RO memory with width 4.......PASS
|
|
testing FAILURE of READ on RO memory with width 5.......PASS
|
|
testing FAILURE of READ on RO memory with width 8.......PASS
|
|
testing SUCCESS of READ on RO memory with width 1.......PASS
|
|
testing SUCCESS of READ on RO memory with width 1.......PASS
|
|
testing SUCCESS of READ on RW memory with width 1.......PASS
|
|
testing SUCCESS of READ on RW memory with width 1.......PASS
|
|
testing FAILURE of WRITE on RO memory with width 1.......PASS
|
|
testing FAILURE of WRITE on RO memory with width 1.......PASS
|
|
testing SUCCESS of WRITE on RW memory with width 1.......PASS
|
|
testing SUCCESS of WRITE on RW memory with width 1.......PASS
|
|
testing FAILURE of READ on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of READ on out-of-image memory with width 1.......PASS
|
|
testing SUCCESS of adding extra RO region.......PASS
|
|
testing SUCCESS of adding extra RW region.......PASS
|
|
testing FAILURE of adding extra region that won't fit.......PASS
|
|
testing SUCCESS of READ on out-of-image memory with width 1.......PASS
|
|
testing SUCCESS of READ on out-of-image memory with width 1.......PASS
|
|
testing SUCCESS of READ on out-of-image memory with width 1.......PASS
|
|
testing SUCCESS of READ on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of WRITE on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of WRITE on out-of-image memory with width 1.......PASS
|
|
testing SUCCESS of WRITE on out-of-image memory with width 1.......PASS
|
|
testing SUCCESS of WRITE on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of READ on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of READ on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of READ on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of READ on out-of-image memory with width 1.......PASS
|
|
testing FAILURE of WRITE on RO memory with width 1.......PASS
|
|
testing SUCCESS of _mem_probe() reading RO values.......PASS
|
|
testing SUCCESS of _mem_probe() reading RW values.......PASS
|
|
testing SUCCESS of _mem_probe() writing values.......PASS
|
|
testing SUCCESS of _mem_safe_read(size: 16, width: 0).......PASS
|
|
testing SUCCESS of _mem_safe_read(size: 16, width: 4).......PASS
|
|
testing SUCCESS of _mem_safe_read(size: 14, width: 2).......PASS
|
|
testing SUCCESS of _mem_safe_read(size: 15, width: 1).......PASS
|
|
testing FAILURE of _mem_safe_read() with bad params.......PASS (-22)
|
|
testing SUCCESS of _mem_safe_write(size: 16, width: 0).......PASS
|
|
testing SUCCESS of _mem_safe_write(size: 16, width: 4).......PASS
|
|
testing SUCCESS of _mem_safe_write(size: 14, width: 2).......PASS
|
|
testing SUCCESS of _mem_safe_write(size: 15, width: 1).......PASS
|
|
testing FAILURE of _mem_safe_write() with bad params.......PASS (-22)
|
|
===================================================================
|
|
PASS - main.
|
|
===================================================================
|
|
PROJECT EXECUTION SUCCESSFUL
|