Monthly Archives: 4月 2013

[FreeBSD] PC-BSDがFreeBSD向けpkg repo作ってくれたけど動かないでござる(2013/4/27現在)

Pocket

(追記:2013/11/7)
公式のpkgngが公開されている。詳しくは以下を。
http://april.fool.jp/blogs/?p=2357
(追記ここまで)

FreeBSDの新ソフトウェア管理ツールであるpkgngだが、FreeBSD公式サイトの不正アクセス食らったせいでpkgを配布するpackage repositoryが停止されている。

そこでこんな事をしてしのいでいたわけだが、今月の初め、改めてPC-BSDからこのような周知があり、FreeBSDのpkgng使いはこぞって大感謝した。

PC-BSD Announces Package Repository for PC-BSD and FreeBSD 9.1

FreeBSD PKGngパッケージリポジトリ,iXsystems提供開始

ところがここ数日、どうもレポジトリが壊れているようなんである。
曰く、i386用のrepoなのに、amd64のが混じってるぞ、と。
したがって、二週間もすれば対策されるような気もする。

$ sudo pkg upgrade
Updating repository catalogue
repo.txz 100% 14MB 791.6KB / s 1.0MB / s 00:18
pkg: At least one of the packages provided by the repository is not compatible with your ABI:
Your ABI: freebsd: 9: x86: 32
Incompatible ABIs found: freebsd: 9: x86: 64

しかし二週間も待ってられない。ググったら対策が出てきた。
ここにメモしとく。

 

repo.sqlite(レポジトリカタログ)をローカルで修正する。

レポジトリカタログとは、そのレポジトリ(ftp.pcbsd.org)にあるpkgの情報を一覧にしたもの。
レポジトリの修正はできないから、レポジトリカタログを修正する。
すなわち、カタログからamd64向けのものを削除するわけ。

まずはrepo.txzをダウンロードする。

$ fetch http://ftp.pcbsd.org/pub/mirror/packages/9.1-RELEASE/i386/repo.txz
repo.txz 32% of 13 MB 230 kBps 00m42s

txzをtarで展開して、sqlite3で開く。
packagsテーブルをサーチしてみると、wineが悪さをしていることが分かる。

$ sqlite3 ./repo.sqlite
sqlite> .tables

categories licenses packages pkg_licenses shlibs
deps options pkg_categories pkg_shlibs
sqlite> select * from packages where arch="freebsd:9:x86:64";

11394|emulators/i386-wine-devel|i386-wine|1.5.27,1|Microsoft Windows compatibility environment|Wine is a Microsoft Windows compatibility layer (or program loader)
capable of running Windows applications on i386 and compatible CPUs.
Windows programs running in Wine act as native programs would, running
without the performance or memory usage penalties of an emulator, with
a similar look and feel to other applications on your desktop.

Many applications already work, more or less, including versions of
Microsoft Office and several games.

WWW: http://www.winehq.org/

Gerald Pfeifer <gerald@FreeBSD.org>||freebsd:9:x86:64|gerald@FreeBSD.org|http://www.winehq.org/|/usr/local|18801412|144704625|124|36710abf23920911a3fb2bdd34ab8643b55d6f5a1f4a3ba565c0edf4229a101d|All/i386-wine-1.5.27,1.txz|

たしかに「freebsd:9:x86:64」とありますな。
そして当該行を削除。

sqlite> delete from packages where arch="freebsd:9:x86:64";
sqlite> select * from packages where arch="freebsd:9:x86:64";
sqlite>

sqlite> .quit

これで修正はおしまい。

 

修正したrepoでアップデートを試みる。

そうしてできたカタログをローカルの/var/db/pkg/へ移す。
まずもともとのカタログを消す。

$ cd /var/db/pkg.
$ ls repo*
repo.sqlite repo.sqlite.unchecked
$ sudo rm repo.*
$

修正済みのカタログを移す。

$ sudo cp ./repo.sqlite /var/db/pkg/
$

そうしたら、あとは-Uオプションを付けて実行するだけ。

-Uオプションはrepoカタログの更新をスキップするもの。

-U Skip updating the repository catalogues with pkg-update (8). Use the
local cache only. pkg upgrade will always print out the list of
packages with available updates.
$ sudo pkg upgrade -U

The following packages will be upgraded:

