home ホーム search 検索 -  login ログイン  | help ヘルプ

find 検索

881 - 890 / 1320    [|<]  [|<]  [<]  81  82  83  84  85  86  87  88  89  90   [>]  [>|][>|]
タイトル/名前 更新者 更新日
日記/2009/12/23/ようやくportsとpackageが分かりかけてきた・・・ msakamoto-sf 2009-12-23 00:55:05
日記/2009/12/21/今更FreeBSD-4.4のpackageを取って来るには msakamoto-sf 2009-12-21 23:40:19
日記/2009/12/21/HDDのパーティションとMBRメモ msakamoto-sf 2009-12-21 20:45:21
日記/2009/12/11/本日付けで退職しました。 msakamoto-sf 2009-12-16 16:43:33
日記/2009/12/10/「ふつうのコンパイラをつくろう」読了 msakamoto-sf 2009-12-10 15:18:47
技術/Linux msakamoto-sf 2009-12-08 13:10:01
日記/2009/12/08/x86のPUSHはスタックの低位方向に進む msakamoto-sf 2009-12-08 10:36:48
技術/UNIX/grep, fgrep, egrep, zgrep msakamoto-sf 2009-12-07 01:09:18
日記/2009/12/06/呼び出し規約のメモ msakamoto-sf 2009-12-06 18:37:02
日記/2009/12/05/kernel-2.6.xで"make fdimage"するには syslinux と mtools が必要。 msakamoto-sf 2009-12-05 23:55:47
ソート項目 / ソート順     1ページ 件ずつ表示

日記/2009/12/23/ようやくportsとpackageが分かりかけてきた・・・  

所有者: msakamoto-sf    作成日: 2009-12-23 00:43:39
カテゴリ: BSD 

インストールCDに入ってるpackageというのは、要するにCDが作成された時点での、portsの中でバイナリ配布可能なやつなんだな・・・きっとそうだ・・・多分。

いや、今までportsとpackagesって全く別物なのかと勘違いしてたので。・・・やっぱり、慣れないと「それって常識」な事すら知らないものなんすよ・・・。

FreeBSDハンドブックの"4.2 Overview of Software Installation"から引用:

In fact, the ports system can also be used to generate packages 
 which can later be manipulated with pkg_add and the other package management
 commands that will be introduced shortly.

ということで、packageというのはportsから生成されたバイナリですよー、と言うことがようやく理解出来ました。

で、なんでわざわざportsとpackageに分けたかについては、同ハンドブック中の

Given that the two technologies are quite similar,
 you might be wondering why FreeBSD bothers with both.
Packages and ports both have their own strengths,
 and which one you use will depend on your own preference.

に続いて、それぞれメリット・デメリットがあるからですよ、というのが書いてありました。

packageについては、FTPやCD-ROMからなりで直接tgzファイルをpkg_addしても良いし、sysinstallからグラフィカルに追加するのも有り。

ちょっとややこしいのはportsの方で、そもそもインストール自体が何種類かある。

  1. システムインストール時に一緒にインストール
  2. CVSupで手動展開
  3. sysinstallからCD-ROMなりFTPからなりでインストール
  4. portsnapというシステムツールで、portsnap.FreeBSD.orgのミラーサイトを自動検出&portsのsnapshotをDL、手動展開

このうち、portsnapについては5.5 or 6.0以上でないと入ってこない。

さらにportsの更新はさらにややこしいので後日調査。ちなみに、最新のFreeBSDハンドブックでは更新系のツールのportsのパスが

/ports-mgmt/portupgrade
/ports-mgmt/portcheckout

となっているが、該当する4.4-RELEASEのportsは

/sysutils/portupgrade
/devel/portcheckout

となっていたので注意。またportupgradeはruby使ってる・・・一気に試す気失せた。普通にCVSupの方がわかりやすくね?


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-23 00:55:05
md5:e64ae0e24afec5212fc0dac39c82c332
sha1:fa78f29b6b00395a0b47b94ecdd5b8e876f818ed

日記/2009/12/21/今更FreeBSD-4.4のpackageを取って来るには  

所有者: msakamoto-sf    作成日: 2009-12-21 23:33:43
カテゴリ: BSD 

古いリリースの場合、ftpサイトの位置が

ftp://ftp.jp.freebsd.org/pub/FreeBSD/releases/i386/

から

ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/

に移ってしまっている為、PACKAGESITE環境変数を設定しておく。

setenv PACKAGESITE \
ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/4.4-RELEASE/packages/

しかもその上で、単に

# pkg_add -r zsh

とすると

ftp://.../4.4-RELEASE/packages/zsh

をDLしようとしてしまう。
予め別のターミナルなりFTPクライアントなりで、"shells/zsh-4.0.2.tgz"であることを突き止め、

