Skip to content

kernel ¤

Modules:

Classes:

Functions:

Attributes:

  • P
  • D
  • T

P module-attribute ¤

P = ParamSpec('P')

D module-attribute ¤

D = TypeVar('D')

T module-attribute ¤

T = TypeVar('T')

ArchOps ¤

Bases: ABC

Methods:

Attributes:

STRUCT_PAGE_SIZE property ¤

STRUCT_PAGE_SIZE

STRUCT_PAGE_SHIFT property ¤

STRUCT_PAGE_SHIFT

page_offset property ¤

page_offset: int

page_shift property ¤

page_shift: int

vmemmap property ¤

vmemmap: int

kbase property ¤

kbase: int

ptr_size property ¤

ptr_size: int

page_size property ¤

page_size: int

per_cpu abstractmethod ¤

per_cpu(addr: Value, cpu=None) -> Value

virt_to_phys abstractmethod ¤

virt_to_phys(virt: int) -> int

phys_to_virt abstractmethod ¤

phys_to_virt(phys: int) -> int

phys_to_pfn abstractmethod ¤

phys_to_pfn(phys: int) -> int

pfn_to_phys abstractmethod ¤

pfn_to_phys(pfn: int) -> int

pfn_to_page abstractmethod ¤

pfn_to_page(phys: int) -> int

page_to_pfn abstractmethod ¤

page_to_pfn(page: int) -> int

virt_to_pfn ¤

virt_to_pfn(virt: int) -> int

pfn_to_virt ¤

pfn_to_virt(pfn: int) -> int

phys_to_page ¤

phys_to_page(phys: int) -> int

page_to_phys ¤

page_to_phys(page: int) -> int

page_to_physmap ¤

page_to_physmap(page: int) -> int

virt_to_page ¤

virt_to_page(virt: int) -> int

page_to_virt ¤

page_to_virt(page: int) -> int

x86Ops ¤

Bases: ArchOps

Methods:

Attributes:

ptr_size abstractmethod property ¤

ptr_size: int

STRUCT_PAGE_SIZE property ¤

STRUCT_PAGE_SIZE

STRUCT_PAGE_SHIFT property ¤

STRUCT_PAGE_SHIFT

page_offset property ¤

page_offset: int

page_shift property ¤

page_shift: int

vmemmap property ¤

vmemmap: int

kbase property ¤

kbase: int

page_size property ¤

page_size: int

phys_to_virt ¤

phys_to_virt(phys: int) -> int

phys_to_pfn ¤

phys_to_pfn(phys: int) -> int

pfn_to_phys ¤

pfn_to_phys(pfn: int) -> int

paging_enabled staticmethod ¤

paging_enabled() -> bool

per_cpu abstractmethod ¤

per_cpu(addr: Value, cpu=None) -> Value

virt_to_phys abstractmethod ¤

virt_to_phys(virt: int) -> int

pfn_to_page abstractmethod ¤

pfn_to_page(phys: int) -> int

page_to_pfn abstractmethod ¤

page_to_pfn(page: int) -> int

virt_to_pfn ¤

virt_to_pfn(virt: int) -> int

pfn_to_virt ¤

pfn_to_virt(pfn: int) -> int

phys_to_page ¤

phys_to_page(phys: int) -> int

page_to_phys ¤

page_to_phys(page: int) -> int

page_to_physmap ¤

page_to_physmap(page: int) -> int

virt_to_page ¤

virt_to_page(virt: int) -> int

page_to_virt ¤

page_to_virt(page: int) -> int

i386Ops ¤

Bases: x86Ops

Methods:

Attributes:

ptr_size property ¤

ptr_size: int

STRUCT_PAGE_SIZE property ¤

STRUCT_PAGE_SIZE

STRUCT_PAGE_SHIFT property ¤

STRUCT_PAGE_SHIFT

page_offset property ¤

page_offset: int

page_shift property ¤

page_shift: int

vmemmap property ¤

vmemmap: int

kbase property ¤

kbase: int

page_size property ¤

page_size: int

virt_to_phys ¤

virt_to_phys(virt: int) -> int

per_cpu ¤

per_cpu(addr: Value, cpu: int | None = None) -> Value

pfn_to_page ¤

pfn_to_page(pfn: int) -> int

page_to_pfn ¤

page_to_pfn(page: int) -> int

phys_to_virt ¤

phys_to_virt(phys: int) -> int

phys_to_pfn ¤

phys_to_pfn(phys: int) -> int

pfn_to_phys ¤

pfn_to_phys(pfn: int) -> int

virt_to_pfn ¤

virt_to_pfn(virt: int) -> int

pfn_to_virt ¤

pfn_to_virt(pfn: int) -> int

phys_to_page ¤

phys_to_page(phys: int) -> int

page_to_phys ¤

page_to_phys(page: int) -> int

page_to_physmap ¤

page_to_physmap(page: int) -> int

virt_to_page ¤

virt_to_page(virt: int) -> int

page_to_virt ¤

page_to_virt(page: int) -> int

paging_enabled staticmethod ¤

paging_enabled() -> bool

x86_64Ops ¤

x86_64Ops()

Bases: x86Ops

Methods:

Attributes:

phys_base instance-attribute ¤

phys_base = 16777216

ptr_size property ¤

ptr_size: int

STRUCT_PAGE_SIZE property ¤

