ファイルシステムと入出力



unix:uread stream [buffer] [size] [関数]

streamからsizeバイト読み込む。 streamは、ストリームオブジェクトあるいはファイルディスクリプタ(fd)を 表現する整数である。 もし、bufferが与えられるとき、入力はそこに蓄積される。 そうでないならば、入力はstreamのバッファに蓄積される。 したがって、もしstreamがfdなら、bufferは与えられなければならない。 unix:ureadは、新しい文字列バッファを配置しない。 unix:ureadは、実際に読み込まれたバイト数を返す。


unix:write stream string &optional size [関数]

streamstringsizeバイトを書き込む。 もし、sizeが省略されたならば、stringの全部の長さが出力される。


unix:fcntl stream command argument [関数]



unix:ioctl stream command buffer [関数]


unix:ioctl_ stream command1 command2 [関数]


unix:ioctl_R stream command1 command2 buffer [size] [関数]


unix:ioctl_W stream command1 command2 buffer [size] [関数]


unix:ioctl_WR stream command1 command2 buffer [size] [関数]


unix:close fd [関数]
fdで指定されるファイルをクローズする。


unix:dup fd [関数]
fdで指定されるファイルディスクリプタを2重化して返す。


unix:pipe [関数]
パイプを作成する。このパイプの入出力ストリームを返す。


unix:lseek stream position [whence 0] [関数]
streamのファイルポインタをwhenceからpositionの 位置に設定する。


unix:link path1 path2 [関数]

hardリンクを作る。


unix:unlink path [関数]

pathで指定されたファイルのhardリンクを取り去る。 もし、ファイルに参照が残っていないなら、削除される。


unix:mknod path mode [関数]

ファイルシステムにinodeを作る。 pathは、pathnameオブジェクトでなく文字列でなければならない。


unix:mkdir path mode [関数]
ファイルシステムにディレクトリを作る。 pathは、pathnameオブジェクトでなく文字列でなければならない。


unix:access path mode [関数]
pathへのアクセス権利をチェックする。


unix:stat path [関数]
pathのinode情報を得て、以下に示す整数のリストを返す。


  st_ctime	; file last status change time
  st_mtime	; file last modify time
  st_atime	; file last access time
  st_size	; total size of file, in bytes
  st_gid	; group ID of owne
  st_uid	; user ID of owner
  st_nlink	; number of hard links to the file
  st_rdev	; the device identifier (special files only)
  st_dev	; device file resides on
  st_ino	; the file serial number
  st_mode	; file mode
unix:chdir path [関数]
現在のディレクトリをpathに変更する。


unix:getwd [関数]
現在のディレクトリを返す。


unix:chmod path integer [関数]

pathのアクセスモード(permission)を変更する。


unix:chown path integer [関数]
pathファイルのオーナーを変更する。


unix:isatty (stream $ \vert$ fd) [関数]

もし、streamがTTY型のデバイス(シリアルポートあるいは仮想TTY)に接続されているなら Tを返す。


unix:msgget key mode [関数]

keyによってアドレスされるメッセージキューを作成し、配置する。


unix:msgsnd qid buf [mtype [flag]] [関数]


unix:msgrcv qid buf [size [mtype [flag]]] [関数]


unix:socket domain type &optional proto [関数]

domainに定義されている名前を持ちtypeを抽象型とするソケットを作成する。 typeは、1 (SOCK_STREAM), 2 (SOCK_DGRAM), 3 (SOCK_RAW), 4 (SOCK_RDM), 5 (SOCK_SEQPACKET)の内の1つである。


unix:bind socket name [関数]
namesocketを関連付ける。 もし、ソケットがUNIX領域内で定義されているならば、nameは、UNIXのパス名でなければならない。


unix:connect socket addr [関数]
socketaddrで指定される他のソケットを接続する。


unix:listen socket &optional backlog [関数]
socketから接続要求を受け始める。 backlogは、接続の確定を待つためのキューの長さを指定する。


unix:accept socket [関数]
socketから接続要求を受け、両方向にメッセージを交換できるファイルディスクリプタ を返す。


unix:recvfrom socket &optional mesg from flag [関数]
socketからデータを書いたメッセージを受ける。 そのソケットは、unix:bindにより名前を割り当てられなければならない。 mesgは、入ってきたメッセージが蓄積されるための文字列である。 もし、mesgが与えられたならば、unix:recvfromは受け取ったバイト数を返す。 もし省略されたなら、メッセージを蓄積するための新しい文字列を作成し、 その文字列を返す。


unix:sendto socket addr mesg &optional len flag [関数]
addrによって指定される他のソケットへデータの書かれたメッセージを送る。 socketは、名前が割り当てられてないデータ書き込み型のソケットでなければならない。 mesgは、送るための文字列であり、lenは文字列の最初から 数えたメッセージの長さである。 もし、省略されたなら、すべての文字列を送る。


unix:getservbyname servicename [関数]

/etc/servicesあるいはNISデータベースに記録されているservicename のサービス番号を返す。


unix:gethostbyname hostname [関数]

hostnameのipアドレスとアドレス型のリストを返す。 (一般にいつも AF_INET==2).


unix:syserrlist errno [関数]

errnoのエラーコードに対するエラー情報が記述された文字列を返す。


2016-04-05