タグ

unixに関するtdakakのブックマーク (8)

  • Unix考古学を読んで遠い昔に思いを馳せる - Code Day's Night

    3年ほど前に「Unixという考え方」というを読んで感銘を受けたので、最近話題になってたUnix考古学も読んでみました。これは非常に面白く、早く先を読みたいと思うでした。 1960年から1990年ぐらいまでのUnixの歴史が、数多くの参考文献やメモを掘り起こし、整理して、たまに著者の推測も入りながら書かれているです。 当時の政治などの時代背景も書いてあるのが良いです。 Unixの初期はAT&Tが独占禁止法で通信分野以外の商売をしてはいけない状態で、AT&Tのベル研究所から研究成果としてUnixが出てきて、開発者の草の根活動なども手伝って普及していく過程、その後BSDなどに派生したり、AT&Tが解体されてUnixを商売として力を入れられるようになっていく過程、ARPAやDARPAによるインターネットの後押しなどなど、今の私たちを支えるUnixやインターネットがたどった道が詳細に書かれてい

    Unix考古学を読んで遠い昔に思いを馳せる - Code Day's Night
  • PDP-11による機械語入門 - Qiita

    PDP-11とはUNIX V6の動作対象となるアーキテクチャです。バイナリを通してUNIXを学習します。 この記事は以前開催していた池袋バイナリ勉強会の初回編で教えていた内容をまとめたものです。 この記事には姉妹編があります。 8086による機械語入門 2015.11.09 VAXによる機械語入門 2016.02.14 環境設定 UNIX V6のバイナリを動かすためのインタプリタと、その上で動く当時のコンパイラをインストールします。 インタプリタとコンパイラ一式をインストール コンパイル ハローワールドでテストします。

    PDP-11による機械語入門 - Qiita
    tdakak
    tdakak 2016/06/15
  • KMC Staff Blog:素朴な C (pre K&R C) のお話

    2009年07月03日 素朴な C (pre K&R C) のお話 1969 年に Bell Lab の Kenneth L. Thompson と Dennis M. Ritchie がプロトタイプを作成した時から数えて、今年は UNIX 40 周年の節目だそうです。UNIX の 1/4 世紀というがありますが、あと10 年したら UNIX の半世紀ですね。 ちょっと昔の話をしたいと思います。35 年近く前の C の話です。(もちろん私は 20 代なので、まだ生まれてません。)1975 年、UNIX v6 がリリースされました (後の BSD UNIX につながる版です)。この版は pre K&R C という、現代の C (C99) から見ると非常に素朴な C で実装されています。 Dennis M. Ritchie, "C Reference Manual" (1975) http:

    tdakak
    tdakak 2014/06/24
  • Rubyでシェルもどきを作る - tmtms のメモ

    Ruby でシェルのようなものを作ってみると、Ruby とシェルやシステムコールの理解ができて、研修の課題とかにいいんじゃないかと10年くらい前に思ってたのを、ふと思い出したので書いてみます。 基 シェルの動作を簡単に説明すると次のような感じです。 プロンプトを出力 標準入力からコマンドラインを読み込む 読み込んだコマンドを実行する コマンドの終了を待つ 1 に戻る これをそのまま Ruby で書いてみます。 while true print '-> ' # プロンプト表示 cmd = gets or break # コマンド入力 cmd.chomp! # 末尾の改行削除 pid = Process.fork do # 子プロセス生成 Process.exec [cmd, cmd] # コマンド実行 end Process.waitall # 子プロセスの終了待ち end Process

    Rubyでシェルもどきを作る - tmtms のメモ
    tdakak
    tdakak 2013/10/09
    楽しそう
  • 『Working with Unix Processes』の Appendix: How Resque Manages Processes を読みました - bekkou68 の日記

    はじめに Ending の続きです。 まとめ なぜ Resque が job を実行するのに fork しているのかというと、ワーカーのプロセスが使うメモリ量の肥大化を防ぐためだ。job を実行する度に fork するのでメモリは使うデメリットはあるが、実行後のクリーンアップが保証されるメリットがある。肥大化の背景には Ruby において GCレベルでブロック単位の開放は滅多にされないことがある。 ジョブを実行しているコードのリーディング大会 文中のコードは実際のコードを簡略化して抜き出したものです。実際のコードを読んでみたら複雑なことをやっていました。勉強会メンバーでで得た知識をもとに読み解いてみました。 # fork をラップすることで、fork をサポートしていない # プラットフォームでも動作するようにしている。 # # *注意* # fork をサポートしてないプラットフォー

    『Working with Unix Processes』の Appendix: How Resque Manages Processes を読みました - bekkou68 の日記
  • Super Technique 講座~m4 チュートリアル

    m4 はUNIXの標準コマンドの1つであり、古い歴史を持つマクロプロセッサである。しかし、やや使い方が難しく、しかも古典度が高く専門的なために、どうしても紹介のプライオリティが下がる傾向があって、日語でマトモに書かれた解説にお目にかかったことがない。そこで、m4 に多少の経験値がある筆者があえて m4 のチュートリアルを書いて見せる。基的な情報は m4 の info から仕入れており、それにいろいろな実例を加えて書いている。 マクロプロセッサ m4 とは? m4 の使い方 m4 のディレクティブ マクロ定義に関するディレクティブ マクロ置換の原則 マクロ引数 undefine と include 条件分岐 ループ メタ文字の入れ換え 組み込み文字列処理関数 その他 マクロプロセッサ m4 とは? m4 はマクロプロセッサである。つまり、Cプリプロセッサ cpp (今時だと gcc -E

    tdakak
    tdakak 2013/05/16
  • Modern Syntax

    これ見たら「なんでいままでこういうのなかったんだろう」と思いました。 作ったのはサンフランシスコのインタラクティブ・テクノロジー企業Augmental社で、ボクシングのマウスピースみたいな形状で口の中に入れるのですが、舌が当たる部分にセンサーが付いていてそれを使ってマウスカーソルを操作することができます。なのでMousepadではなく「MouthPad^」という名前になっております。 怪我や病気で手足が不自由になった人々がコンピュータを操作する時って、これまでは視線を使ったりしていましたけど、これだともっと正確で直感的ですよね。 Bluetoothを使っているのでPCMacといったコンピューターやスマートフォン、タブレットでも使えるというのが素敵です。 舌は左クリックやクリック&ドラッグに使われ、口をすぼめるジェスチャーで右クリックを実現しているそうです。 まだ開発中のようで値段等は掲載

    tdakak
    tdakak 2013/01/22
  • 初めてのOS source code reading(UNIX 6th source code readingのススメ) - やる気のないブログ(A boring diary)

    このエントリはhttp://d.hatena.ne.jp/takahirox/20120131/1328006885を和訳したものです。 はじめに 最近UNIX 6thのソースコードの読書メモを書き終えました。 みさなんにもUNIX 6thのソースコードを読むことをオススメします。 その理由をこのエントリで書いていきます。 まとめ UNIX 6thは初めてOSのソースコードを読む人にうってつけ! 今すぐ読み始めましょう! UNIX 6thのソースコードはこちらなどで読むことができます。 http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6 UNIX 6thのソースコードを読むことをオススメする理由 たったの10,000行 最近のLinuxカーネルのソースコードは100万行を超えています。全てを理解するのは至難の業です。 一方、UNIX 6thのカー

    初めてのOS source code reading(UNIX 6th source code readingのススメ) - やる気のないブログ(A boring diary)
    tdakak
    tdakak 2012/12/25
  • 1