STRUCT_PAGE_SIZE

STRUCT_PAGE_SHIFT property ¤

STRUCT_PAGE_SHIFT

page_offset property ¤

page_offset: int

page_shift property ¤

page_shift: int

vmemmap property ¤

vmemmap: int

kbase property ¤

kbase: int

page_size property ¤

page_size: int

per_cpu ¤

per_cpu(addr: Value, cpu: int | None = None) -> Value

virt_to_phys ¤

virt_to_phys(virt: int) -> int

pfn_to_page ¤

pfn_to_page(pfn: int) -> int

page_to_pfn ¤

page_to_pfn(page: int) -> int

phys_to_virt ¤

phys_to_virt(phys: int) -> int

phys_to_pfn ¤

phys_to_pfn(phys: int) -> int

pfn_to_phys ¤

pfn_to_phys(pfn: int) -> int

virt_to_pfn ¤

virt_to_pfn(virt: int) -> int

pfn_to_virt ¤

pfn_to_virt(pfn: int) -> int

phys_to_page ¤

phys_to_page(phys: int) -> int

page_to_phys ¤

page_to_phys(page: int) -> int

page_to_physmap ¤

page_to_physmap(page: int) -> int

virt_to_page ¤

virt_to_page(virt: int) -> int

page_to_virt ¤

page_to_virt(page: int) -> int

paging_enabled staticmethod ¤

paging_enabled() -> bool

Aarch64Ops ¤

Bases: ArchOps

Methods:

Attributes:

ptr_size property ¤

ptr_size

STRUCT_PAGE_SIZE property ¤

STRUCT_PAGE_SIZE

STRUCT_PAGE_SHIFT property ¤

STRUCT_PAGE_SHIFT

page_offset property ¤

page_offset: int

page_shift property ¤

page_shift: int

vmemmap property ¤

vmemmap: int

kbase property ¤

kbase: int

page_size property ¤

page_size: int

per_cpu ¤

per_cpu(addr: Value, cpu: int | None = None) -> Value

virt_to_phys ¤

virt_to_phys(virt: int) -> int

phys_to_virt ¤

phys_to_virt(phys: int) -> int

phys_to_pfn ¤

phys_to_pfn(phys: int) -> int

pfn_to_phys ¤

pfn_to_phys(pfn: int) -> int

pfn_to_page ¤

pfn_to_page(pfn: int) -> int

page_to_pfn ¤

page_to_pfn(page: int) -> int

paging_enabled staticmethod ¤

paging_enabled() -> bool

virt_to_pfn ¤

virt_to_pfn(virt: int) -> int

pfn_to_virt ¤

pfn_to_virt(pfn: int) -> int

phys_to_page ¤

phys_to_page(phys: int) -> int

page_to_phys ¤

page_to_phys(page: int) -> int

page_to_physmap ¤

page_to_physmap(page: int) -> int

virt_to_page ¤

virt_to_page(virt: int) -> int

page_to_virt ¤

page_to_virt(page: int) -> int

BIT ¤

BIT(shift: int)

has_debug_syms ¤

has_debug_syms() -> bool

requires_debug_syms ¤

requires_debug_syms(
    default: D = None,
) -> Callable[[Callable[P, T]], Callable[P, T | D]]

nproc ¤

nproc() -> int

Returns the number of processing units available, similar to nproc(1)

npcplist ¤

npcplist() -> int

get_first_kernel_ro ¤

get_first_kernel_ro() -> Page | None

Returns the first kernel mapping which contains the linux_banner

kconfig ¤

kconfig() -> Kconfig | None

kcmdline ¤

kcmdline() -> str

kversion ¤

kversion() -> str

krelease ¤

krelease() -> tuple[int, ...]

get_idt_entries ¤

get_idt_entries() -> list[IDTEntry]

Retrieves the IDT entries from memory.

arch_paginginfo ¤

arch_paginginfo() -> ArchPagingInfo

arch_ops ¤

arch_ops() -> ArchOps

ptr_size ¤

ptr_size() -> int

page_size ¤

page_size() -> int

per_cpu ¤

per_cpu(addr: Value, cpu: int | None = None) -> Value

virt_to_phys ¤

virt_to_phys(virt: int) -> int

phys_to_virt ¤

phys_to_virt(phys: int) -> int

phys_to_pfn ¤

phys_to_pfn(phys: int) -> int

pfn_to_phys ¤

pfn_to_phys(pfn: int) -> int

pfn_to_page ¤

pfn_to_page(pfn: int) -> int

page_to_pfn ¤

page_to_pfn(page: int) -> int

phys_to_page ¤

phys_to_page(phys: int) -> int

page_to_phys ¤

page_to_phys(page: int) -> int

page_to_physmap ¤

page_to_physmap(page: int) -> int

virt_to_page ¤

virt_to_page(virt: int) -> int

page_to_virt ¤

page_to_virt(page: int) -> int

pfn_to_virt ¤

pfn_to_virt(pfn: int) -> int

virt_to_pfn ¤

virt_to_pfn(virt: int) -> int

kbase ¤

kbase() -> int | None

pagewalk ¤

pagewalk(addr, entry=None)

paging_enabled ¤

paging_enabled() -> bool

num_numa_nodes ¤

num_numa_nodes() -> int

Returns the number of NUMA nodes that are online on the system