Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ power(4) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

powerd(8)

sysctld(8)

POWER(4)  —  NEWS-OS Programmer’s Manual

名称

power − NEWS 電源インターフェース

形式

pseudo-device power

解説

/dev/power を read システムコールによって読み出すことにより、 現在の電源の電圧値を 1 バイトで返します。 電圧値の値は後述の PWIOCPOWERPARAM で得られる範囲の値となります。

また、 ioctl(2) により、様々な情報を得ることができます。

IOCTL

ioctl のコマンドについて解説します。なおヘッダファイルは、 以下のものをインクルードしてください。

#include <sys/ioctl.h>
#include <machine/powerctl.h>
#include <machine/powerioctl.h>

PWIOCBATTVOL
バッテリーの A/D コンバータの単位時間の平均値の 10000 倍の値を返す

int volt;
ioctl(power, PWIOCBATTVOL, &volt);

PWIOCBATTDVOL
バッテリーの A/D コンバータの単位時間の平均変化値の 10000 倍の値を返す

int dvolt;
ioctl(power, PWIOCBATTDVOL, &dvolt);

PWIOCBATTRVOL
バッテリーの A/D コンバータの直接の値を返す

int volt;
ioctl(power, PWIOCBATTRVOL, &volt);

PWIOCBATTSTAT
バッテリーの状態を返す

int stat;
ioctl(power, PWIOCBATTSTAT, &stat);

BATT_BTTOK
このビットが 0 ならばバッテリーが空になった。

BATT_DCOPE
このビットが 0 ならば AC、1 なら DC。

BATT_PSOK
このビットが 0 ならば電源異常。

BATT_PWSW
SHUTDOWNスイッチ/電源スイッチが押された。

PWIOCIOPWSTAT
電源を切ることのできるデバイスの状況を得る

int stat;
ioctl(power, PWIOCIOPWSTAT, &stat);

POWER_FDD
FDD ドライブの電源

POWER_RS
RS-232C ドライバの電源

PWIOCBATTPARAM
電源およびバッテリーパラメータを得る

struct battparam param;
ioctl(power, PWIOCBATTPARAM, ¶m);

PWIOCGETSYSDI
sysctld(8) の状態を得る

#include <machine/sysctl.h>
int state;
ioctl(power, PWIOCGETSYSDI, &state);

PWIOCPOWERPARAM
read(2) で読み出される電源値の最大、最小、実際の何倍の値が読めるかなどの パラメータを得る。最大値はメンバ maxvalue、最小値はメンバ minvalue、 メンバ scale で得られた値倍された値が read(2) で読めます。

struct powerparam param;
ioctl(power, PWIOCPOWERPARAM, ¶m);

PWIOCPOWERSTATE
現在の電源の状態を得ます。

struct powerstatus status;
ioctl(power, PWIOCPOWERSTATE, &status);

エラー

システムコールがエラーで終了した場合、 システムコールのリターン値は −1 となり、 その時のエラーコードに以下のような値が返されます。

#include <sys/errno.h>
extern int errno;

[ENXIO] open 時に指定したスペシャルデバイスが存在しない。

[EIO] そのような ioctl はサポートされていない。

[EACCES]
root 以外のユーザでシステムの状態を変更しようとした。

関連ファイル

/dev/power

関連事項

powerd(8), sysctld(8)

備考

NWS-3100 シリーズ、NWS-5000シリーズでのみサポートされています。 NWS-5000シリーズでは、バッテリーが搭載されていないために、 電源電圧などに関するものは任意の値がかえります。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026