SE-U33GXV2ですが、いよいよ調子が悪くなってきたようです。放っておくと音が出なくなってしまいます。11のせいである可能性もゼロではありません。DACが故障した可能性の方が高いでしょう。Solo(メーカーのサイト)にしました。実はしばらく前に購入していたのに使わずに積んだままでした。活躍の場ができて良かったです。ヘッドフォン)あります。ボリュームつまみは大きくて見やすく、筐体の上部に付いています。私のように目線より下(机やPC筐体の上など)に置く人には、操作しやすくて良いです。一方でラックに入れて使う人にはやや使いづらいかもしれません。動作も問題ないですね、変なノイズやおかしな音はしません。音質は良いんじゃないでしょうか、私の耳では細かいことは良くわかりませんけども......。02:35)コメント一覧コメントはありません。OpenPilot最近はOSSの運転支援ソフトウェアOpenPilotのコードを見ています。今日はOpenPilotのプロセス間通信について調べます。OpenPilotは複数のプロセスが共有メモリを通じてデータを送受信しています。データ送受信のモデルはPublisher/Subscriberモデルを採用していて、1つの通信チャネルについて1つだけPublisherがいてデータ送信役を担い、複数のSubscriberがいてデータ受信役を担います。Client/Serverモデルとは異なりデータはPublisherからSubscriberへの一方通行で、SubscriberからPublisherに送ることはできません。Publisher/Subscriberの仕組みの名前が見当たらなかったので、関連するコードのディレクトリ(openpilot/cereal)からcerealと呼びます。画像用のPublisher/Subscriberの仕組みだけ特別にVisionIpc(openpilot/msgq/msgq/visionipc)と名前が付いていてcerealと実装が異なりますが、背後にあるデータ送受信の仕組みmsgq(openpilot/msgq)は共通です。今回の着目点はmsgqですから、cerealとVisionIpcの違いは扱いません。簡単に双方ともmsgqを使う経路がある説明だけに留めます。cerealはPython用およびC++用のクラス定義を行っています。Publisher用がPubMaster、Subscriber用がSubMasterです。PythonもC++も同じクラス名で、クラス定義、実装箇所は下記のとおりです。openpilot/cereal/messaging/socketmaster.cc背後のデータ送受信の仕組みはopenpilot/msgq/msgq/msgq.ccにあります。関数がプレフィクスmsgq_から始まるので見分けやすいです。cerealのPubMaster/SubMasterからmsgqのコードに至る経路は下記のとおりです。msgq_new_queue()次にVisionIpcのServer/Clientからmsgqのコードに至る経路は下記のとおりです。コンポーネントによって呼び出し元は違うので、例としてPublisher側はreplayのCameraServer、Subscriber側はuiのCameraWidgetからの経路を挙げます。msgq_new_queue()経路は多少違うもののcerealもVisionIpcも両方ともmsgqに行き着きます。cerealはmsgq以外の経路(ZMQ)が選択可能で、ZMQを選択した場合は上記と異なる実行経路となります。msgqのデータ共有方法ファイルの共有メモリマップをお互いのプロセスから読み書きしてデータ共有します。msgq_new_queue()にて/dev/shmにあるtmpfsファイルシステム(メモリ上にファイルシステムを作る仕組み)上に1つの通信チャネルごとに1つファイルを作成します。1つのファイルをPublisherとSubscriberが共有メモリマッピングするので、お互いに同じファイルのデータが見えます。Publisherがメモリマップ経由でファイルを書き換えたらSubscriber全員に変更が見える仕組みです。通常、ファイルの共有メモリマップに書き込んだ内容を他のプロセスに可視化するときはmsync()を呼ぶ必要があります。msgqの実装はtmpfs決め打ちというか、msync()の手間を惜しんだのか、atomicアクセスもしくはメモリバリア__sync_synchronize()だけで済ませています。__sync_synchronize();ファイル内のデータは下記のようにヘッダ領域とデータ領域の2領域からなります。各プロセスにはmsgq_queue_t構造体が確保され、ヘッダ領域とデータ領域へのポインタを保持します。msgqのデータ共有用ファイルの構造データ領域のサイズはDEFAULT_SEGMENT_SIZE(10MiB)固定です。Subscriber数の最大数はread_pointers[]などの配列長で決まります、現状だとNUM_READERS(15)固定です。16じゃなくて15なのか?理由が良くわかりません。理由は書いていませんでした。endpoint;};PublisherとSubscriberが1プロセスずついるときはこんな感じです。msgq_header_tの実体は1つで、各プロセスのmsgq_queue_tがmsgq_header_tとデータ領域へのポインタを保持します。PublisherとSubscriber間のtmpファイル共有データ領域はPublisherが書き手、Subscriberが読み手のリングバッファとして機能します。Publisherはデータ領域に送信したいデータを書いてwrite_pointerを進め、Subscriberはデータ領域からデータを読み取ってread_pointerを進めます。02:18)コメント一覧コメントはありません。ゲーム前回の振り返り(2022年5月13日の日記参照)から2年半経ちました。所持しているゲームのリストを見るとほとんど変わっていなくて、最近ゲームしてないことが良く表れてます。続編系は情熱をもって遊べていないですね。小規模ゲームはいくつかクリアしました。2順当な続編である印象を受けますね、システムは大体一緒です。リリース直後はゲームバランスが変で遊ばなくなりました。そのうち改善されるでしょう。スプラ3初めから超絶ボコボコにされてやる気ゼロになりました。初期のWizardry目指して作った感じですかね?昔のWiz好きなら面白いと思います。Battles)をクリアしましたが、基本シナリオ5個全部クリアする元気はありませんでした。熱血硬派くにおくん外伝くにおくんシリーズを裏切らない、たくさん出てくる敵をボコボコにしていくシステムで面白いです。私はアクションが基本的に好きではなくて、あまり続きませんでした。地下鉄の通路を思わせる道に起きた異変を察知しながら脱出を試みるゲームです。短いながら面白かったです。アイデアの勝利ですね。振り返り結果クリアした(実績90〜100%、シナリオコンプなど)。8番出口たくさん遊んだ(クリア条件がないor困難すぎて挑む気なし)。スプラトゥーン2未クリア(実績、シナリオクリア率が50%以下)。Freewaysほぼ遊んでいない。技術系の話はFacebookから転記しておくことにした。02:22)コメント一覧コメントはありません。射的スピードシューティングを始めてから2年半が経ちました。一般社団法人日本トイガン射撃協会JTSA)が開催されます。以前と変わらず、基本的に練習は週1回のみです。練習以外のシューティング系イベントにも行きますが、記録を見る限りタイム上達とは関係なさそうです。2023年の結果はこんな感じでした。記録は横ばいで80秒台からタイムが早くなる様子がなく、週1回の練習ならこんなもんか?と諦めていました。ところが2024年の夏から70秒台のタイムが出るようになりました。何が起きたのかわかりません。今日は初の69秒台のタイムが出ました。いえ各ステージのタイムのゆらぎを見る限り、全ステージが偶然早いタイム側に寄っただけの偶然の産物です。実力は75秒くらいでしょうか。ここ1か月は最近は1発目を早く撃てるように頑張りましたが、その前からなぜか早くなっていたし、何が良くなったのかイマイチわからないです。この後良くなるのか悪くなるのかわからないですね......。14:41)コメント一覧コメントはありません。編集する企業のドメイン今の企業は公式サイトを持っていなほうが珍しいと思いますが、ドメイン名の使い方は各社でバラバラで面白いです。グローバル企業は日本だけでなく世界各国向けに公式サイトを構築する必要があるため、迂闊に「会社名.co.jp」みたいなドメインを使うと海外展開時に困ってしまいます。解決方法はいくつかパターンがあるみたいです。gTLD(.com)ドメインgTLD(.com)ドメイン&ドメイン先頭(www部分)が地域名ccTLD(汎用JPなど)ドメイン日本だけ属性型JP(.co.jp)ドメイン、他国はccTLD(汎用JPなど)ドメイン企業名ドメイン一番良く見かけるタイプでオーソドックスな解決方法だと思われます。Domain)である.comドメインのあとに地域名や国名を表すパスが続きます。ドメインを増やさずに各国地域対応が可能で、スマートですね。https://www.sumitomocorp.com/zhcn/easia/亜流としてNECのように、.comドメイン&ドメイン先頭(www部分)が地域名になる会社もありました。.comドメインだけどパス名の代わりにドメインの先頭を使うんですね。これはこれでスマートです。Domain、つまり汎用JPドメインなど)を使う会社です。https://www.toyota.fr/亜流として日本だけ属性JPドメイン(.co.jp)、他国はccTLDドメインを使う会社もあります。https://www.sony.fr/珍しいパターンとしては企業名ドメインもありました。このタイプのドメインの名称が良くわからないんですが、企業名がトップレベルドメインになっています。他国向けはccTLDでした。日産やホンダは.co.jpを使っていますが、.jpはアドレス解決ができないところから使っていないように見えます。(JST)見慣れない"DomainTransferLocked"と"AgentChangeLocked"が設定されています。JPRS)に解説があります。企業と関係のない登録者に勝手に使われないように申請を弾いてくれる仕組みですね。こんな機能があるとは知らなかったです、なるほど便利だ。02:19)コメント一覧コメントはありません。08:30)「おー、面白いですね。最終勤務日でした、入門カードや会社のPCを返却してきました。マンガ紹介一覧が欲しくなったので作りました。マンガ紹介お気に入りのマンガ紹介シリーズ。最近完結した短めの作品を紹介します。