mirror of
https://github.com/smxi/inxi.git
synced 2024-11-16 16:21:39 +00:00
New version, new man. Continuing the Memory info rollout started in 3.3.27.
-------------------------------------------------------------------------------- SPECIAL THANKS: 1. Thanks to linuxquestions.org Slackware forums for poking around a bit at the new Memory total logic. -------------------------------------------------------------------------------- KNOWN ISSUES: 1a. MEMORY: The memory total: has to be synthesized in some cases, based on some math and educated guessing. When these guesses fall outside of predetermined ranges, inxi will show note: est. to let the user know the total was synthesized and possibly incorrect. For detected virtual machines, inxi does not try to synthesize the total because a VM can have any amount of RAM assigned. If superuser, and -m used, shows the real total from dmidecode if any RAM was found. Not all systems have DMI RAM data however, or have dmidecode installed. Will fallback to sythetic method in that case, which is usually right. 1b. MEMORY: With the superuser /proc/iomem method, if on a VM and not using even GiB sized RAM ollocation, and -M is not triggered (which usually lets inxi know it's a VM), the total will get rounded up or down based on a set of rules. For example, 2.5 GiB real would become 3 GiB. I don't see any solution to this, either assume the /proc/iomem is right but needs rounding up, or assume the /sys block counts are right, or remove the feature. Shows note: est. in cases where the rounded total is greater than a dynamic factor difference from the internal total amount. 2. GENERAL/GRAPHICS: The problem of users showing up, requesting a feature, then not doing any work, research, supplying energy, interest, and dare I say, passion - nothing, expecting 'someone else' to do the work for them, continues, sadly, with the recent request for vulkan data for Graphics. This appears to be a problem more with the modern generation of free software users, I don't remember this type of attitude 20 years ago, but I did watch it as it started getting more common. Demotivating to be honest, but maybe one day someone will show up who actually cares enough to help get the features they want developed. While I am leaving that up as a low priority feature request, I am not personally interested in that feature, nor is anyone else I asked, and given how much raw data there is, and how difficult it is to parse, I'll just leave it as an existing issue which might get work in a few years time, or not, basically will require someone showing up who actually actively cares. -------------------------------------------------------------------------------- BUGS: 1. DISK: total: used: report could have had wrong results for used:, like used being > total: because the filter lists were missing some file systems for exclusion. More of a fix than a bug, but users might see it as a bug. -------------------------------------------------------------------------------- FIXES: 1. INFO: get_gcc_data(): was showing same GCC version as main and alternate. Failed to filter out the discovered primary, that is. This is because usually name is gcc-11 but sometimes it's the whole version, like gcc-11.2.0, the full version string. This is the case in Slackware for example. 2. SHORT: MEMORY: BSD: did not show '%' for memory used percent, just the number. 3. DRIVES/PARTITIONS: PartitionItem::set_filters() added many more exclude types, that will help avoid both creating wrong disk used totals, and also not show label:/uuid: fields for filesystem types that don't have uuid/labels. There were a lot missing: encrypted, distributed, stackable, remote. Should clean up wrong disk used values in some cases. 4a. PARTITIONS: PartitionItem::set_filters(). Added a lot of file systems, many fuse, distributed, stackable types. 4b. PARTITIONS: Extended remote file system ID by fs, and added fuse fs for local mounts, like gvfs, mtp, ptp and many other variants, that's things like mounting apple partition, android, iphone, archives, etc. This should correct an entire class of source: ERR-102 outputs. -------------------------------------------------------------------------------- ENHANCEMENTS: 1. BATTERY: Added 'power' to battery report. That's the amount of watts its using at that moment, so not super useful since it's running inxi at that moment. But the data was there, so might as well show it. Only for -Bxx since it will be so variable. Shows after the charge/condition item. 2. SYSTEM: DistroData: added Oracle id and system base. Added Springdale/PUIAS system base support. Note, unusually, Eurolinux, ScientificLinux 'just worked' re id and system base even though that had never been explicitly added. This is because their os-release file contains 'centos' string. 3. SYSTEM: DistroData: Added ubuntu mantic minotaur to ubuntu id matching table. This only really is used by Mint, but there you have it. Also added Debian 14 codename Forky. 4a. MEMORY: Add total RAM from one of following: * /sys/devices/system/memory (if it's available). This directory has to be compiled into kernel, so is not always present. This source has advantage of being user readable. If out of set bounds, shows note: est. to let user know it's an estimate. * If superuser and /proc/iomme, gets the total from /proc/iomem using some tricks and synthetic methods, which in general is pretty accurate, but when out of the bounds set, shows note: est. to let user know results are only estimates. This overrides /sys total. * If -m and dmidecode data found, uses the real RAM module total. For Linux and superuser. This overrides iomem and /sys totals. 4b. MEMORY: add iGPU RAM from /proc/iomem when detected. Requires sudo/root. 4c. MEMORY: using the real -m/RAM total for memory total when available, since that is the actual value we want, not the estimated stuff from /proc/iomem or /sys/devices/system. 5. RAM: added a long time oversight, lack of per array RAM installed size and occupied slots (modules). Those are now part of the Array line for each set of modules. Since total already shows in System RAM line above, the granular per array installed size total only shows if > 1 array is present, ie, almost never. 6. DRIVES: disk vendors, added more matches and vendors. We'll know the world is changing in a significant way when no new vendors appear for a while, but that's unlikely in the near term. 7. CPU: cpu_arch(), a few new ids added. 8. GRAPHICS: new amd, intel, nvidia ids, updates to driver version etc. -------------------------------------------------------------------------------- CHANGES: 1. SHORT: for Memory:, switched to using MiB/GiB/TiB, these numbers are just getting too big to be readable. This is also dynamic, if both used and available are the same unit, shows x/y [unit], otherwise shows x [unit]/y [unit]. 2. MEMORY: changed gpu: to igpu: to avoid confusing it with standalone gpu. Since only raspberry pi had gpu ram data before, almost nobody would have seen this in general anyway. -------------------------------------------------------------------------------- DOCUMENTATION: 1. MAN/OPTIONS: Updated for -Bxx, battery power now. 2. MAN: updated to better define where the System RAM: total:.. available etc come from, and what they refer to. Also added explanation in -m section about what the stuff is, and what the field names refer to. 2a. DOCS: docs/inxi-ram.txt added, and more info moved from inxi-data.txt and inxi-resources.txt. Goal is to remove both those files and move all their data, and any new data, into granular inxi-xxx.txt files. Also moved some RAM data from inx-unit-handling.txt to inxi-ram.txt. 2b. DOCS: docs/inxi-unit-handling.txt: updated with more ram / memory units, code, etc, to better fit with the concept of the inxi-unit-handling.txt doc. 2c. DOCS: docs/inxi-partitions.txt: updated, added more sources for partition file system types, cleaned up, more useful as a reference now. 2d. DOCS: docs/inxi-distros.txt: NEW, merged data from inxi-data.txt, inxi-resources.txt. Updated and added more info. 2e. DOCS: docs/inxi-tools-mapping.txt split off from inxi-tools.txt, makes it easier to find the mapping functions and features, which are hard to remember. Also updated and improved its usability. This is kind of a key document because it's hard to remember all the mapping tools internally, and this also connects those tools to their relevant granular inxi-xxx.txt docs. Not that it will help get helpers for these tedious tasks, but one can always dream, can't one? 3. DATA: data/graphics/ added for first vulkaninfo output file. -------------------------------------------------------------------------------- CODE: 1a. RAM: Fixed an irregularity, for RamItem, it used MiB as internal unit, this was silly because inxi uses KiB everywhere else. This correction was relatively easy to do, and allows the values to be used by other parts of inxi, like MemoryData. 1b. RAM: Added return of ram total for memory. 2a. INFO/RAM/PROCESSES: When MEMORY active, now uses row reference to create the fields. For INFO, now uses MemoryData::row() to generate the row fields instead of doing the logic in the info line generator. This simplifies the processing and allows for more granular control of output. 2b. INFO/RAM/PROCESSES: Added debugger switches --dbg 53 (show raw KiB/count values for /sys/devices/system/memory and /proc/iomem. Added --dbg 54, which shows per line size for iomem, in human readable units, and a final summary report of iomem and /sys data, this speeds up debugging. 2c. INFO/RAM/PROCESSES: Added --fake iomem, --fake sys-mem for debugging and testing. 3. MEMORY: MemoryData::short_data(): added so one tool generates output for all sources for short data. Easier to track and make consistent, and to make more granular and robust. 4. DRIVES/PARTITIONS: PartitionItem::partition_filters(), PartitionItem::fs_excludes(): refactored into PartitionItem::get_filters(), PartitionItem::set_filters(). Cleaned up, organized better, made comments much more useful. Goes with DOCS 2c updates. Now there's just one sub that does this filter/exclude work, which makes it easier to maintain long term. 5. GLOBAL: Used a trick I just learned, declaring variables in the bracket scope of a class, but not inside the package/class declaration. This makes it work like a static variable, which Perl 5.008 doesn't support. You have to use a sub inside the bracket scope to return the data outside that scope, but that is easy to do. 6. MACHINE: Added return of b_vm for VM detection in MEMORY. 7. SYSTEM: CompilerVersion: Failed to properly use references when passing $compiler around, not actually sure why it worked, but now is consistent.
This commit is contained in:
parent
ed7049fcc1
commit
2434d89d0c
62
inxi.1
62
inxi.1
|
@ -15,7 +15,7 @@
|
||||||
.\" with this program; if not, write to the Free Software Foundation, Inc.,
|
.\" with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
.\"
|
.\"
|
||||||
.TH INXI 1 "2023\-05\-07" "inxi" "inxi manual"
|
.TH INXI 1 "2023\-07\-10" "inxi" "inxi manual"
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
inxi \- Command line system information script for console and IRC
|
inxi \- Command line system information script for console and IRC
|
||||||
|
@ -390,11 +390,7 @@ for extra information (init type/version, runlevel/target, packages).
|
||||||
Note: if \fB\-m\fR or \fB\-tm\fR are active, the memory item will show in the
|
Note: if \fB\-m\fR or \fB\-tm\fR are active, the memory item will show in the
|
||||||
main Memory: report of \fB\-m\fR/\fB\-tm\fR/, not in \fB\Info:\fR.
|
main Memory: report of \fB\-m\fR/\fB\-tm\fR/, not in \fB\Info:\fR.
|
||||||
|
|
||||||
See \fB\-m\fR for explanation of \fBMemory: available:\fR.
|
See \fB\-m\fR for explanation of \fBMemory:\fR fields and values..
|
||||||
|
|
||||||
Raspberry Pi only: uses \fBvcgencmd get_mem gpu\fR to get gpu RAM amount, if
|
|
||||||
user is in video group and \fBvcgencmd\fR is installed. Uses this result to
|
|
||||||
increase the \fBMemory:\fR amount and \fBused:\fR amounts.
|
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-j\fR, \fB\-\-swap\fR
|
.B \-j\fR, \fB\-\-swap\fR
|
||||||
|
@ -548,7 +544,8 @@ If the detected speed is logically absurd, like 1 MT/s or 69910 MT/s, adds:
|
||||||
|
|
||||||
.nf
|
.nf
|
||||||
\fBMemory:
|
\fBMemory:
|
||||||
System RAM: available: 31.38 GiB used: 20.65 GiB (65.8%)
|
System RAM: total: 32 GiB note: est. available: 31.38 GiB
|
||||||
|
used: 20.65 GiB (65.8%)
|
||||||
Array\-1: capacity: N/A slots: 4 note: check EC: N/A
|
Array\-1: capacity: N/A slots: 4 note: check EC: N/A
|
||||||
Device\-1: DIMM_A1 type: DDR3 size: 8 GiB speed: 1600 MT/s (800 MHz)
|
Device\-1: DIMM_A1 type: DDR3 size: 8 GiB speed: 1600 MT/s (800 MHz)
|
||||||
Device\-2: DIMM_A2 type: DDR3 size: 8 GiB speed: spec: 1600 MT/s (800 MHz)
|
Device\-2: DIMM_A2 type: DDR3 size: 8 GiB speed: spec: 1600 MT/s (800 MHz)
|
||||||
|
@ -561,10 +558,49 @@ If the detected speed is logically absurd, like 1 MT/s or 69910 MT/s, adds:
|
||||||
See \fB\-\-memory\-modules\fR and \fB\-\-memory\-short\fR if you want a
|
See \fB\-\-memory\-modules\fR and \fB\-\-memory\-short\fR if you want a
|
||||||
shorter report.
|
shorter report.
|
||||||
|
|
||||||
Note: the \fBSystem Ram: available:\fR is actually the total installed RAM minus
|
Notes on \fBSystem RAM:\fR / \fBMemory:\fR report item:
|
||||||
some reserved and kernel code RAM (and in some cases GPU assigned main system
|
|
||||||
RAM) that is allocated on system boot, and thus is generally less than the
|
* \fBtotal:\fR and \fBigpu:\fR do not show for short form.
|
||||||
actual physical RAM installed.
|
|
||||||
|
* The \fBtotal:\fR can come from several possible sources:
|
||||||
|
|
||||||
|
\- If not superuser, and if \fI/sys/devices/system/memory\fR exists, it will
|
||||||
|
estimate the total RAM based on how many RAM blocks and their size. Sometimes
|
||||||
|
the block count is not an exact match to installed RAM, and inxi will attempt to
|
||||||
|
guess the actual RAM amount, except for virtual machines. When it synthesizes
|
||||||
|
the actual physical RAM total, it will show \fBnote: est.\fR.
|
||||||
|
|
||||||
|
Note that not all kernels are compiled to support generating this /sys
|
||||||
|
directory (kernel needs to be compiled with \fBCONFIG_MEMORY_HOTPLUG\fR).
|
||||||
|
|
||||||
|
\- For OpenBSD and not superuser, the total comes from the detected RAM in
|
||||||
|
dboot, if available.
|
||||||
|
|
||||||
|
\- If superuser, and if \fB\-m\fR used, it comes from the dmidecode RAM totals
|
||||||
|
if available, and if not, it comes from counting up the System RAM ranges in
|
||||||
|
\fI/proc/iomem\fR (Linux only), then rounding up, since that total is usually
|
||||||
|
slightly under the actual physical RAM total. If inxi is unsure about the total,
|
||||||
|
it will show \fBnote: est.\fB.
|
||||||
|
|
||||||
|
If no total data found, shows \fBtotal: N/A\fB.
|
||||||
|
|
||||||
|
* The \fBavailable:\fR item is the total installed RAM minus some reserved and
|
||||||
|
kernel code RAM (and in some cases iGPU assigned main system RAM) that is
|
||||||
|
allocated on system boot, and thus is generally less than the actual physical
|
||||||
|
RAM installed. This is called MemTotal in free/meminfo even though it isn't,
|
||||||
|
though it is the total available the kernel has to work with.
|
||||||
|
|
||||||
|
* The \fBused:\fR is the percent of the available RAM used, NOT of the total
|
||||||
|
physical RAM.
|
||||||
|
|
||||||
|
* The \fBigpu:\fR item either comes from Raspberry Pi gpu RAM, or from
|
||||||
|
\fI/proc/iomem\fR. The latter source is Linux + superuser only, and is not
|
||||||
|
guaranteed to be accurate, but sometimes is. That is for iGPU system RAM used,
|
||||||
|
not for standalone GPUs with their own internal RAM. Not all types of internal
|
||||||
|
VRAM are detectable, it depends on how the hardware assigns RAM to iGPU.
|
||||||
|
|
||||||
|
Raspberry Pi uses \fBvcgencmd get_mem gpu\fR to get gpu RAM amount, if
|
||||||
|
user is in video group and \fBvcgencmd\fR is installed.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-\-memory\-modules\fR, \fB\-\-mm\fR
|
.B \-\-memory\-modules\fR, \fB\-\-mm\fR
|
||||||
|
@ -784,7 +820,7 @@ Make sure that there is no space between letters and numbers (e.g. write as
|
||||||
If the \fB\-I\fR or \fB\-m\fR lines are not triggered, will also show the
|
If the \fB\-I\fR or \fB\-m\fR lines are not triggered, will also show the
|
||||||
system RAM used/total information.
|
system RAM used/total information.
|
||||||
|
|
||||||
See \fB\-m\fR for explanation of \fBRAM: total\-available:\fR.
|
See \fB\-m\fR for explanation of \fBSystem RAM:\fR fields and values.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-t cm\fR
|
.B \-t cm\fR
|
||||||
|
@ -1486,6 +1522,8 @@ the sound API/server.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-xx \-B\fR
|
.B \-xx \-B\fR
|
||||||
|
\- Adds current power use, in watts.
|
||||||
|
|
||||||
\- Adds serial number.
|
\- Adds serial number.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
|
|
227
inxi.changelog
227
inxi.changelog
|
@ -1,3 +1,230 @@
|
||||||
|
================================================================================
|
||||||
|
Version: 3.3.28
|
||||||
|
Patch: 00
|
||||||
|
Date: 2023-07-10
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
RELEASE NOTES:
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
New version, new man. Continuing the Memory info rollout started in 3.3.27.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
SPECIAL THANKS:
|
||||||
|
|
||||||
|
1. Thanks to linuxquestions.org Slackware forums for poking around a bit at the
|
||||||
|
new Memory total logic.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
KNOWN ISSUES:
|
||||||
|
|
||||||
|
1a. MEMORY: The memory total: has to be synthesized in some cases, based on some
|
||||||
|
math and educated guessing. When these guesses fall outside of predetermined
|
||||||
|
ranges, inxi will show note: est. to let the user know the total was synthesized
|
||||||
|
and possibly incorrect. For detected virtual machines, inxi does not try to
|
||||||
|
synthesize the total because a VM can have any amount of RAM assigned.
|
||||||
|
|
||||||
|
If superuser, and -m used, shows the real total from dmidecode if any RAM was
|
||||||
|
found. Not all systems have DMI RAM data however, or have dmidecode installed.
|
||||||
|
Will fallback to sythetic method in that case, which is usually right.
|
||||||
|
|
||||||
|
1b. MEMORY: With the superuser /proc/iomem method, if on a VM and not using even
|
||||||
|
GiB sized RAM ollocation, and -M is not triggered (which usually lets inxi know
|
||||||
|
it's a VM), the total will get rounded up or down based on a set of rules. For
|
||||||
|
example, 2.5 GiB real would become 3 GiB. I don't see any solution to this,
|
||||||
|
either assume the /proc/iomem is right but needs rounding up, or assume the /sys
|
||||||
|
block counts are right, or remove the feature.
|
||||||
|
|
||||||
|
Shows note: est. in cases where the rounded total is greater than a dynamic
|
||||||
|
factor difference from the internal total amount.
|
||||||
|
|
||||||
|
2. GENERAL/GRAPHICS: The problem of users showing up, requesting a feature, then
|
||||||
|
not doing any work, research, supplying energy, interest, and dare I say,
|
||||||
|
passion - nothing, expecting 'someone else' to do the work for them, continues,
|
||||||
|
sadly, with the recent request for vulkan data for Graphics. This appears to be
|
||||||
|
a problem more with the modern generation of free software users, I don't
|
||||||
|
remember this type of attitude 20 years ago, but I did watch it as it started
|
||||||
|
getting more common. Demotivating to be honest, but maybe one day someone will
|
||||||
|
show up who actually cares enough to help get the features they want developed.
|
||||||
|
|
||||||
|
While I am leaving that up as a low priority feature request, I am not
|
||||||
|
personally interested in that feature, nor is anyone else I asked, and given how
|
||||||
|
much raw data there is, and how difficult it is to parse, I'll just leave it as
|
||||||
|
an existing issue which might get work in a few years time, or not, basically
|
||||||
|
will require someone showing up who actually actively cares.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
BUGS:
|
||||||
|
|
||||||
|
1. DISK: total: used: report could have had wrong results for used:, like used
|
||||||
|
being > total: because the filter lists were missing some file systems for
|
||||||
|
exclusion. More of a fix than a bug, but users might see it as a bug.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
FIXES:
|
||||||
|
|
||||||
|
1. INFO: get_gcc_data(): was showing same GCC version as main and alternate.
|
||||||
|
Failed to filter out the discovered primary, that is. This is because usually
|
||||||
|
name is gcc-11 but sometimes it's the whole version, like gcc-11.2.0, the full
|
||||||
|
version string. This is the case in Slackware for example.
|
||||||
|
|
||||||
|
2. SHORT: MEMORY: BSD: did not show '%' for memory used percent, just the
|
||||||
|
number.
|
||||||
|
|
||||||
|
3. DRIVES/PARTITIONS: PartitionItem::set_filters() added many more exclude
|
||||||
|
types, that will help avoid both creating wrong disk used totals, and also not
|
||||||
|
show label:/uuid: fields for filesystem types that don't have uuid/labels. There
|
||||||
|
were a lot missing: encrypted, distributed, stackable, remote. Should clean up
|
||||||
|
wrong disk used values in some cases.
|
||||||
|
|
||||||
|
4a. PARTITIONS: PartitionItem::set_filters(). Added a lot of file systems, many
|
||||||
|
fuse, distributed, stackable types.
|
||||||
|
|
||||||
|
4b. PARTITIONS: Extended remote file system ID by fs, and added fuse fs for
|
||||||
|
local mounts, like gvfs, mtp, ptp and many other variants, that's things like
|
||||||
|
mounting apple partition, android, iphone, archives, etc. This should correct an
|
||||||
|
entire class of source: ERR-102 outputs.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
ENHANCEMENTS:
|
||||||
|
|
||||||
|
1. BATTERY: Added 'power' to battery report. That's the amount of watts its
|
||||||
|
using at that moment, so not super useful since it's running inxi at that
|
||||||
|
moment. But the data was there, so might as well show it. Only for -Bxx since it
|
||||||
|
will be so variable. Shows after the charge/condition item.
|
||||||
|
|
||||||
|
2. SYSTEM: DistroData: added Oracle id and system base. Added Springdale/PUIAS
|
||||||
|
system base support. Note, unusually, Eurolinux, ScientificLinux 'just worked'
|
||||||
|
re id and system base even though that had never been explicitly added. This is
|
||||||
|
because their os-release file contains 'centos' string.
|
||||||
|
|
||||||
|
3. SYSTEM: DistroData: Added ubuntu mantic minotaur to ubuntu id matching table.
|
||||||
|
This only really is used by Mint, but there you have it. Also added Debian 14
|
||||||
|
codename Forky.
|
||||||
|
|
||||||
|
4a. MEMORY: Add total RAM from one of following:
|
||||||
|
|
||||||
|
* /sys/devices/system/memory (if it's available). This directory has to be
|
||||||
|
compiled into kernel, so is not always present. This source has advantage of
|
||||||
|
being user readable. If out of set bounds, shows note: est. to let user know
|
||||||
|
it's an estimate.
|
||||||
|
|
||||||
|
* If superuser and /proc/iomme, gets the total from /proc/iomem using some
|
||||||
|
tricks and synthetic methods, which in general is pretty accurate, but when out
|
||||||
|
of the bounds set, shows note: est. to let user know results are only estimates.
|
||||||
|
This overrides /sys total.
|
||||||
|
|
||||||
|
* If -m and dmidecode data found, uses the real RAM module total. For Linux and
|
||||||
|
superuser. This overrides iomem and /sys totals.
|
||||||
|
|
||||||
|
4b. MEMORY: add iGPU RAM from /proc/iomem when detected. Requires sudo/root.
|
||||||
|
|
||||||
|
4c. MEMORY: using the real -m/RAM total for memory total when available, since
|
||||||
|
that is the actual value we want, not the estimated stuff from /proc/iomem or
|
||||||
|
/sys/devices/system.
|
||||||
|
|
||||||
|
5. RAM: added a long time oversight, lack of per array RAM installed size and
|
||||||
|
occupied slots (modules). Those are now part of the Array line for each set of
|
||||||
|
modules. Since total already shows in System RAM line above, the granular per
|
||||||
|
array installed size total only shows if > 1 array is present, ie, almost never.
|
||||||
|
|
||||||
|
6. DRIVES: disk vendors, added more matches and vendors. We'll know the world is
|
||||||
|
changing in a significant way when no new vendors appear for a while, but that's
|
||||||
|
unlikely in the near term.
|
||||||
|
|
||||||
|
7. CPU: cpu_arch(), a few new ids added.
|
||||||
|
|
||||||
|
8. GRAPHICS: new amd, intel, nvidia ids, updates to driver version etc.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
CHANGES:
|
||||||
|
|
||||||
|
1. SHORT: for Memory:, switched to using MiB/GiB/TiB, these numbers are just
|
||||||
|
getting too big to be readable. This is also dynamic, if both used and available
|
||||||
|
are the same unit, shows x/y [unit], otherwise shows x [unit]/y [unit].
|
||||||
|
|
||||||
|
2. MEMORY: changed gpu: to igpu: to avoid confusing it with standalone gpu.
|
||||||
|
Since only raspberry pi had gpu ram data before, almost nobody would have seen
|
||||||
|
this in general anyway.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
DOCUMENTATION:
|
||||||
|
|
||||||
|
1. MAN/OPTIONS: Updated for -Bxx, battery power now.
|
||||||
|
|
||||||
|
2. MAN: updated to better define where the System RAM: total:.. available etc
|
||||||
|
come from, and what they refer to. Also added explanation in -m section about
|
||||||
|
what the stuff is, and what the field names refer to.
|
||||||
|
|
||||||
|
2a. DOCS: docs/inxi-ram.txt added, and more info moved from inxi-data.txt and
|
||||||
|
inxi-resources.txt. Goal is to remove both those files and move all their data,
|
||||||
|
and any new data, into granular inxi-xxx.txt files. Also moved some RAM data
|
||||||
|
from inx-unit-handling.txt to inxi-ram.txt.
|
||||||
|
|
||||||
|
2b. DOCS: docs/inxi-unit-handling.txt: updated with more ram / memory units,
|
||||||
|
code, etc, to better fit with the concept of the inxi-unit-handling.txt doc.
|
||||||
|
|
||||||
|
2c. DOCS: docs/inxi-partitions.txt: updated, added more sources for partition
|
||||||
|
file system types, cleaned up, more useful as a reference now.
|
||||||
|
|
||||||
|
2d. DOCS: docs/inxi-distros.txt: NEW, merged data from inxi-data.txt,
|
||||||
|
inxi-resources.txt. Updated and added more info.
|
||||||
|
|
||||||
|
2e. DOCS: docs/inxi-tools-mapping.txt split off from inxi-tools.txt, makes it
|
||||||
|
easier to find the mapping functions and features, which are hard to remember.
|
||||||
|
Also updated and improved its usability. This is kind of a key document because
|
||||||
|
it's hard to remember all the mapping tools internally, and this also connects
|
||||||
|
those tools to their relevant granular inxi-xxx.txt docs. Not that it will help
|
||||||
|
get helpers for these tedious tasks, but one can always dream, can't one?
|
||||||
|
|
||||||
|
3. DATA: data/graphics/ added for first vulkaninfo output file.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
CODE:
|
||||||
|
|
||||||
|
1a. RAM: Fixed an irregularity, for RamItem, it used MiB as internal unit, this
|
||||||
|
was silly because inxi uses KiB everywhere else. This correction was relatively
|
||||||
|
easy to do, and allows the values to be used by other parts of inxi, like
|
||||||
|
MemoryData.
|
||||||
|
|
||||||
|
1b. RAM: Added return of ram total for memory.
|
||||||
|
|
||||||
|
2a. INFO/RAM/PROCESSES: When MEMORY active, now uses row reference to create the
|
||||||
|
fields. For INFO, now uses MemoryData::row() to generate the row fields instead
|
||||||
|
of doing the logic in the info line generator. This simplifies the processing
|
||||||
|
and allows for more granular control of output.
|
||||||
|
|
||||||
|
2b. INFO/RAM/PROCESSES: Added debugger switches --dbg 53 (show raw KiB/count
|
||||||
|
values for /sys/devices/system/memory and /proc/iomem. Added --dbg 54, which
|
||||||
|
shows per line size for iomem, in human readable units, and a final summary
|
||||||
|
report of iomem and /sys data, this speeds up debugging.
|
||||||
|
|
||||||
|
2c. INFO/RAM/PROCESSES: Added --fake iomem, --fake sys-mem for debugging and
|
||||||
|
testing.
|
||||||
|
|
||||||
|
3. MEMORY: MemoryData::short_data(): added so one tool generates output for all
|
||||||
|
sources for short data. Easier to track and make consistent, and to make more
|
||||||
|
granular and robust.
|
||||||
|
|
||||||
|
4. DRIVES/PARTITIONS: PartitionItem::partition_filters(),
|
||||||
|
PartitionItem::fs_excludes(): refactored into PartitionItem::get_filters(),
|
||||||
|
PartitionItem::set_filters(). Cleaned up, organized better, made comments much
|
||||||
|
more useful. Goes with DOCS 2c updates. Now there's just one sub that does this
|
||||||
|
filter/exclude work, which makes it easier to maintain long term.
|
||||||
|
|
||||||
|
5. GLOBAL: Used a trick I just learned, declaring variables in the bracket scope
|
||||||
|
of a class, but not inside the package/class declaration. This makes it work
|
||||||
|
like a static variable, which Perl 5.008 doesn't support. You have to use a sub
|
||||||
|
inside the bracket scope to return the data outside that scope, but that is easy
|
||||||
|
to do.
|
||||||
|
|
||||||
|
6. MACHINE: Added return of b_vm for VM detection in MEMORY.
|
||||||
|
|
||||||
|
7. SYSTEM: CompilerVersion: Failed to properly use references when passing
|
||||||
|
$compiler around, not actually sure why it worked, but now is consistent.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- Harald Hope - Mon, 10 July 2023 14:00:04 -0700
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Version: 3.3.27
|
Version: 3.3.27
|
||||||
Patch: 00
|
Patch: 00
|
||||||
|
|
Loading…
Reference in a new issue