Upgrading libiconv: 1.14 -> 1.14_1
Upgrading gettext: 0.18.1.1 -> 0.18.1.1_1
Upgrading perl: 5.14.2_2 -> 5.14.2_3
Upgrading pkgconf: 0.8.9 -> 0.9.1_2
Upgrading libffi: 3.0.12 -> 3.0.13

無事にできました。
うっかり-Uを付け忘れて、カタログが上書きされちゃったら、もう一回やればOK。

No tags for this post.

[thoughts] ルーチンと古いスーツ

Pocket

私的なことだけど、ここ最近は非ルーチンの仕事が増えた。
そのせいか、金曜日になるとぐったりする。

ルーチンと仕事

思えば、仕事には、特に勤めびとにはルーチン作業が沢山ある。
日、週、四半期、半年、一年といった、ある時間的な区切りで周期的に同じタスクを繰り返している。

これは何のためか。
理由はいろいろあるだろう。
けど、ここで言いたいのは一つの理由だけ。
すなわち、ルーチンは認知の負荷を低く抑えるためだろう、ということ。

ルーチン、つまり定形のタスクがなくて、毎日が非日常だなんて、詩人でもないかぎり願い下げだろう。
少ない労力で一定以上のアウトプットを継続的に出すには、仕事を定形タスクにしなければやってられない。

だから、逆説的に言えば、仕事って非定形のタスクを定形に変えることだし、労力、集中力を可能な限りセーブし、ここ一番の仕事にドカッと振り向ける、ということだ。

小さいところではメールの書き方のような数十秒レベルのタスクから、大きなところでは四半期ごと、一年ごとのプロジェクトの進め方まで、さまざまなタイムフレームで定型化したルーチン作業をしているはずだ。

無意識領域に追いやられた仕事たち

しかしここで書きたいのは、むしろルーチンのことである。
これらのタスクは定形化されてしまっている。
極端な話、簡単な作業レベルのルーチンであれば頭で他のことを考えていても出来てしまう。
もちろん、プロジェクトレベルの大きなタスクだって、疑いもせず当然のこととして前例にしたがって作業を進めるだろう。

これらのルーチンは意識の地平に登ることはない。
むしろそのためにやっているのだから。

 

状況変わってないか?

しかし。しかしである。
この世の中、状況だけはどんどん変わる。
そのルーチンが、実は非効率になっていたり、そもそも不要になっていることだって、あるのだ。

ところが前述のように、これらのルーチンが意識されることはない。
したがって再評価のタイミングは、無いかごくごく限られるんである。

 

ダメなルーチンに気がつくとき

再評価のタイミングはたぶん3つ。

1. 定期的に定形業務を棚卸しし、再評価する。
2. 手遅れになって気がつく。
3. 他者からの指摘。

1.の出来る人はこの先を読む必要がありません。お帰りください。
2.で気づくのは避けたいところ。
そこで3.である。
これを大事にしたいと思うんである。

他人からの指摘を大事にしようNE!(当たり前か?)

他人からの指摘は大事だなんて、これ以上当たり前の話はない。
ただここまで連々、書いたのは目的がある。

ルーチンについて他人から指摘を受けた時、たとえば「なんでそんなことやってるの?」とか、「それって意味あるの?」
と言われた時、俺達は通常、どう反応するだろうか。
そこに狼狽はないだろうか。
そして必要な理由を、実はその場で探しながら相手にまくし立てたり、しないだろうか。

俺はしょっちゅうだ。

なぜか。
先述の通り、ルーチンなんて無意識でやってるからもう妥当性なんて忘却の彼方なんである。
もうそこには「だって毎回やってたから」以上の意味はないんである。
だから指摘されたら慌てるのも、当然なんである。

古いスーツのように

俺はできるだけこう思うことにした。
ルーチンとは古いスーツだと。

つまり、他人からの指摘は、いわば「意識もせず同じスーツを何年も着てたら、友人から『君のスーツ、パンツがダボダボだ。いまどき誰もそんなの穿いてないぞ』と言われた」ようなものだと。

もっと極端に「何年も同じジーンズ穿いてたら、友人から『そのケミカルウォッシュ(若い人はググってくれ)もうやめなよ』と言われた」という例えのほうが恥ずかしさが伝わるだろうか。

