3 ms·
Wired? All memory is always physically wired to the motherboard. It's unsafe for the kernel to swap the memory out, because paging doesn't (usually) work while
by vardump 8y ago
Wired? All memory is always physically wired to the motherboard.
It's unsafe for the kernel to swap the memory out, because paging doesn't (usually) work while running kernel code.
- saagarjha 8y agoWired as in not swappable.
- vardump 8y agoI write kernel mode drivers as my day job, and this is certainly the first time I've ever heard of non-swappable being called "wired". It might be called "non-pageable", "pinned", "non-swappable", etc. Out of those, I'd prefer "non-pageable", because it's the most descriptive term for it. Non-standard terminology is not great for communication.
- Aaargh20318 8y ago> I write kernel mode drivers as my day job, and this is certainly the first time I've ever heard of non-swappable being called "wired". Really ? Because it's literally called that in macOS Activity Monitor app, the term is also used in Apple's kernel documentation and API's (e.g. in the `mem_and_io_snapshot` struct defined in 'debug.h' in Kernel.framework). It's also mentioned in the Kernel Programming Guide.
- vardump 8y agoInteresting. Never did macOS drivers, just bare metal, Windows and Linux so far, macOS is not very big in our niche. Weird that Apple's terminology is so different. Typing this on a Macbook Pro, and I can see that Activity Monitor does mention "wired" memory.
- Aaargh20318 8y agoI did a little googling and I see the terminology is also used in the Mach microkernel, which macOS's XNU kernel was built upon. It looks like it's not something Apple came up with.
- gaius 8y agoI write kernel mode drivers as my day job, and this is certainly the first time I've ever heard of non-swappable being called "wired". For what OS? Consider https://wiki.freebsd.org/Memory https://wiki.freebsd.org/Memory Wired - Non-pageable memory: cannot be freed until explicitly released by the owner - Userland memory can be wired by mlock(2) (subject to system and per-user limits) - Kernel memory allocators return wired memory - Contents of the ARC and the buffer cache are wired - Some memory is permanently wired and is never freed (e.g., the kernel file itself) OSX is derived from BSD.
- vardump 8y ago> For what OS? Check my other reply above. Did some FreeBSD work ~15 years ago, but I guess I'd already forgotten.
- deleted 8y ago[deleted]
- module0000 8y agoIt's a MacOS thing. "Wired" confused me also initially. All it means is pages marked as "Wired" can't be offloaded to swap.