李通洲
c10b652a2e
Swap (Windows): prevents integer overflow in swap size
...
Regression from 7ec0c664c5
2025-09-30 10:05:08 +08:00
Carter Li
82a1eaf276
Chore: tidy tabs
2025-08-24 19:09:51 +08:00
李通洲
75d2c668d0
Modules: refactor module option handling for static allocation
...
Moves module option structs out of global config and removes dynamic allocation, using static buffers and size assertions for safer, simpler management.
Refactors module initialization and destruction to work with isolated option structs, eliminating the need for the previous modules container and related code.
Unifies module option header usage and updates detection logic to leverage statically-sized option buffers, improving encapsulation and maintainability.
Simplifies module function signatures and reduces coupling between modules and config.
Enhances future extensibility and reliability by enforcing max size constraints and removing unnecessary indirections.
2025-08-04 14:46:01 +08:00
Carter Li
04b13096ac
Swap (Haiku): detect detailed info
2025-06-04 22:01:16 +08:00
李通洲
64d4035cae
Chore (Haiku): don't use hard-coded page size
2025-06-04 21:26:37 +08:00
李通洲
d89263c218
Swap (DragonFly): add support
2025-06-04 20:51:21 +08:00
Carter Li
6a42588786
Swap (SunOS): detect detailed info
2025-06-04 19:36:22 +08:00
Carter Li
5883bf359c
Swap (OpenBSD): detect detailed info
2025-06-04 19:05:02 +08:00
Carter Li
6a6b4070ca
Swap (Linux): add fallback for Android
2025-06-04 18:35:53 +08:00
Carter Li
2c80cd6d29
Swap (Linux): support detailed info
2025-06-04 16:44:10 +08:00
Carter Li
fa4b00b027
Swap (FreeBSD): detect detailed info
2025-06-04 15:30:03 +08:00
李通洲
5fdc924b5d
Swap (macOS): detect detailed info
2025-06-04 15:07:05 +08:00
李通洲
7ec0c664c5
Swap (Windows): detect detailed info
2025-06-04 15:01:37 +08:00
Carter Li
4c34f99c12
Swap (Linux): use /proc/swaps
...
Preparing for detailed swap usage
2025-06-04 10:37:07 +08:00
李通洲
da0eedf888
Swap (Windows): support multiple paging files
2025-03-31 18:56:03 +08:00
李通洲
1133cb619b
Swap (OpenBSD): fix mem leaks
2025-03-31 18:56:03 +08:00
李通洲
a091d209cf
Swap: fix code smells
2025-03-31 18:44:41 +08:00
François Revol
01f400c15f
Haiku: minimal implementation ( #1538 )
2025-02-05 09:08:28 +08:00
李通洲
b257134d74
Chore: introduce macro ARRAY_SIZE
2024-10-18 16:44:41 +08:00
Carter Li
a32d9d788c
OpenBSD: init platform support
2024-10-04 17:49:18 +08:00
Carter Li
a749014e7c
Kernel: code refactor
2024-07-02 10:47:14 +08:00
Carter Li
1d6a48e49a
SunOS: support swap & opengl detection
2024-06-17 16:43:52 +08:00
Carter Li
d35490aeef
Fastfetch: make it compile on SunOS
2024-06-16 01:02:48 +08:00
李通洲
e660e61027
Swap (Windows): fix x86-32 (v2)
2024-04-24 11:04:03 +08:00
李通洲
40320e5efa
Swap (Windows): fix detection in i686 build
2024-04-23 23:29:26 +08:00
apocelipes
1c24cb3ebb
refactor: simplify parsing
2023-12-04 19:47:34 +08:00
apocelipes
ed879ee53c
fix(Swap): fix reading procfs files and simplify data parsing
2023-12-04 19:47:34 +08:00
李通洲
36298b8e93
Swap (FreeBSD): fix impl
2023-12-01 23:23:29 +08:00
李通洲
919bd8231e
Swap (Linux): don't use syscall
...
Fix #620
2023-11-24 10:12:22 +08:00
Marius Messerschmidt
6fe0eb5677
ClangTidy: avoid different parameter names for same function
2023-11-18 12:31:57 +01:00
李通洲
f9597eba39
Global: remove #ifndef FF_INCLUDED_* guards
2023-11-09 13:46:45 +08:00
李通洲
3e0d97db2e
Platform: detect system page size
2023-11-08 00:10:16 +08:00
李通洲
b89ace7aae
Swap (Windows): fix compiler warnings
2023-05-16 20:54:45 +08:00
李通洲
e837e1e1d1
Swap: split module code from memory.c
2023-05-11 22:03:18 +08:00
李通洲
aea0986928
CMake(Windows): remove USE_WIN_NTAPI option
2023-05-11 19:55:31 +08:00
李通洲
725d2f2612
Windows: fix <Windows.h> header mess
2023-03-25 00:50:40 +08:00
李通洲
9a3909f8ba
Memory (Windows): check for error cases
2023-02-16 17:19:43 +08:00
李通洲
e2d145cf31
Memory (Apple): use sysctl instead of sysctlbyname
2023-02-14 17:31:07 +08:00
李通洲
6becc8f334
Swap: improve performance on Linux
...
We can't do the same thing with memory because there is no `cachedram` in `struct sysinfo`
2022-12-28 17:27:35 +08:00
李通洲
6ff67e87eb
Memory: refactor, don't cache results
2022-12-28 17:20:20 +08:00
李通洲
0cad657ce2
Swap: correct implementation (Windows)
2022-12-02 01:12:48 +08:00
李通洲
19c5904561
Memory: improve performance by not querying WMI (Windows)
2022-11-21 15:45:53 +08:00
李通洲
64b9f69fb1
Swap: support freebsd
2022-10-26 17:43:08 +08:00
李通洲
581c6f547d
Swap: split code out from memory detection
...
1. Since swap module is disabled by default, swap detection is unnecessary in most cases.
2. On platform other than Linux, swap detection doesn't share code with memory.
3. Swap detection can be expensive. On Windows, it requires another WMI query which can lag heavily in some cases. Don't pay for you don't use.
2022-10-19 00:24:17 +08:00