36.11系统信息

 
:computer ()
:comp= computer ()
:[comp,maxsize] = computer ()
:[comp,maxsize,endian] = computer ()
:arch= computer

打印或返回表单的字符串cpu-vendor-os标识Octave正在运行的计算机类型。

如果使用输出参数调用,则返回值而不是打印。例如

computer ()
   -| x86_64-pc-linux-gnu

mycomp = computer ()
   ⇒ mycomp = x86_64-pc-linux-gnu

若指定两个输出参数,还返回数组的最大元素数。这将取决于Octave是使用32位还是64位索引向量编译的。

如果指定了三个输出参数,也将当前系统的字节顺序作为字符返回("B"对于big endian或"L"对于小endian)。

如果参数"arch"如果指定了,则返回一个字符串,指示运行Octave的计算机的体系结构体。

如果使用–traditional参数调用Octave,结果可能会有所不同。

详见: isunix,ismac,ispc.

广告
 
:[uts,err,msg] = uname ()

返回结构体中的系统信息。

例如

uname ()
   ⇒ {
         sysname = x86_64
         nodename = segfault
         release = 2.6.15-1-amd64-k8-smp
         version = Linux
         machine = #2 SMP Thu Feb 23 04:57:49 UTC 2006
      }

如果成功,err为0并且msg是空字符串。否则,err为非零并且msg包含与系统相关的错误消息。

广告
 
:n= nproc ()
:n= nproc (query)

返回当前可用(逻辑)处理器的数量。

这将返回逻辑处理器的数量。对于具有超线程的处理器,这比物理内核的数量还要多。

如果使用可选参数调用query,修改进程的计数方式,如下所示:

all

处理器的总数。

广告
current

当前进程可用的处理器。

广告
overridable

等同于current,但可通过重写OMP_NUM_THREADS 环境变量。

广告
广告
 
:tf= ispc ()

如果Octave在Windows系统上运行,则返回true,否则返回false。

详见: isunix,ismac.

广告
 
:tf= isunix ()

如果Octave在类Unix系统上运行,则返回true,否则返回false。

详见: ismac,ispc.

广告
 
:tf= ismac ()

如果Octave在Mac OS X系统上运行,则返回true,否则返回false。

详见: isunix,ispc.

广告
 
:tf= isieee ()

如果您的计算机返回true声称以符合用于浮点计算的IEEE标准。

没有进行实际测试。

广告
 
:tf= isdeployed ()

如果当前程序已编译并单独从Octave解释器运行,则返回true;如果在Octave解释程序中运行,则为false。

目前,此函数在Octave中总是返回false。

广告
 
:tf= isstudent ()

如果在的学生版中运行,则返回trueMATLAB.

isstudent在Octave中总是返回false。

详见: false.

广告
 
:dir= OCTAVE_HOME ()

返回顶层Octave安装目录的名称。

OCTAVE_HOME对应于配置变量prefix.

详见: EXEC_PATH,IMAGE_PATH,OCTAVE_EXEC_HOME.

广告
 
:dir= OCTAVE_EXEC_HOME ()

返回与体系结构体相关的文件的顶层Octave安装目录的名称。

如果未单独指定,则该值与OCTAVE_HOME相同。OCTAVE_EXEC_HOME对应于配置变量exec_prefix.

详见: EXEC_PATH,IMAGE_PATH,OCTAVE_HOME.

广告
 
:dir= matlabroot ()

返回顶层Octave安装目录的名称。

这是函数的别名OCTAVE_HOME 提供兼容性。

详见: OCTAVE_HOME.

广告
 
:cfg_dir= user_config_dir ()

返回用于用户配置的(特定于平台的)目录。

详见: user_data_dir.

广告
 
:data_dir= user_data_dir ()

返回用户数据的(特定于平台的)目录。

详见: user_config_dir.

广告
 
:verstr= OCTAVE_VERSION ()

以字符串形式返回Octave的版本号。

详见: ver,version.

广告
 
:v= version ()
:[v,d] = version ()
:v= version (feature)

获取Octave的版本信息。

如果在没有输入参数的情况下调用,则第一个返回值v以字符串形式给出Octave的版本号。第二个返回值d将发布日期保存为字符串。

可以传递以下参数feature:

"-date"

对于正在运行的构建的发布日期,

广告
"-description"

对于发布的描述(总是空字符串),

广告
"-release"

对于正在运行的构建的名称(始终为空字符串),

广告
"-java"

对于Java VM的版本信息,

广告
"-fftw"

有关链接的版本信息FFTW,

广告
"-blas"

有关链接的版本信息爆破,

广告
"-lapack"

有关链接的版本信息LAPACK .

广告
"-hgid"