# pkg_add -r shells/zsh-4.0.2.tgz

とするとインストール出来た。

依存関係がある場合は分からないが、PACKAGESITE環境変数は弄らずに、"ftp://..."からフルパス指定した方が単純で分かりやすいかも知れない。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-21 23:40:19
md5:ab1aa479b14c12b5288cab7ff2ccd3af
sha1:62ab6ef6ba33370908ceacfa57f340ada2c67b8a

日記/2009/12/21/HDDのパーティションとMBRメモ  

所有者: msakamoto-sf    作成日: 2009-12-21 20:37:02
カテゴリ: Assembler 

FreeBSDのsysinstallでのfdiskとdisklabelの違いについて解説を読んでいて、ちょっと気になってMBRやパーティション周りをぐぐった。

なるほど、MBRの中の固定領域中にパーティションテーブルが存在して、そのエントリ数(=予約レコード数)が4つだから、基本パーティション(+拡張パーティション)は4つまでなのね・・・。
しかしこの情報は・・・だれがどう使ってるのかな・・・。BIOSの割り込みハンドラかしらん、それともブートローダが独自に使ってるのかしらん。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-21 20:45:21
md5:6d1cbb90e94fccbc1d49948ea24b5299
sha1:2efc3ebbcc48081a94887b8273d45da12f79709c

日記/2009/12/11/本日付けで退職しました。  

所有者: msakamoto-sf    作成日: 2009-12-16 16:35:28
カテゴリ:

公私でお世話になった方々へ:
本日付で msakamoto-sf こと坂本昌彦は某Webサービス開発会社を退社致しました。
ご縁があって2009年9月よりお世話になったのですが、一身上の都合でわずか3ヶ月で去ることになってしまい、残念です。
2009/12/12より暫くの間休養します。
簡単ではありますが、これにてご挨拶と致します。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-16 16:43:33
md5:c66e3cf3545d3d11b2387f54a5dbdf82
sha1:70f9c73c5d7d428047ed3fbb60170abc3ab7c582

日記/2009/12/10/「ふつうのコンパイラをつくろう」読了  

所有者: msakamoto-sf    作成日: 2009-12-10 14:57:38
カテゴリ:

この調子ですと、次回作は「ふつうのOSをつくろう」とかだったりして。

