Not a typewriterとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > Not a typewriterの意味・解説 

Not a typewriter

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/08/29 05:38 UTC 版)

Linuxにおける"not a typewriter"エラー

not a typewriter(ノット・ア・タイプライター(タイプライターではない))またはENOTTY[1]は、多くのUNIXシステムに見られるエラーコード英語版で、errno.h英語版で定義されている。このエラーコードは現在、ioctl入出力制御)システムコールで無効なioctl番号が指定されたことを示すために使用されている。

詳細

このエラーコードは、初期のUNIXに由来する。バージョン6以前のUNIXにおける入出力制御は、gttyおよびsttyシステムコールを通じて、テレタイプ(TTYと略される)に代表されるシリアル接続された端末デバイスに限定されていた[2]。端末でないデバイスでこれらのシステムコールを使おうしたときに、ENOTTYエラーが発生した。stty/ttyシステムコールが、より一般的なioctl(入出力制御)システムコールに置き換えられても、ENOTTYエラーコードは維持された。

初期のコンピュータでは、電気機械式のタイプライターが端末として使われていた[3][4]。現代のUNIXシステムで広く使われている"TTY"という略語は、"teletypewriter"(テレタイプライター)の略である。例えば、SIGHUP英語版シグナルの本来の意味は、それを使用するテレタイプライターの電話線を切る(hung up)ことである。「テレタイプ」はAT&Tの子会社であるテレタイプ社登録商標であるため、それを回避するために「タイプライター」という一般名詞に置き換えたものと見られる。

POSIXでは、ENOTTYを"not a terminal"(端末ではない)という意味とすることで、この問題を回避している[5]

ioctlは現在、端末以外の機器にも対応しているため、システムによっては"inappropriate ioctl for device"(デバイスに対する不適切なioctl)のような別のメッセージを表示することもある[6][7]

発生

プログラムがioctlを発行しなくても、このメッセージが発生する場合がある。それは、isatty()ライブラリルーチンによるものである。エラーコードerrnoは、システムコールが失敗したときにのみ設定される。C標準I/Oライブラリが最初に行うシステムコールの一つがisatty()コールであり、プログラムが人間によって対話的に実行されているのか(この場合isatty()は成功し、ライブラリは出力を一度に一行ずつ書くので、ユーザーはテキストの流れを見ることができる)、あるいはパイプラインの一部として実行されているのか(この場合、効率化のためにテキストをまとめて書く)を判断するために使用される。システムコールとは関係のない理由でライブラリルーチンが失敗した場合(例えば、passwdファイルにユーザ名が見つからなかった場合など)、(経験の浅いプログラマが)失敗のたびにいちいち通常のエラー報告ルーチンperror()を呼び出していると、残ったENOTTYによって全く不適切な"not a typewriter"エラーが表示されることになる。

かつて、UNIXのメールサーバプログラムsendmailには長期に渡りこのバグがあった[8]。他のシステムからメールが配信されるとき、メールプログラムは非対話的に実行されていた。宛先アドレスがローカルで、ローカルのパスワードファイルにないユーザー名を参照していた場合、メールの送信者に対し、「送信先はタイプライターではない」という通知が送信されていた。

脚注

  1. ^ What does ENOTTY stand for?” (英語). www.abbreviations.com. 2020年7月16日閲覧。
  2. ^ Version 6 UNIX manual, section 2, system calls”. 2021年11月13日閲覧。
  3. ^ Unix Programmer's Manual. (November 3, 1971). https://www.bell-labs.com/usr/dmr/www/1stEdman.html 
  4. ^ RFC 1, Host Software, Steve Crocker (7 April 1969). Page 3, section "Simple use".
  5. ^ The Open Group Base Specifications Issue 7, 2018 edition/IEEE Std 1003.1-2017: isatty”. 2021年11月13日閲覧。
  6. ^ OpenBSD manual: intro, errno — introduction to system calls and error numbers”. 2021年11月13日閲覧。
  7. ^ FreeBSD manual: intro -- introduction to system calls and error numbers”. 2021年11月13日閲覧。
  8. ^ A/UX: mail and "not a typewriter" (2/95)”. support.apple.com (1995年2月27日). 2021年11月13日閲覧。

関連項目

外部リンク

  • ウィキメディア・コモンズには、Not a typewriterに関するカテゴリがあります。

「Not a typewriter」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

Not a typewriterのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Not a typewriterのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのNot a typewriter (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS