タグ

linuxとunixに関するchorinskyのブックマーク (12)

  • KMC Staff Blog:UNIX v6 を x86 マルチプロセッサシステムに移植した xv6

    2009年08月17日 UNIX v6 を x86 マルチプロセッサシステムに移植した xv6 MIT教育システムは当にすごいですね。 xv6 という、MIT の OS の講義のために、UNIX v6 を ANSI C で書き直して、x86 マルチプロセッサシステムに移植したものが存在することを、ひらさんの twitter で知りました。 wikipedia がよくまとまっています。Lions のように、読みやすくソースコードが編集された PDF へのリンクもあります。OS のソースコード全部で、たったの 75 ページと、非常にコンパクト。 http://en.wikipedia.org/wiki/Xv6 他にも MIT は、初級計算機科学の講義のために書かれた SICP (日語訳 : 計算機プログラムの構造と解釈)などでも非常に有名です。(こちらは Scheme でプログラムが

  • コマンド:dd: UNIX/Linuxの部屋

    最終更新 2019-01-03 dd コマンドは入力から出力へデータをコピーするコマンドである。cp コマンドはファイルからファイルにコピーするだけであるが、dd コマンドはファイルからデバイス、デバイスからファイル、デバイスからデバイスへのコピーも可能なため、ディスクのバックアップやダンプにも使用できる。

    コマンド:dd: UNIX/Linuxの部屋
  • UNIXの部屋

    UNIX/Linuxの部屋 FreeBSD・Solaris・Red Hat Linux・Fedora・CentOS・HP-UX を使った上で気づいたこと・調べたことをまとめました。 この web 内についての引用・リンク・紹介などの注意点は サイトへのリンクについて をお読み下さい。

  • Unix Programming Frequently Asked Questions 日本語訳 - 1 プロセス制御 - 1.6 どうすればゾンビプロセスができることを防ぐことができますか?

    Go to the first, previous, next, last section, table of contents. 1 プロセス制御 1.1 新しいプロセスの生成: fork() 1.1.1 fork()は何をするのですか? #include <sys/types.h> #include <unistd.h> pid_t fork(void); fork()関数は存在しているプロセスから新しいプロセスを生成するために使用さ れます。新しいプロセスを子プロセスといい、すでに存在していたプロセスは親 プロセスといいます。fork()の戻り値をチェックすると、この両者を区別できま す。親プロセスには子プロセスのプロセスIDが返されますが、子プロセスには 0が返されるのです。 ですから、以下の簡単なコードがfork()の使い方の基になります。 pid_t pid; switch

  • 親プロセスは2度死ぬ - デーモン化に使うダブルforkの謎 - シリコンの谷のゾンビ

    デーモンプロセスを作る場合には,教科書によく書かれている2度forkは不要ではないか? ということを以前の記事に書いた. [c][unix]UNIXネットワークプログラミングのお勉強 (2) デーモンの作り方 - 睡眠不足?! 確かにBSDのdaemon(3) のコードでは,forkは1回しか呼んでいない. 「きっとプレセスがセッションリーダだと不都合があるのだろう.でもなぜ?」 というのがopen questionだった. それに対する答えを「詳解UNIXプログラミング」[1] に見つけた. SVR4においては,この時点でforkを再度呼び,親を終了することを勧める人がいる. 2番目の子がデーモンとして動作する.これは,デーモンはセッションリーダではなく, SVR4の規則 (9.6節) から,セッションリーダでなければ制御端末を取得できない,ということを保証する. あるいは,制御端末を取

    親プロセスは2度死ぬ - デーモン化に使うダブルforkの謎 - シリコンの谷のゾンビ
  • コンピューター:C言語講座:fork,exec,pipeについて

    コンピューター:C言語講座:fork,exec,pipeについて このテーマはどちらかというとUNIX系の話題になってしまうのですが、PC系ではDOSの時代にはマルチタスクができませんでしたので、平行には走れませんでしたが、C言語の処理系独自の関数がたくさんありました。WindowsになってからはUNIX系と似てきましたが、まだ少し違うようです。 自分で作成したプログラムから他のコマンドを実行したい、ということは良くあることだと思います。例えば、ディレクトリーの中身を簡単に得たい場合などはUNIXではlsコマンドを実行させて、結果をもらうのが簡単に思い付くと思います。とくにUNIXのコマンドはそのように組み合わせて使いやすくできていて、必要な情報だけを明確に返答するコマンドがほとんどです(その分、初心者が自分でコマンドを使う時に不親切なのですが)。 system() 大抵の人が上記のような

  • Wataru's memo

    ● ご挨拶 昨年6月のアナウンス以来、停止していたオーバーシー・パブリッシングの活動ですが、このたび新たにPDFオンライン連載を開始することになりました。GNU開発ツールの出版より6年半を経て、ようやくComputer Architecture Seriesの続刊が登場致します(最新情報は Twitter @oversea_pubにて)。 また、これに合わせてWataru's memoは、オーバーシー・パブリッシングのホームページ上に移動します。 私事になりますが、昨年7月に大学を辞し、翌8月愛媛県松山市において、糖尿病専門クリニックである「にしだわたる糖尿病内科」を開院致しました。半年が経過し、ようやく診療業務も落ち着いてきたので、念願であった出版にも力を入れることが可能になった次第です。 技術と医学、一見かけ離れたテーマに見えますが、それぞれが置かれている状況は同じです。専門化・複雑化

  • ライブラリの基礎知識

    2000.03.11 初版 ライブラリは、再利用を目的として作成されたコンパイル済みの関数の集合です。 linux以外のOS別 Shared Library の構築・使用ガイドは、 http://www.dais.is.tohoku.ac.jp/~kabe/vsd/dynald.htmlへどうぞ。 ライブラリの名前の先頭は、lib から始まります。Linux のライブラリには次の3種類あります。 スタティック 共有 ダイナミック スタティックライブラリは、コンパイル時にコードがプログラムに組込まれます。 モジュールサイズが大きくなりますが、別のマシンにバイナリで配布したときに そのライブラリがなくても動作します。 .a で終わるファイルです。 共有ライブラリは、プログラムの実行時にロードされます。マシンによっては、 その共有ライブラリがなかったり、バージョンが違ったりして、動作しないことが

  • Linuxコマンドでテキストデータを自在に操る - じっくりコトコト煮込んだみかん

    Linuxでテキストデータを扱うときに、コマンドをパイプで繋げるだけでいろいろな処理ができて面白いのですが、綺麗に整理されていない気がするのでまとめてみます。ここでは、cat, paste, join, grep, head, tail, cut, awk, sed, tr, sort, uniq, wc を取り上げます。 ファイルを縦に結合 ファイルを縦に結合します。 コマンド 説明 cat file1 file2 ... file1, file2, ... を縦に結合 cat file | ... としてファイルの中身をパイプに流すのにもよく使います。 ファイルを横に結合 ファイルを横に結合します。あまり使わない?*1 コマンド 説明 paste file1 file2 .. file1, file2, ... を横に結合 join file1 file2 file1 と file2

    Linuxコマンドでテキストデータを自在に操る - じっくりコトコト煮込んだみかん
  • tar コマンドの使い方とオプションの覚え方 - teppeis blog

    Linux でよく使うコマンドに tar コマンドがあります。.tar, .tar.gz, .tgz などのアーカイブファイル、通称 tarball を作成・抽出するコマンドですね。 抽出(解凍)はよく使うから呪文のようにオプションを覚えているんだけど、アーカイブ作成(圧縮)の方はうろ覚えでした。ということで、改めて各オプションの意味を備忘録的に記しておきます。 まず、必須のオプション(機能指定文字)を選ぶ。 c : Create アーカイブの作成 x : eXtract アーカイブの抽出 これに次のオプションをつける。 z : gZip 圧縮・解凍に gzip を使う(もちろん gzip 形式の場合のみ) v : Verbose 作成・抽出時にファイルのリストを画面出力する f : File 作成・抽出するファイルを指定する(tar は来テープメディアのためのコマンド (Tape AR

    tar コマンドの使い方とオプションの覚え方 - teppeis blog
  • 各ディレクトリの役割を知ろう(ルートディレクトリ編)(1/2)

    ディレクトリを知ればLinuxが見えてくる Windowsを使っている人であれば、ディレクトリごとに役割や約束事があることはご存じでしょう。 アプリケーションをインストールする場合は、通常\Program Filesフォルダ下にサブフォルダを作ってファイルを保存します。Windows 2000であれば各ユーザー固有の設定は\Documents and Settingsフォルダ下にあり、\WINNTにはOS体のファイルが集められています。各ユーザーが作成したデータの保存先は、ユーザー用の[マイ ドキュメント]であり、ちょっと詳しい人ならこのアイコンの実体が\Documents and Settings\ユーザー名\My Documentsであること、好きなフォルダにマッピングし直せることも知っているでしょう。 しかし、WindowsからLinuxに移行した途端、いままでのセオリーはまったく

    各ディレクトリの役割を知ろう(ルートディレクトリ編)(1/2)
  • 序章:UNIXとLinuxを振り返る(1/2)

    気が付くと「世の中はLinux」のようです。以前からUNIXを使っていた人なら大喜びなのですが、初めて触ったPCにはWindows 95がインストールされていた、という人にはハードルが高いことでしょう。そこで、今月から半年ほどかけて、MS-DOSプロンプトを使ったことがあるというレベルの人を対象にしたLinuxの入門記事をお届けすることになりました。インストールして終わりではなく、Linuxにおける常識というものを紹介できたらと思っています。 Linuxとは何か 常套手段ですが、まずはLinuxとは何か、という点からスタートしましょう。正確を期せば、LinuxとはPOSIXに準拠したカーネル部分の名称ということになります。とはいえ、大多数の人にとって、これでは何のことかさっぱり分からないはず。これで理解できる人なら、そもそもこの記事を読む必要はありません。 では、順を追って説明しましょう。

    序章:UNIXとLinuxを振り返る(1/2)
  • 1