Home
last modified time | relevance | path

Searched full:page (Results 1 – 25 of 667) sorted by relevance

12345678910>>...27

/Zephyr-Core-3.5.0/doc/kernel/memory_management/
Ddemand_paging.rst8 conceptually divided in page-sized page frames as regions to hold data.
10 * When the processor tries to access data and the data page exists in
11 one of the page frames, the execution continues without any interruptions.
13 * When the processor tries to access the data page that does not exist
14 in any page frames, a page fault occurs. The paging code then brings in
15 the corresponding data page from backing store into physical memory if
16 there is a free page frame. If there is no more free page frames,
17 the eviction algorithm is invoked to select a data page to be paged out,
18 thus freeing up a page frame for new data to be paged in. If this data
19 page has been modified after it is first paged in, the data will be
[all …]
/Zephyr-Core-3.5.0/kernel/include/
Dmmu.h19 * At present, page frame management is only done for main system RAM,
60 * Macros and data structures for physical page frame accounting,
69 /** This page contains critical kernel data and will never be swapped */
72 /** This physical page is reserved by hardware; we will never use it */
76 * This physical page is mapped to some virtual memory address
78 * Currently, we just support one mapping per page frame. If a page frame
84 * This page frame is currently involved in a page-in/out operation
89 * This page frame has a clean copy in the backing store
94 * Data structure for physical page frames
96 * An array of these is instantiated, one element per physical RAM page.
[all …]
Dkernel_arch_interface.h257 * will be established. If the page tables already had mappings installed
260 * If the target architecture supports multiple page sizes, currently
261 * only the smallest page size will be used.
269 * Architectures are expected to pre-allocate page tables for the entire
279 * @param virt Page-aligned Destination virtual address to map
280 * @param phys Page-aligned Source physical address to map
281 * @param size Page-aligned size of the mapped memory region in bytes
290 * When this completes, the relevant page table entries will be updated as
293 * page tables.
302 * and it is not necessary to free any paging structures. Empty page tables
[all …]
/Zephyr-Core-3.5.0/subsys/bluetooth/mesh/
Dlarge_comp_data_srv.c48 uint8_t page; in handle_large_comp_data_get() local
56 page = bt_mesh_comp_parse_page(buf); in handle_large_comp_data_get()
59 LOG_DBG("page %u offset %u", page, offset); in handle_large_comp_data_get()
62 net_buf_simple_add_u8(&rsp, page); in handle_large_comp_data_get()
65 if (atomic_test_bit(bt_mesh.flags, BT_MESH_COMP_DIRTY) && page < 128) { in handle_large_comp_data_get()
69 err = bt_mesh_comp_read(&temp_buf, page); in handle_large_comp_data_get()
71 LOG_ERR("Could not read comp data p%d, err: %d", page, err); in handle_large_comp_data_get()
85 total_size = bt_mesh_comp_page_size(page); in handle_large_comp_data_get()
89 err = bt_mesh_comp_data_get_page(&rsp, page, offset); in handle_large_comp_data_get()
91 LOG_ERR("Could not read comp data p%d, err: %d", page, err); in handle_large_comp_data_get()
[all …]
Dlarge_comp_data_cli.c42 uint8_t page; in data_status() local
50 page = net_buf_simple_pull_u8(buf); in data_status()
55 rsp->page = page; in data_status()
69 .page = page, in data_status()
126 static int data_get(uint16_t net_idx, uint16_t addr, uint32_t op, uint32_t status_op, uint8_t page, in data_get() argument
139 net_buf_simple_add_u8(&msg, page); in data_get()
145 int bt_mesh_large_comp_data_get(uint16_t net_idx, uint16_t addr, uint8_t page, in bt_mesh_large_comp_data_get() argument
149 page, offset, rsp); in bt_mesh_large_comp_data_get()
152 int bt_mesh_models_metadata_get(uint16_t net_idx, uint16_t addr, uint8_t page, in bt_mesh_models_metadata_get() argument
156 page, offset, rsp); in bt_mesh_models_metadata_get()
/Zephyr-Core-3.5.0/include/zephyr/sys/
Dmem_manage.h77 * Note that when demand paging is active, these will only work with page
109 /** Number of page faults */
112 /** Number of page faults with IRQ locked */
115 /** Number of page faults with IRQ unlocked */
119 /** Number of page faults while in ISR */
171 /* TODO add assertion that this page is pinned to boot mapping, in z_mem_phys_addr()
189 /* TODO add assertion that this page frame is pinned to boot mapping, in z_mem_virt_addr()
208 * This function alters the active page tables in the area reserved
226 * It is highly discouraged to use this function to map system RAM page
251 * This function alters the active page tables in the area reserved
[all …]
/Zephyr-Core-3.5.0/drivers/mm/
Dmm_drv_common.h24 * is assumed to be page aligned.
26 * @param virt Page-aligned virtual address
36 * @brief Test if address is page-aligned
40 * @retval true if page-aligned
41 * @retval false if not page-aligned
49 * @brief Test if address is page-aligned
53 * @retval true if page-aligned
54 * @retval false if not page-aligned
62 * @brief Test if size is page-aligned
66 * @retval true if page-aligned
[all …]
/Zephyr-Core-3.5.0/arch/x86/include/
Dx86_mmu.h40 #define MMU_PWT BITL(3) /** Page Write Through */
41 #define MMU_PCD BITL(4) /** Page Cache Disable */
44 #define MMU_PS BITL(7) /** Page Size (non PTE)*/
45 #define MMU_PAT BITL(7) /** Page Attribute (PTE) */
60 /* Page fault error code flags. See Chapter 4.7 of the Intel SDM vol. 3A. */
61 #define PF_P BIT(0) /* 0 Non-present page 1 Protection violation */
73 * Dump out page table entries for a particular virtual memory address
78 * @param ptables Page tables to walk
84 * Fetch the page table entry for a virtual memory address
88 * @param val Value stored in page table entry, with address and flags
[all …]
/Zephyr-Core-3.5.0/include/zephyr/xen/
Dmemory.h11 * Add mapping for specified page frame in Xen domain physmap.
17 * @param gpfn page frame where the source mapping page should appear.
24 * Add mapping for specified set of page frames to Xen domain physmap.
31 * @param size number of page frames being mapped.
33 * @param gpfns array of page frames where the mapping should appear.
42 * Removes page frame from Xen domain physmap.
44 * @param domid domain id, whose page is going to be removed. For unprivileged
46 * @param gpfn page frame number, that needs to be removed
52 * Populate specified Xen domain page frames with memory.
58 * @param nr_extents number of page frames being populated.
[all …]
Dgnttab.h12 * Assigns gref and permits access to 4K page for specific domain.
15 * @param gfn - guest frame number of page, where grant will be located
33 * Allocates 4K page for grant and share it via returned
44 * Provides interface to acquire free page, that can be used for
48 * @return - pointer to page start address, that can be used as host_addr
54 * Releases provided page, that was used for mapping foreign grant frame,
57 * @param page_addr - pointer to start address of used page.
67 * also per-page status will be set in map_ops[i].status (GNTST_*)
69 * To map foreign frame you need 4K-aligned 4K memory page, which will be
77 * each page, that was successfully unmapped.
[all …]
/Zephyr-Core-3.5.0/include/zephyr/drivers/mm/
Dsystem_mm.h64 * @brief Map one physical page into the virtual address space
66 * This maps one physical page into the virtual address space.
68 * is assumed to be page aligned.
75 * @param virt Page-aligned destination virtual address to map
76 * @param phys Page-aligned source physical address to map
90 * are assumed to be page aligned.
97 * @param virt Page-aligned destination virtual address to map
98 * @param phys Page-aligned source physical address to map
99 * @param size Page-aligned size of the mapped memory region in bytes
114 * are assumed to be page aligned.
[all …]
/Zephyr-Core-3.5.0/doc/hardware/arch/
Dx86.rst9 This page contains information on certain aspects when developing for
15 During very early boot, page tables are loaded so technically the kernel
36 possible as the page table generation script
38 at the page directory level, in addition to mapping virtual addresses
40 the entries for identity mapping at the page directory level are
45 is done at the page directory level, there is no need to allocate
46 additional space for the page table. However, additional space may
47 still be required for additional page directory table.
52 required as the entries in page directory table will be cleared.
58 (Page Directory Pointer) covers 1GB of memory. For example:
[all …]
/Zephyr-Core-3.5.0/drivers/flash/
Dflash_stm32g0x.c110 int page; in erase_page() local
131 page = offset / STM32G0_FLASH_PAGE_SIZE; in erase_page()
136 /* big page-nr w/o swap or small page-nr w/ swap indicate bank2 */ in erase_page()
137 if ((page >= STM32G0_PAGES_PER_BANK) != swap_enabled) { in erase_page()
138 page = (page % STM32G0_PAGES_PER_BANK) + STM32G0_BANK2_START_PAGE_NR; in erase_page()
140 LOG_DBG("Erase page %d on bank 2", page); in erase_page()
142 page = page % STM32G0_PAGES_PER_BANK; in erase_page()
144 LOG_DBG("Erase page %d on bank 1", page); in erase_page()
148 /* Set the PER bit and select the page you wish to erase */ in erase_page()
151 tmp |= ((page << FLASH_CR_PNB_Pos) & FLASH_CR_PNB_Msk); in erase_page()
[all …]
/Zephyr-Core-3.5.0/subsys/demand_paging/eviction/
DKconfig7 prompt "Page frame eviction algorithms"
18 bool "Not Recently Used (NRU) page eviction algorithm"
20 This implements a Not Recently Used page eviction algorithm.
22 When a page frame needs to be evicted, the algorithm will prefer to
23 evict page frames using an ascending order of priority:
38 pages that are capable of being paged out. At eviction time, if a page
Dnru.c13 /* The accessed and dirty states of each page frame are used to create
14 * a hierarchy with a numerical value. When evicting a page, try to evict
15 * page with the highest value (we prefer clean, not accessed pages).
36 /* Clear accessed bit in page tables */ in nru_periodic_update()
63 /* Implies a mismatch with page frame ontology and page in k_mem_paging_eviction_select()
67 "non-present page, %s", in k_mem_paging_eviction_select()
73 /* If we find a not accessed, clean page we're done */ in k_mem_paging_eviction_select()
85 /* Shouldn't ever happen unless every page is pinned */ in k_mem_paging_eviction_select()
86 __ASSERT(last_pf != NULL, "no page to evict"); in k_mem_paging_eviction_select()
/Zephyr-Core-3.5.0/subsys/bluetooth/mesh/shell/
Dlarge_comp_data.c25 "%s [0x%04x]: page: %u offset: %u total size: %u", msg, addr, rsp->page, in status_print()
36 uint8_t page; in cmd_large_comp_data_get() local
42 page = shell_strtoul(argv[1], 0, &err); in cmd_large_comp_data_get()
51 bt_mesh_shell_target_ctx.dst, page, offset, &rsp); in cmd_large_comp_data_get()
63 uint8_t page; in cmd_models_metadata_get() local
69 page = shell_strtoul(argv[1], 0, &err); in cmd_models_metadata_get()
78 bt_mesh_shell_target_ctx.dst, page, offset, &rsp); in cmd_models_metadata_get()
86 SHELL_CMD_ARG(large-comp-data-get, NULL, "<page> <offset>", cmd_large_comp_data_get, 3, 0),
87 SHELL_CMD_ARG(models-metadata-get, NULL, "<page> <offset>", cmd_models_metadata_get, 3, 0),
/Zephyr-Core-3.5.0/dts/bindings/mtd/
Dgd,gd32-nv-flash-v2.yaml21 description: Max erase time(millisecond) of a flash page
23 bank0-page-size:
26 description: Flash memory page size for bank0
28 bank1-page-size:
31 description: Flash memory page size for bank1
/Zephyr-Core-3.5.0/kernel/
DKconfig.vm28 this for non-pinned page frames).
42 page tables are in use, they all have the same virtual-to-physical
54 in page tables, the equation:
70 how much total memory can be used for page tables.
111 hex "Size of smallest granularity MMU page"
115 support multiple page sizes, put the smallest one here.
127 bool "Allow interrupts during page-ins/outs"
131 latency, but any code running in interrupt context that page faults
137 If this option is disabled, the page fault servicing logic
139 ISRs may also page fault.
[all …]
Dmmu.c25 * - A page frame is a page-sized physical memory region in RAM. It is a
26 * container where a data page may be placed. It is always referred to by
29 * every page frame.
31 * - A data page is a page-sized region of data. It may exist in a page frame,
33 * up in the CPU's page tables (or equivalent) by virtual address.
38 /* Spinlock to protect any globals in this file and serialize page table
44 * General page frame management
47 /* Database of all RAM page frames */
57 /* Add colors to page table dumps to indicate mapping type */
147 * purposes and does not otherwise affect page frame accounting or flags;
[all …]
/Zephyr-Core-3.5.0/include/zephyr/bluetooth/mesh/
Dlarge_comp_data_cli.h26 /** Page number. */
27 uint8_t page; member
28 /** Offset within the page. */
30 /** Total size of the page. */
94 * This API is used to read a portion of a Composition Data Page.
106 * @param page Composition Data Page to read.
107 * @param offset Offset within the Composition Data Page.
113 int bt_mesh_large_comp_data_get(uint16_t net_idx, uint16_t addr, uint8_t page,
118 * This API is used to read a portion of a Models Metadata Page.
130 * @param page Models Metadata Page to read.
[all …]
/Zephyr-Core-3.5.0/samples/subsys/usb/webusb/
DREADME.rst5 Receive and echo data from a web page using WebUSB API.
18 based web application (web page) running in the browser at host.
44 This sample application requires the latest Google Chrome, a web page
46 http server running on localhost to serve the web page.
49 only to secure origins. This means the web page/site that is used to
56 #. Implement a web app (web page) using WebUSB API and run
62 This sample web page demonstrates how to create and use a WebUSB
66 There are two ways to access this sample page:
70 * Host the demo page locally: Start a web server
83 to open demo page.
[all …]
/Zephyr-Core-3.5.0/arch/xtensa/core/
Dxtensa_mmu.c18 /* Fixed data TLB way to map the page table */
24 /* Level 1 contains page table entries
25 * necessary to map the page table itself.
29 /* Level 2 contains page table entries
30 * necessary to map the page table itself.
40 * Level 1 page table has to be 4Kb to fit into one of the wired entries.
48 * covering a 4Kb page.
131 uint32_t page, *table; in map_memory_range() local
133 for (page = start; page < end; page += CONFIG_MMU_PAGE_SIZE) { in map_memory_range()
134 uint32_t pte = Z_XTENSA_PTE(page, Z_XTENSA_KERNEL_RING, attrs); in map_memory_range()
[all …]
/Zephyr-Core-3.5.0/doc/
D404.rst5 Sorry, Page Not Found
14 Sorry, the page you requested was not found on this site.
20 document.write("<p>Sorry, the page you requested: " +
24 document.write("<p>Sorry, the page you requested was not found on this site.</p>")
31 It's also possible we've removed or renamed the page you're looking for.
33 Please try using the navigation links on the left of this page to navigate
/Zephyr-Core-3.5.0/arch/x86/core/
Duserspace.c15 /* Update the to the incoming thread's page table, and update the location of
21 * active page tables are the kernel's page tables. If the incoming thread is
28 * switching page tables.
48 __ASSERT(ptables_phys != 0, "NULL page tables for thread %p\n", in z_x86_swap_update_page_tables()
113 * Unconditionally page in the stack instead of in arch_user_mode_enter()
114 * relying on page fault to speed up a little bit in arch_user_mode_enter()
117 * Note that this also needs to page in the reserved in arch_user_mode_enter()
118 * portion of the stack (which is usually the page just in arch_user_mode_enter()
131 /* With hardware stack protection, the first page of stack in arch_user_mode_enter()
132 * is a guard page. So need to skip it. in arch_user_mode_enter()
Dx86_mmu.c30 * partitions to page tables when the partitions are removed.
43 * page table bit effecting the policy and also the backup bit.
51 * - If the entire entry is zero, it's an un-mapped virtual page
52 * - If PTE_ZERO is set, we flipped this page due to KPTI
53 * - Otherwise, this was a page-out
65 * sure all memory mappings are the same across all page tables when invoking
121 /* Page Map Level 4 */
132 /* Page Directory Pointer Table */
147 /* Page Directory */
163 /* Page Table */
[all …]

12345678910>>...27