cargo fmt
This commit is contained in:
parent
5a439b8689
commit
9c227174af
2 changed files with 7 additions and 5 deletions
|
@ -4,8 +4,8 @@
|
||||||
#[macro_use]
|
#[macro_use]
|
||||||
extern crate user_lib;
|
extern crate user_lib;
|
||||||
|
|
||||||
use user_lib::sbrk;
|
|
||||||
use core::ptr::slice_from_raw_parts_mut;
|
use core::ptr::slice_from_raw_parts_mut;
|
||||||
|
use user_lib::sbrk;
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
fn main() -> i32 {
|
fn main() -> i32 {
|
||||||
|
@ -15,12 +15,14 @@ fn main() -> i32 {
|
||||||
println!("origin break point = {:x}", origin_brk);
|
println!("origin break point = {:x}", origin_brk);
|
||||||
let brk = sbrk(PAGE_SIZE as i32);
|
let brk = sbrk(PAGE_SIZE as i32);
|
||||||
if brk != origin_brk {
|
if brk != origin_brk {
|
||||||
return -1
|
return -1;
|
||||||
}
|
}
|
||||||
let brk = sbrk(0);
|
let brk = sbrk(0);
|
||||||
println!("one page allocated, break point = {:x}", brk);
|
println!("one page allocated, break point = {:x}", brk);
|
||||||
println!("try write to allocated page");
|
println!("try write to allocated page");
|
||||||
let new_page = unsafe { &mut *slice_from_raw_parts_mut(origin_brk as usize as *const u8 as *mut u8, PAGE_SIZE) };
|
let new_page = unsafe {
|
||||||
|
&mut *slice_from_raw_parts_mut(origin_brk as usize as *const u8 as *mut u8, PAGE_SIZE)
|
||||||
|
};
|
||||||
for pos in 0..PAGE_SIZE {
|
for pos in 0..PAGE_SIZE {
|
||||||
new_page[pos] = 1;
|
new_page[pos] = 1;
|
||||||
}
|
}
|
||||||
|
@ -35,7 +37,7 @@ fn main() -> i32 {
|
||||||
let ret = sbrk(PAGE_SIZE as i32 * -1);
|
let ret = sbrk(PAGE_SIZE as i32 * -1);
|
||||||
if ret != -1 {
|
if ret != -1 {
|
||||||
println!("Test sbrk failed!");
|
println!("Test sbrk failed!");
|
||||||
return -1
|
return -1;
|
||||||
}
|
}
|
||||||
println!("Test sbrk almost OK!");
|
println!("Test sbrk almost OK!");
|
||||||
println!("now write to deallocated page, should cause page fault.");
|
println!("now write to deallocated page, should cause page fault.");
|
||||||
|
|
|
@ -38,4 +38,4 @@ pub fn sys_get_time() -> isize {
|
||||||
|
|
||||||
pub fn sys_sbrk(size: i32) -> isize {
|
pub fn sys_sbrk(size: i32) -> isize {
|
||||||
syscall(SYSCALL_SBRK, [size as usize, 0, 0])
|
syscall(SYSCALL_SBRK, [size as usize, 0, 0])
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue