人とか機械とか

デジタルガジェットやコンピュータについてのブログです。

Develop

ベネッセの情報流出事件とUSBの悪用

ニュース - ベネッセ事件容疑者はなぜスマホでデータを持ち出せたか、IT部門は設定の再点検を:ITpro ベネッセ事件容疑者はなぜスマホでデータを持ち出せたか、IT部門は設定の再点検を:日経コンピュータDigital USB Mass Storage Class Deviceについてはセ…

USB Type-Cのspecを少し読んだので解説する

USB Type-C コネクタがついに策定完了したので少し読んでみた。 USB.org - Documents usb_31_081114.zip 解凍すると USB Type-Cディレクトリの中にUSB Type-C Specification Release 1.0.pdfがあります。 いまのところわかっている特長的なもの コネクタは楕…

C言語とバックスラッシュ

C言語のソースコード中のバックスラッシュが行の終端にあると、それは改行コードをエスケープすることを意味する。なので、つながった1行とみなされる。これはマクロを書くときに見やすくするのに使ったりする。 なんだけど、落とし穴があって、行コメント …

超初心者がSQLをはじめた

なんか色々あってSQLをやることになったんです。 SQLなんて学生のころにやった以来でもう何か10年前くらいじゃないかと思う。 なんかいろんな機能がたくさんあるようですが、使いこなせてないと思われます。 でもまあナントカ機能してるようですが。 まだ新…

サクラエディタのMarkdown正規表現とカラー

Wikiに上げました。Customize/投稿/77 - SakuraEditorWiki こんな感じになります。 Markdownアウトライン解析プラグインと一緒につかっています。ngyuki/sakuraeditor-plugin-markdown · GitHub 引用とコードブロックが重なっている場合や、リストがネストさ…

eclipse4.2junoとwindows7の64bit版でAndroid開発環境構築

2012年8月12日の時点での最新安定版であるEclipse 4.2 (juno)と、Windows7 64bitで Android開発環境を構築したメモです。要約した結論を言うと、ググって出てくる良くある導入方法の解説と比べてjdkのpath設定をする以外は同じでした。 また、以下に書いてあ…

ナウいコンパイラ

コンパイラの最適化オプションって、コードサイズ節約とパフォーマンス優先が基本だけど、現代的な事情を考えるとマルチスレッド最適化とか、パワーセーブ優先とか、パフォーマンスの中にも低レイテンシと高スループットどっち優先か、とか、あるのかなあ?…

機械の動力のオンオフはエンドユーザーが掌握するべきではないか?

完全な電源遮断ができないPCは、設計ミスだと思う。たとえばMacBookAir。どこかの回路が変な状態になってしまって、リセットも効かなくなり、電源断しか手段がなくなることがある。実際、起動しなくなったMacBookの初代Unibody、MB466J/Aを最終手段である…

こぼれ話

そういえばこんな逸話を思い出した。 会社の先輩から聞いた話なんだけど、なんかのソフトを作っていて、なにかメッセージを表示する機能があって、そこに「とりあえず」のメッセージで「アホ」だの「バカ」だの入れておいたんだそうです。 客先でそのソフト…

残酷な目的のテーゼ

なんだかトヨタのやっていることが、ちょっと軸がブレているように思います。 いつかの月刊インターフェースの記事だったと思うのですが、 「掃除機のメーカーは、掃除機を作ってはいけない。」 というような見出しがあった。(洗濯機だったかも) なぜかと…

サクラエディタV2のインストール

※この記事は、サクラエディタV2が単体配布しかなかった時期のインストール方法になります。 いま2013/4/30現在では、すでにV2のインストーラ版が配布されていますので、 以下のような複雑な手順は使わずにインストールすることができます。 ずっと昔からアッ…

プログラム言語とスタイル

C言語はローレベルすぎて「なんでもできる」たとえば配列とポインタとかgotoとか。ファイル分けと関数を巧みに使えば、オブジェクト指向風味に書くこともできるし、アセンブラみたいに書くこともできる。C++言語は「全部入り」手続きでもオブジェクト指向で…

コーディングメモ

目的 ひとつの変数が「1か8か9のとき」みたいな評価(evaluate)をしたいことがある。その変数名が長いと、なんかソースが見づらくなる。変数名は1個だけ書くようにしたい。 手段1、マクロを使う #define isAorB(x,a,b) (x==a)||(x==b) #define isAandB(x…

広告flashをブロックしたい。

TVを録画するハードやソフトには「CMカット機能」がついてるのだから、それと同じことができてしかるべきである。ただ、大手家電メーカーに放送局の圧力がかかってCMカット機能が削除されたという経緯があるので、ゆく道は険しいかも知れない。http://…

IntelチップセットのUSBの実装がいつの間にか変わってた件

Intel 5 Series Chipsetは、Core iシリーズの第一世代CPUに対応したチップセット。IbexPeak。メモリコントローラはCPU側になったため、チップセットがワンチップ化した。ここから、USBの構造にも変化があったことを知った。 http://www.intel.com/p/ja_JP/su…

Dev2.0

いままで仕事で書いていたファームウェアや、テストツールなんかはだいたいフルスクラッチ。なんかmemcpyまで自力で書いてた。コンパイラにそのくらいついてたのに・・。信じているソフトウェアはコンパイラとリンカくらいか。むしろ、それらにもバグがあっ…

超初心者がバージョン管理システムを導入してみた

バージョン管理システムを全く使った事がない僕が、TortoiseSVNを使い始めた作業メモです。 まだ1ヶ月くらいですが。SVNの本格的なマニュアルは、なんだか難しいことも含めて書きすぎてよくわからないので、とりあえず自分がいま運用しているのに必要な知識…

すごくいい加減なWDKの排他処理の説明

IRQL -> ちょっといま忙しいんで、後にしてもらえますか複数のスレッドから同じ変数にアクセスする場合 -> スピンロック。2人で餅つきするみたいな。1個のリソースに対する排他 -> ミューテックス。無人島でたった一人の女を取り合う男たちみたいな。n個…

2010/6/24のメンテナンスによるニコニコ生放送コメントサーバー仕様変更について

http://twitter.com/kawango/status/16926717734 今日のニコ生のアップデート地味だけど、超重要で、NG処理がクライアント側からサーバ側になった。これでクライアント動作はとても軽くなるし、要望の多いNG数も増やせるし、ユーザ間のNG共有も将来的には可…

WDKに含まれているMFCやATLでビルドしたバイナリは配布可能らしい

つまり「無料でATLやMFCが使える」ということです。VisualStudio買うお金ケチってすみません。http://blogs.msdn.com/jpwdkblog/Japan WDK Support Blogに3月にメールした質問が、いまさら返ってきた。 もう返ってこないものだとあきらめて、フォーラムのほ…

エレガント・コード

自分は根っからC言語出身者なので、BASIC系の言語が醜く見える。美しくない。まあポケコンでBASICよく使ってたけどさ。VBScriptとかVisualBasicとか、言語仕様が醜くて見てられない。あと、あのCASL?ってどうにかならないのか。大学で勉強したけどさ。そんな…

コンピュータ英語についてぼんやり考えた

Createの反対語って何なんだろう?Delete? Erase? Destroy?Build, Make, Construct <> Destruct Allocate <> Free Read <> Write「コンピュータ英語」というジャンルがあるよね。本が一冊書けそうな気がする。"Contiguous"とか"mutex"は"mutial execution"の…

IntelとAMDの64bitについての歴史

なんか、キーワードの使い方がアチコチでバラバラで、いまいちヨクワカランかったので調べてまとめた。・Intelが初めて作ったのが4004という8bit CPU。それからいろいろ出て16bitになったりした。AMDはセカンドソースでそれを製造していた。 ・初めての32bit…

Windows x64環境で32bit/64bit両プロセスから利用可能なDLLをつくる

32bitプロセスと64bitプロセス間で通信する手段は、いろいろあるらしい。 Interprocess Communication Between 32-bit and 64-bit Applicationsそのうちのひとつに、32bitのCOMサーバー1つで、32bit/64bit両プロセスからのアクセスに対応できるというものが…

Windowsデバイスドライバ開発入門

自分用のメモも兼ねて書きます。まず、圧倒的に日本語の情報が少ないです。WDMの基本的な部分は日本語で勉強できますが、詳細を調べると必ず英語になるので覚悟が必要。エキサイト翻訳さんにお世話になっております。とても深い世界なので、私も経験はまだ少…

Windows Vistaから「バーチャルストア」という機能がある。

http://www.yoshibaworks.com/ayacy/inasoft/talk/h200611a.html昔のソフトは、Program Filesにインストールされて、同じディレクトリに設定内容とかのiniファイルを保存していた。でも、それが今度はユーザー毎のディレクトリへリダイレクトされるらしい。…

カーネルモードでシステムの稼働時間(Uptime)を得る(WDK)

ルーチン LARGE_INTEGER KeQueryPerformanceCounter( OUT PLARGE_INTEGER PerformanceFrequency OPTIONAL ); PerformanceFrequency ... 1秒あたりのカウント数 return value ... カウンタの値 サンプルコード LARGE_INTEGER Count; LARGE_INTEGER Freq; Coun…

Minwin勘違い

Minwin放言 とかWindows 8放言 とか 書いてたけど、なんかいろいろ勘違いしていたみたい。まとめ ・MinWinカーネルは、Windows7で搭載されていた。てっきり次のWindows8で搭載されるのかと思ってた。 ・一般的に「windows 7 は vistaをベースにしたもの」と…

RAP2を重くする

RAP2をXBOX360と共用する http://d.hatena.ne.jp/sea-show/20090925#1253882743 時々センコロRev.XでRAP2使ってるんですけど、やや重量が足りなくて、レバガチャするとズレるんですよね。それが気になるので重くしてみました。 近所のホームセンターで買って…

RAP2をXBOX360と共用する

■RAP2(プレステのアーケードスティック)をXBOX360と共用します。信号変換回路を作るのはメンドクサイので、ボタンとレバーを独立させコネクタに接続し、PSコントローラ基板やXBOX360コントローラ基板へつなぎ変える事で共用します。 RAP2のボタンとレバー部…