/DragonOS/docs/introduction/ |
H A D | features.md | 7 - [x] 启动引导:Multiboot2 9 - [x] 接口:posix 2008 15 - [x] 页帧分配器 16 - [x] 小对象分配器 17 - [x] VMA 18 - [x] MMIO地址空间自动分配 19 - [x] 页面映射器 20 - [x] 硬件抽象层 21 - [x] 独立的用户地址空间管理机制 22 - [x] C接口兼容层 [all …]
|
/DragonOS/kernel/src/arch/x86_64/math/ |
H A D | bitcount.h | 9 static __always_inline int __clz(uint32_t x) in __clz() argument 13 : "=a"(x) in __clz() 14 : "a"(x) in __clz() 16 return x; in __clz() 25 static __always_inline int __clzl(unsigned long x) in __clzl() argument 33 : "a"(x) in __clzl() 44 static __always_inline int __clzll(unsigned long long x) in __clzll() argument 52 : "a"(x) in __clzll() 57 static __always_inline int __ctz(uint32_t x) in __ctz() argument 59 asm volatile("tzcnt %%eax, %%eax":"=a"(x):"a"(x):"memory"); in __ctz() [all …]
|
/DragonOS/kernel/src/common/ |
H A D | glib.h | 31 #define ABS(x) ((x) > 0 ? (x) : -(x)) // 绝对值 argument 33 #define max(x, y) ((x > y) ? (x) : (y)) argument 34 #define min(x, y) ((x < y) ? (x) : (y)) argument 37 #define MASK_HIGH_32bit(x) (x & (0x00000000ffffffffUL)) argument 40 ul round(double x) { return (ul)(x + 0.5); } in round() argument
|
H A D | compiler.h | 5 #define likely(x) __builtin_expect(!!(x), 1) argument 6 #define unlikely(x) __builtin_expect(!!(x), 0) argument 122 #define READ_ONCE(x) \ argument 126 typeof(x) __val; \ 129 __read_once_size(__u.__c, &(x), sizeof(x)); \ 136 #define WRITE_ONCE(x, val) \ argument 140 typeof(x) __val; \ 143 __write_once_size(&(x), __u.__c, sizeof(x)); \
|
/DragonOS/docs/community/ChangeLog/ |
H A D | index.rst | 9 V0.1.x/V0.1.10 10 V0.1.x/V0.1.9 11 V0.1.x/V0.1.8 12 V0.1.x/V0.1.7 13 V0.1.x/V0.1.6 14 V0.1.x/V0.1.5 15 V0.1.x/V0.1.4 16 V0.1.x/V0.1.3 17 V0.1.x/V0.1.2 18 V0.1.x/V0.1.1 [all …]
|
/DragonOS/kernel/src/common/math/ |
H A D | round.c | 12 double round(double x) in round() argument 18 } u = {x}; in round() 24 return x; in round() 26 x = -x; in round() 30 FORCE_EVAL(x + toint); in round() 33 y = x + toint - toint - x; in round() 35 y = y + x - 1; in round() 37 y = y + x + 1; in round() 39 y = y + x; in round()
|
H A D | pow.c | 4 int64_t pow(int64_t x, int y) in pow() argument 9 return x; in pow() 11 return x * x; in pow() 16 res *= x; in pow() 18 x *= x; in pow()
|
H A D | libm.h | 54 #define FORCE_EVAL(x) \ argument 57 if (sizeof(x) == sizeof(float)) \ 60 __x = (x); \ 63 else if (sizeof(x) == sizeof(double)) \ 66 __x = (x); \ 72 __x = (x); \
|
/DragonOS/kernel/src/arch/x86_64/asm/ |
H A D | irqflags.rs | 5 let x: usize; in local_irq_save() localVariable 8 asm!("pushfq; pop {}; cli", out(reg) x, options(nomem, preserves_flags)); in local_irq_save() 10 x in local_irq_save() 15 pub fn local_irq_restore(x: usize) { in local_irq_restore() 17 asm!("push {}; popfq", in(reg) x, options(nomem, preserves_flags)); in local_irq_restore()
|
H A D | bitops.rs | 10 pub fn ffz(x: u64) -> i32 { in ffz() 11 return unsafe { _popcnt64((x & ((!x) - 1)).try_into().unwrap()) }; in ffz()
|
/DragonOS/kernel/src/arch/x86_64/include/asm/ |
H A D | irqflags.h | 4 #define local_irq_save(x) __asm__ __volatile__("pushfq ; popq %0 ; cli" \ argument 5 : "=g"(x)::"memory") 7 #define local_irq_restore(x) __asm__ __volatile__("pushq %0 ; popfq" ::"g"(x) \ argument
|
/DragonOS/kernel/src/arch/riscv64/ |
H A D | rand.rs | 4 for x in buf.iter_mut() { in rand() 8 *x = (SEED >> 33) as u8; in rand() 11 let x: usize = unsafe { core::mem::transmute(buf) }; in rand() localVariable 12 return x; in rand()
|
/DragonOS/kernel/src/driver/video/fbdev/base/ |
H A D | render_helper.rs | 79 Some(x) => *x, in move_mask() 147 Ok(x) => { in next() 149 return Some(x.unwarp()); in next() 151 Err(x) => { in next() 153 return Some(x.unwarp()); in next() 172 PixelLineStatus::Full(x) => (x, true), in unwarp() 173 PixelLineStatus::NotFull(x) => (x, false), in unwarp() 219 start_xpos: image.x as usize * byte_per_pixel, in new() 220 current_xpos: image.x as usize * byte_per_pixel, in new() 288 let x = image.x; in start_offset() localVariable [all …]
|
/DragonOS/kernel/crates/rbpf/src/ |
H A D | interpreter.rs | 145 let x = (mem.as_ptr() as u64 + (insn.imm as u32) as u64) as *const u8; in execute_program() localVariable 146 check_mem_load(stacks.last().unwrap().as_slice(), x as u64, 8, insn_ptr)?; in execute_program() 147 x.read_unaligned() as u64 in execute_program() 152 let x = (mem.as_ptr() as u64 + (insn.imm as u32) as u64) as *const u16; in execute_program() localVariable 153 check_mem_load(stacks.last().unwrap().as_slice(), x as u64, 8, insn_ptr)?; in execute_program() 154 x.read_unaligned() as u64 in execute_program() 159 let x = (mem.as_ptr() as u64 + (insn.imm as u32) as u64) as *const u32; in execute_program() localVariable 160 check_mem_load(stacks.last().unwrap().as_slice(), x as u64, 8, insn_ptr)?; in execute_program() 161 x.read_unaligned() as u64 in execute_program() 167 let x = (mem.as_ptr() as u64 + (insn.imm as u32) as u64) as *const u64; in execute_program() localVariable [all …]
|
/DragonOS/kernel/src/virt/kvm/ |
H A D | mod.rs | 26 if vm_list.iter().any(|x| x.id == id) { in push_vm() 37 match vm_list.iter().position(|x| x.id == id) { in remove_vm() 53 vm_list.iter().find(|&x| x.id == id).cloned() in vm()
|
/DragonOS/kernel/src/driver/tty/virtual_terminal/ |
H A D | virtual_console.rs | 217 self.pos = self.cols * self.state.y + self.state.x; in init() 282 self.state.x = 0; in reset() 525 .con_putc(self, i as u16, self.state.y as u32, self.state.x as u32); in add_softcursor() 543 self.state.x as u32, in hide_softcursor() 550 fn gotoxay(&mut self, x: i32, y: i32) { in gotoxay() 552 self.gotoxy(x, self.top as i32 + y); in gotoxay() 554 self.gotoxy(x, y) in gotoxay() 559 fn gotoxy(&mut self, x: i32, y: i32) { in gotoxy() 560 if x < 0 { in gotoxy() 561 self.state.x = 0; in gotoxy() [all …]
|
/DragonOS/docs/kernel/locking/ |
H A D | spinlock.md | 50 let x = SpinLock::new(Vec::new()); 60 let x :SpinLock<Vec<i32>>= SpinLock::new(Vec::new()); 62 let mut g :SpinLockGuard<Vec<i32>>= x.lock(); 68 debug!("x={:?}", x); 71 debug!("x={:?}", x);
|
/DragonOS/kernel/crates/driver_base_macros/src/ |
H A D | lib.rs | 9 if let Some(x) = $field.clone() { 10 if x.strong_count() == 0 { 14 Some(x)
|
/DragonOS/docs/kernel/sched/ |
H A D | c_waiting.md | 174    函数`completion_init(struct completion *x)`提供了初始化completion的功能。当你使用`DECLARE_COMPLETION_O… 180 | wait_for_completion(struct completion *x) | 将当前进程挂起,并设置挂起状态为PROC_UNINTERRUPTIBLE。 … 181 | wait_for_completion_timeout(struct completion *x, long timeout) | 将当前进程挂起,并设置挂起状态为PROC_UNINTERRU… 182 | wait_for_completion_interruptible(struct completion *x) | 将当前进程挂起,并设置挂起状态为PROC_INTERRUPTIBLE。 … 183 | wait_for_completion_interruptible_timeout(struct completion *x, long timeout) | 将当前进程挂起,并设置挂起状态为P… 184 | wait_for_multicompletion(struct completion x[], int n)| 将当前进程挂起,并设置挂起状态为PROC_UNINTERRUPTIBLE。(等待数… 192 | complete(struct completion *x) | 表明一个事件被完成,从等待队列中唤醒一个进程 | 193 | complete_all(struct completion *x) | 表明与该completion有关的事件被标记为永久完成,并唤醒等待队列中的所有进程 | 199 | completion_done(struct completion *x) | 查询completion的done变量是不是大于0,如果大于0,返回true;否则返回fal… 200 | try_wait_for_completion(struct completion *x) | 查询completion的done变量是不是大于0,如果大于0,返回true(同时令done-…
|
/DragonOS/kernel/src/driver/base/ |
H A D | kset.rs | 118 kobjects.retain(|x| x.upgrade().is_some()); in leave() 119 let index = kobjects.iter().position(|x| { in leave() 120 if let Some(x) = x.upgrade() { in leave() 121 return Arc::ptr_eq(&x, kobj); in leave() 126 let x = kobjects.remove(index); in leave() localVariable 127 let x = x.upgrade().unwrap(); in leave() localVariable 129 x.set_kset(None); in leave() 137 kobjects.retain(|x| x.upgrade().is_some()); in cleanup_weak()
|
/DragonOS/kernel/src/driver/base/device/ |
H A D | device_number.rs | 27 pub const fn new(x: u32) -> Self { in new() 28 Major(x) in new() 70 fn from(x: u32) -> Self { in from() 71 Self { data: x } in from()
|
/DragonOS/kernel/src/libs/ |
H A D | casting.rs | 65 let x: Arc<dyn Any> = self.as_any_arc(); in downcast_arc() localVariable 66 if x.is::<T>() { in downcast_arc() 68 let p = Arc::into_raw(x); in downcast_arc()
|
/DragonOS/kernel/src/init/ |
H A D | cmdline.rs | 288 KCMDLINE_PARAM_EARLY_KV.iter().for_each(|x| { in early_init() 289 let x = unsafe { x.force_mut() }; in early_init() localVariable 290 if let KernelCmdlineParameter::EarlyKV(v) = x { in early_init() 386 KCMDLINE_PARAM_ARG.iter().for_each(|x| { in default_initialize() 387 let x = unsafe { x.force_mut() }; in default_initialize() localVariable 388 if let KernelCmdlineParameter::Arg(v) = x { in default_initialize() 397 KCMDLINE_PARAM_KV.iter().for_each(|x| { in default_initialize() 398 let x = unsafe { x.force_mut() }; in default_initialize() localVariable 399 if let KernelCmdlineParameter::KV(v) = x { in default_initialize() 421 list.iter().find(|x| { in find_param() [all …]
|
/DragonOS/kernel/src/arch/riscv64/asm/ |
H A D | irqflags.h | 4 #define local_irq_save(x) \ argument 9 #define local_irq_restore(x) \ argument
|
/DragonOS/kernel/src/arch/riscv64/include/asm/ |
H A D | irqflags.h | 4 #define local_irq_save(x) \ argument 9 #define local_irq_restore(x) \ argument
|