とにかく、そういう指摘を受けたら、赤面して家にダッシュで帰って古いスーツ、古いジーンズは捨ててしまうのがよい。
ルーチンもそうしよう。

そして指摘してくれた人を大事にしよう。

 

No tags for this post.

[teleco] 米国では当局が携帯電話サービスの停止を命令できる

Pocket

 

 

ボストンのテロでは、一時「リモート爆破を防ぐため携帯電話サービスが停止された」と報道が流れた。
Cell Phone Service Has Been Suspended in Boston (Update: It’s Just Overloaded)

 

なーんだ輻輳していただけか、という話では終わらなかった。

米国では実際に当局が携帯電話サービスの停止を命令出来るんである。
Standard Operating Procedure 303, 略してSOP303という手続きがある。
なんでも、特殊な状況下において必要と判断した場合、当局はNCC(National Coordinating Center for Telecommunications)を通してキャリアに対してサービス停止を命令できるのだそうな。

しかしこの手続きにはいろいろと問題がある。
「特殊な状況下」が明確でないし、NCCが当局の命令が妥当かのチェック責任を追っているようなのだが、チェック方法もよく分からない。
2011年にはカリフォルニアで起こったデモに対して携帯電話を止めたケースがあったと。
そりゃ揉めるよなあ。

Is it legal to shut down cellular networks in an emergency?
Yes, but the FCC has been trying to clarify how and when it should happen

 

No tags for this post.

[telecom] HD Voiceってなんだ

Pocket

 

WirelessWireNewsに、「AT&T、HD Voice(VoLTE)サービスを今年中に開始へ」という記事があり、なんとそこで「HD VoiceまたはVoLTEは、通話のノイズが減少し、音質が飛躍的に向上する音声サービスとされている。」という驚きの記述がされていたのでコーヒーを吹いて調べた結果を記す。

結論としてやっぱり別の話じゃねーか安心した。

 

VoLTEってなんだ。

ざっくり言うと、LTE上で音声通話をするもの。IMSベースであり、IP網においては音声通話に適した優先制御がなされ、無線区間でも同じく音声通話に適したスケジューリング(TTI Bundling, Semi Persistent Scheduling)がなされるもの。

一方でHD Voiceとは。

名前からも想像はつくけれども、従来は、人の声の200Hzから3,300Hzまでをサンプリングできなかったのに対し、HD Voiceでは50Hzから7,000Hzまでを対象にできる。
Ericssonのこの記事で示される図がわかりやすい。
結果として「格段に聞き取りやすく」なるそうだ。本記事最後にデモへのリンクを置く。
あまり感動はしなかったんだが、sとかfとかの、無声音とでも言うんでしょうか、そういう音がある言語では重宝するのですかね。

HD Voice = Codec

HD Voiceを実現するのは端的に言ってCodecである。
具体的には、AMR-WB(Adaptive Multi-Rate Wideband)だ。

VoLTEとHD Voiceは同じか?

GSMAやドコモの情報からすると、VoLTEではHD Voiceを実現するAWR-WBを必須とはしておらず、オプション扱いである。

いずれもPDF注意
http://www.gsma.com/newsroom/wp-content/uploads/2012/06/IR9230.pdf
http://www.nttdocomo.co.jp/binary/pdf/corporate/technology/rd/technical_journal/bn/vol19_4/vol19_4_045jp.pdf

つまり携帯電話側の能力によるので、LTE上の音声通話であろうとも、HD Voiceができるもの、できないものがある。
だからしてVoLTEとHD Voiceはイコールではありません。

なおWIREDの記事を見ると、 iPhone 5, Samsung S III (and IV), HTC One, Nokia Lumia 920, Sony Xperia Zは対応しているようだ。

How HD Voice Works to Make Your Calls Sound Drastically Better

そのほか参考になるリンク

HD Voiceデモ
…しかしこれは、比較対照のが悪すぎやしないか?
http://www.gsma.com/technicalprojects/hd-voice-sound-demonstration/

HD Voice
http://www.webopedia.com/TERM/H/HD_voice.html
Tip: Wideband vs. narrowband VoIP codecs
http://www.eetimes.com/design/signal-processing-dsp/4017506/Tip-Wideband-vs-narrowband-VoIP-codecs/

 

 

No tags for this post.