用于构建Octave的来源的多变ID。

广告

返回的信息"-blas""-lapack"参数可能不可靠。它可能会返回Octave构建时链接到的库,而不是当前使用的库。

没有输入和输出参数的变量是函数的别名Octave版本 提供兼容性。

详见: OCTAVE_VERSION,ver.

广告
 
:ver
:ver 八度
:ver package
:v ver (…)

显示包含当前Octave版本号、许可证限制和操作系统的标题。标头后面是已安装包、版本和安装目录的列表。

使用包名称package或Octave以查询特定组件。

当使用输出参数调用时,返回一个结构体向量,该向量表示Octave和每个已安装的包。每个结构体都包括以下字段。

Name

程序包名称。

广告
Version

包的版本。

广告
Release

软件包的发布(当前未使用,默认为[]).

广告
Date

版本发布的日期。

广告

详见: version,usejava,pkg.

广告
 
:tf= compare_versions (v1,v2,operator)

使用给定的比较两个版本字符串operator.

此函数假设版本v1v2是从数字和句点字符组成的任意字符串,后面可能跟有任意字符串(例如。,"1.2.3","0.3","0.1.2+""1.2.3.4-test1").

该版本首先被分成数字和字符部分,然后这些部分被填充为相同的长度(即。,"1.1"会被填充"1.1.0"当与比较时"1.1.1",并且分别用null填充字符串的字符部分)。

运算符可以是集合中的任何逻辑运算符

请注意该版本"1.1-test2"将比较为大于"1.1-test10"而且从于首先比较数字部分,"a"比较小于"1a"因为第二个字符串以数字部分开头,即使double ("a")大于double ("1").

广告
 
:tf= verLessThan (package,version)

如果程序包的安装版本小于,则返回trueversion.

package是要检查的包的名称。使用"Octave"作为package以检查Octave本身的版本。

version是要将其与之进行比较的版本。版本是一个字符串,其格式为compare_versions:从数字和句点字符组成的任意长字符串,后面可能跟有任意字符串(例如。,"1.2.3","0.3","0.1.2+""1.2.3.4-test1").

示例:

tf = verLessThan ("Octave", "5")
⇒ tf = 0

tf = verLessThan ("io", "2.4.12")
⇒ ...

if (! verLessThan ("Octave", "5"))
  ## ... use new Octave 5 features ...
endif

详见: compare_versions,version,ver,pkg.

广告
 
:license
:license inuse
:license inusefeature
:license (“使用”)
:license_struct= license (“使用”)
:license_struct= license (“inuse”,feature)
:status= license 测验feature)
:status= license 结账feature)
:[status,errmsg] = license 结账feature)

获取Octave和Octave软件包的许可证信息。

GNU Octave是在GNU通用公共许可证(GPL)下分发的自从软件,许可证管理器毫无意义。此函数仅提供给MATLAB兼容性。

当在没有额外输入参数的情况下调用时,它将返回Octave许可证,否则第一个输入定义操作模式,并且必须是以下字符串之一:inuse,testcheckout。可选feature自变量可以是"octave"(核心)或Octave包的名称。

"inuse"

打印已加载函数的列表,即“Octave”和已加载包的列表。如果指定输出,它将返回一个包含字段的结构体数组"feature""user".

广告
"test"

如果指定,则返回truefeature已安装,否则为false。

可选的第三个参数"enable""disable"已接受但被忽略。

广告
"checkout"

如果指定,则返回truefeature已安装,否则为false。如果未安装包,可选的第二个输出将显示错误消息。

广告

详见: pkg,ver,version.

广告
 
:memory ()
:[userdata,systemdata] = memory ()

显示或返回有关Octave内存使用情况的信息。

如果在没有输出参数的情况下调用函数,则会显示一个包含当前内存消耗概述的表。

输出参数userdata是一个具有以下字段的结构体,其中包含Octave过程的数据:

MaxPossibleArrayBytes

要赋值的数组的最大大小。请注意,这包括全部的物理内存和交换空间。赋值那么多内存可能会导致系统不稳定、数据损坏和/或文件系统损坏。请注意,根据平台(32位系统)的不同,最大的连续内存块可能会进一步限制最大可能赋值的数组。此检查当前未支持。

广告
MemAvailableAllArrays

可用内存的总大小(以字节为单位)。

广告
ram_available_all_arrays

可以在物理内存中赋值的数组的最大大小(不包括交换空间)。请注意,根据平台(32位系统)的不同,最大的连续内存块可能会进一步限制最大可能的可赋值数组。此检查当前未执行。

广告
MemUsedMATLAB
mem_used_octave

Octave当前使用的内存(包括交换空间)(以字节为单位)。

广告
ram_used_octave