色々てんこ盛りなだけに、読み手を選ぶ「良い本」な気がしました。
というか、もう実行時リンクのGOTやPLTあたりはついて行けませんでした・・・(´Д⊂グスン

ただ、コンパイラやOSと実行ファイル、リンクなどについて最初から最後まで解説してくれていますので、キーとなる概念を整理するにはうってつけだと思います。
自分の読み方としては、「漫画日本の歴史」「漫画世界の歴史」みたいな読み物として楽しみました。
この本で一通りのキーとなる概念を見知った上で、それぞれの興味の向く方向で専門書を読み込む、という楽しみ方も有りだと思います。

ある程度C言語やアセンブラ、Linuxカーネル、lexやyaccなどを嗜んだ上で、更にプログラミング言語の制作やOSカーネル内部を見てみたい、というステップアップに丁度良いと思います。

これだけ幅のある知識を最初から最後まで繋げてみせたのはスゴイと個人的には思いますし、また読み物として楽しめたことに感謝してます。3年かけて執筆されたそうですが、それだけの中身・価値はあると思います。
Amazonのレビューでは個別技術の詳細や字句解析・構文解析への踏み込みが甘い、というのもありますが、一つの読み物、物語りとして「あらまし」を頭に入れるには最適だと思います。

lexとyaccを使った構文解析については「プログラミング言語を作る」(前橋和弥)がありますので併せて読むと良いかも知れません。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-10 15:18:47
md5:fcc46fdc0f379b1ae5ef624cc3ad6ad8
sha1:a812fac9eabea6b8044d8cd379c57d4b6710106f

技術/Linux  

所有者: msakamoto-sf    作成日: 2009-12-03 13:08:23
カテゴリ: Linux 

メインリンク

記事

サイドリンク



プレーンテキスト形式でダウンロード
現在のバージョン : 2
更新者: msakamoto-sf
更新日: 2009-12-08 13:10:01
md5:0e1fdb6a342f19affa7f903b0b21d185
sha1:c01dcdd95af32246e268093a09ac260058974a46

日記/2009/12/08/x86のPUSHはスタックの低位方向に進む  

所有者: msakamoto-sf    作成日: 2009-12-08 10:20:42
カテゴリ: Assembler 

すこしあやふやになったので確認。スタックのPUSHでアドレスの大きい方(高位)に進むのか、小さい方(低位)に進むのかは実装依存。

x86の場合は、PUSHするとアドレスの小さい方(低位)に進む。つまり、PUSHする度にESPの値は小さくなっていく。アドレス0x0の方向へ向かってESPの値は小さくなっていく。

スタックが「伸びる」とか「縮む」とか書くと印象によって逆方向になってしまうので注意。
PUSHすると「伸びる」んじゃないか、とかPOPすると「縮む」んじゃないか、というイメージがある。
しかし書籍によっては、x86に限定して、PUSHすると0x0の方向に進むので「縮む」、POPするとアドレスが大きくなるので「伸びる」と表記するものもあった。

「伸びる」「縮む」ではなくて「進む」「戻る」の方が良いかな?
「x86ではPUSHするとアドレス低位方向にスタックが伸びる」
「x86ではPUSHするとアドレス低位方向にスタックが進む」
・・・あんまり変わらないか・・・。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-08 10:36:48
md5:237b9ca66de0eb3a55f095ff0631caf8
sha1:8f70bff4ecd461d9f8aca9de0ac8b9714d102c8c

技術/UNIX/grep, fgrep, egrep, zgrep  

所有者: msakamoto-sf    作成日: 2009-11-16 09:13:57
カテゴリ: Linux UNIX シェルスクリプト 

時々使い分けたくなるのでメモ。

fgrep = grep -F : 正規表現パターンではなく、固定文字列としてマッチング
egrep = grep -E : 拡張正規表現として処理
zgrep = grep -Z : 検索する前に入力データをzlibで伸長

他:

-I : バイナリファイルを無視(= --binary-files=without-match)
-n : マッチした行の先頭に行番号を表示する

あるディレクトリの下の、特定の拡張子のファイル群に対してだけ再帰的にgrepしたい場合:

$ find <directory> *.<extension> | xargs grep <options> <pattern>

↓あるいは

$ grep <options> <pattern> `find <directory> *.<extension>`

ただし、findコマンドの時点で該当ファイルが一つも無かった場合は入力ファイルが未指定ということになるため、標準入力からの入力待ちになってしまう点に注意する。

参考:



プレーンテキスト形式でダウンロード
現在のバージョン : 3
更新者: msakamoto-sf
更新日: 2009-12-07 01:09:18
md5:bcb3d26b17fd4a1436fb936219d94182
sha1:7f1d2b28173ef1b76200f94e1df5db06d14cda0b

日記/2009/12/06/呼び出し規約のメモ  

所有者: msakamoto-sf    作成日: 2009-12-06 18:30:30
カテゴリ: C言語 

呼び出し規約(Calling Conventions)メモ、というか参考リンク

他にもGoogleで検索すれば、分かりやすく解説してくれるサイトが沢山ありました。
そういえば暫くWindows上のCコンパイラ触ってないですね・・・。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-06 18:37:02
md5:419564f51d55849680f2b18ba769cf72
sha1:007d0d82f23986b42dd3b629d51e8fa135151124

日記/2009/12/05/kernel-2.6.xで"make fdimage"するには syslinux と mtools が必要。  

所有者: msakamoto-sf    作成日: 2009-12-05 23:48:03
カテゴリ: Linux 

ようやく、FD2枚でのLinuxKernel + Ext2rootファイルシステム(with BusyBox)がBochs上で動いた!

Embedded UNIX vol.6 での、SYSLINUXによるLinuxブート、ようやく起動した。2枚目用のルートファイルシステムについては、vol.2の記事に挑戦した時のrootfs.imgがあったのでもう一度試してみたところ、(root)/linuxrcというのを試しにmvしてみたらちゃんと(root)/sbin/init が起動した。

kernel-2.6になって、コンパイル時の画面も随分見やすくなった気がする・・・。あと、

make fdimage

するには mtools と syslinux がホストマシンに入っている必要があるので注意。
ホストマシンにフロッピーが装着されていない場合でも、"arch/i386/boot/mtools.conf"というファイルに

# 1.44 MB floppy disk image
drive v:
  file="arch/i386/boot/fdimage" cylinders=80 heads=2 sectors=18 filter

という設定が生成されて、これを元にして

MTOOLSRC=arch/i386/boot/mtools.conf mcopy arch/i386/boot/bzImage v:linux

としてくれるので、ちゃんと fdimage というファイルをFATディスクとみなして操作してくれるので安心。

最終的にfdimageをどこかフロッピーディスクが装着されているマシン上で書き込んでも良いし、VMwareやBochs上で動かしたいだけであればそのまま使えばOK。

よし、とりあえず西田亙の追っかけ終了。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-12-05 23:55:47
md5:cc9fadc4060f5611c9d4ee661d3dda87
sha1:b29d59e1fced00c6fed02a72acc30a103fef4e84