creat
読み:クリエイト?
外語:creat
UNIXのシステムコールの一つ。ファイルを作成する低水準入出力関数。
書式
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int creat(const char *pathname, mode_t mode);
概要
関数は、新しいファイルディスクリプターを返す。
エラーが発生した場合は-1を返し、errnoが設定される。
説明
英語で「作る」は "create" であり、このシステムコールの名前は明らかにスペルミスである。
この原因としては幾説かあるが、事実はどうであったのか、定かではない。
- 単純にケン・トンプソンのスペルミス説
- 当時のアセンブラーの機能が乏しかったためラベル名が6文字に制限されていて_creatで6文字になり末尾にeが入れられなかった説
ただ、unlink、setuid、setgidなど、古くからあるシステムコールでも6文字のものが存在するので、アセンブラーの制限が事実であるなら、unlinkすらない本当に初期の時代の話ということになる。
再検索