Octave当前使用的物理内存(不包括交换空间),以字节为单位。

广告

输出参数systemdata是一个嵌套结构体,包含以下字段,其中包含有关系统内存的信息:

PhysicalMemory.Available

当前可用的物理内存(以字节为单位)。

广告
PhysicalMemory.Total

总物理内存(以字节为单位)。

广告
SystemMemory.Available

当前可用内存(包括交换空间)(以字节为单位)。

广告
SystemMemory.Total

总内存(包括交换空间)(以字节为单位)。

广告
VirtualAddressSpace.Available

当前可用的虚拟地址空间(以字节为单位)。

广告
VirtualAddressSpace.Total

总虚拟地址空间(以字节为单位)。

广告

示例#1:打印格式化的内存使用表

memory ()
⇒
System    RAM: 3934008 KiB,  swap: 4087804 KiB
Octave    RAM:  170596 KiB,  virt: 1347944 KiB
Free      RAM: 1954940 KiB,  swap: 4087804 KiB
Available RAM: 2451948 KiB, total: 6042744 KiB

示例#2:返回具有内存使用信息的结构体

[userdata, systemdata] = memory ()
⇒
 userdata =

   scalar structure containing the fields:

     MaxPossibleArrayBytes = 6.1622e+09
     MemAvailableAllArrays = 6.1622e+09
     ram_available_all_arrays = 2.4883e+09
     MemUsedMATLAB = 1.3825e+09
     mem_used_octave = 1.3825e+09
     ram_used_octave = 1.7824e+08

 systemdata =

   scalar structure containing the fields:

     PhysicalMemory =

       scalar structure containing the fields:

         Available = 2.4954e+09
         Total = 4.0284e+09

     SystemMemory =

       scalar structure containing the fields:

         Available = 6.6813e+09
         Total = 8.2143e+09

     VirtualAddressSpace =

       scalar structure containing the fields:

         Available = 2.8147e+14
         Total = 2.8147e+14

编程说明:此函数仅适用于Linux和Windows。

详见: computer,getpid,getrusage,nproc,uname.

广告
 
:procstats= getrusage ()

返回一个结构体,该结构体包含有关当前Octave进程的许多统计信息。

并非所有字段在所有系统上都可用。如果无法获取CPU时间统计信息,则将CPU时隙设置为零。其他缺失的数据从NaN替代。可能的字段列表为:

idrss

非共享数据大小。

广告
inblock

块输入操作的数目。

广告
isrss

非共享堆栈大小。

广告
ixrss

共享内存大小。

广告
majflt

主要页面错误的数量。

广告
maxrss

最大数据大小。

广告
minflt

次要页面错误的数量。

广告
msgrcv

get的邮件数。

广告
msgsnd

发送的邮件数。

广告
nivcsw

非自愿上下文切换的数量。

广告
nsignals

接get的信号数。

广告
nswap

掉期数量。

广告
nvcsw

自愿上下文切换的数量。

广告
oublock

块输出操作的数量。

广告
stime

一种包含所用系统CPU时间的结构体。该结构体具有以下元素sec(秒)usec(微秒)。

广告
utime

一种包含用户使用的CPU时间的结构体。该结构体具有以下元素sec(秒)usec(微秒)。

广告
广告
 
:value= winqueryreg (rootkey,subkey,valuename)
:value= winqueryreg (rootkey,subkey)
:names= winqueryreg ("name",rootkey,subkey)

从Windows注册表中查询名称或值。

在Windows上,返回注册表项的值subkey从根密钥rootkey。您可以使用可选参数指定查询的注册表值的名称valuename。否则,如果仅使用两个参数调用或valuename为空,则默认值为subkey返回。如果注册表值的类型为"REG_DWORD"然后value属于int32类。如果值的类型为"REG_SZ""REG_EXPAND_SZ"返回一个字符串。

如果第一个参数是"name",返回一个字符串的元胞数组,该数组具有该键处的值的名称。

变量rootkey必须是具有有效根密钥标识符的字符串:

HKCR
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKCU
HKEY_CURRENT_USER
HKLM
HKEY_LOCAL_MACHINE
HKU
HKEY_USERS
HKEY_PERFORMANCE_DATA

示例:

获取键处的值名称列表'HKCU\Environment':

valuenames=winqueryreg(“名称”,“HKEY_CURRENT_USER”,…“环境”);

对于每个valuenames,显示值:

对于k=1:numel(valuenames)val=winqueryreg(“HKEY_CURRENT_USER”,“环境”。。。valuenames{k});str=sprintf(“%s=%s”,valuenames{k},编号2str(val));  disp(str);外循环

在非Windows平台上,此函数失败并出现错误。

广告

版权所有 © 2024-2025 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2