UTF-8 範囲外の文字がLinux kernel のコミットタイトルに出てくることがあるので気をつけよう

みんなが知ってるそのスマホにも密かに流れる、そうLinux kernel. 最近はそのコミットを眺める機会が多いのですが、色々調べていたら面白い点を見つけたので紹介します。 UTF-8として有効ではないコミットタイトル いまから137万コミットほど前のこと、2006…

RustのPinを完全に理解()するための31個のクイズ

RustのPinって難しいですよね。 ということで、Pinのお気持ちをどれだけ理解できているか測るためのクイズを用意しました。 簡単なやつからいきますので、安心してくださいね! いきますよ〜! Q0 これをコンパイル・実行するとどうなる? fn main() { let a…

2024年の振り返りと2025年の抱負

今年も例年通り、この一年の自分のTLを見返してまとめることにしよう。 総評 カテゴリ別イベントログ 月ごとの投稿抜粋 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月 2025年の抱負 総評 疲れてるなら休め。我慢をするな。直感を信じろ。 判断をする…

今年のWasabiOS進捗振り返り

この記事は「自作OS Advent Calendar 2024」の7日目の記事です(JSTとは言ってない) 自作OS Advent Calendar 2024 - Adventar WasabiOS とは 私が日本国内で開発している、Rustで書かれたOSなので、Wa (和) + Sabi (Rust) = Wasabi という名前になっていま…

2023年の振り返り

例年通り、今年あったことの概要を画像とツイートで一気にまとめておく。 埋め込みが多いので重いですが耐えてください…。(パフォーマンステストに使える疑惑すらある。) 1月 元旦からVRM(gLTF)を読むなど まずやること、hexdump -C (えー)(ただのglTF…

情報科学若手の会で登壇してきた

先週末の三連休、第56回情報科学若手の会に、若手特別講演の枠でありがたくも呼んでいただけたので、参加して発表してきました! 発表で使用したスライドはこちらにおいておきます: ちなみに開催期間中に人々と雑談をしていたら知ってびっくりしたのですが…

CPUを自作したりコンピューターアーキテクチャを理解するためにおすすめの本の一覧

hikaliumの独断と偏見で、積読は除いている。最近も結構新しい本が色々出ているので、それもいいかもしれないが、ある程度評価の定まった本を探したい場合に参考になれば。 ちなみに、hikaliumがセキュキャンでCPU自作を教えていたときのコードはここにある…

Chromebookの開発者モードへの遷移をちょっと追う

某ブログに触発されて、公開情報からChromiumOSの気になるところを追う軽い記事でも書こうかなという気持ちに急になったので書いていく。正確さも何も保証しないし、公開情報しか載っていないのであしからず。公開情報であることを示すために出典へのリンク…

VRM as a Code - またはコードによりあなたのアバターを定義する方法について

WIP

下書きのまましばらく放置されたのでインターネットの海に放流 目標 hikaliumのアバターをコードで定義して、GUIを用いることなく服を着せ替えたりパラメーターを操作するなどできるようにしたい 先行研究 VRM Add-on for Blender BlenderにVRM関連の機能を…

2022年の振り返り

例年通り、今年あったことの概要をまとめておく。 1月 3Dプリンターをお買い上げしてた(今年だったんだ…) 思い立ったらすぐ行動、ってね pic.twitter.com/1HGk34pGf9— hikalium (@hikalium) 2022年1月4日 ちなみにブログ記事も書いた hikalium.hatenablog.…

Rustで自作OSをしているときのデバッグ例 - syscall 命令と仲良くなりたい!後編

この記事は自作OS Advent Calendar 2022の18日目の記事です。前回のあらすじはこちら: hikalium.hatenablog.jp 例外を吐いてるのはどこのどいつだぁ? さて、前回の状況をおさらいすると、 0x200fd0の命令がアドレス0x2000000000にアクセスしようとしてペー…

Rustで自作OSをしているときのデバッグ例 - syscall 命令と仲良くなりたい!前編

この記事は自作OS Advent Calendar 2022の17日目の記事です。他の記事も是非お楽しみください!(そして書ける方はぜひ参加してみてください!!) 前回(?)までのあらすじ hikaliumは自作OS上で動くアプリからsyscall命令を使ってシステムコールを呼べるよう…

「すいみんpreparation」解説

注意: この文章は教科書ではありませんし正確性も保証されていません。より詳細で正確な情報を知りたい場合には、ここで登場したキーワードをもとに自分で調べてみてください。 はじめに 眠れない夜にOSのことを考えていたら、ふとメロディを思いついてしま…

光造形3Dプリンターはじめてみた(ELEGOO Mars 2 Pro)

きっかけ 3Dプリンタ欲しさが増している(自作キーボード改造に使いたさがある)— hikalium (@hikalium) 2022年1月1日 この前の記事で、私もついに自作キーボードに足を踏み入れたわけですが、keyball46の個人的につらいポイントとして、キーがとても少ないと…

2021年の振り返り

今年は何があったかを振り返ってまとめておく。 1月 やっとNoogler Hat (物理)が届いた やっとNoogler Hat(物理)が届いた!(なおNoogler(新入社員)期間は3ヶ月前に終わっているはず…いや、まだ始まっていないのか!?) pic.twitter.com/KpvRladJmc— hikalium …

Keyball46組み立て日記 〜間違えてRP2040を買ったそこのあなたに〜

TL; DR Keyball46はいいぞ ProMicroにはAVR版とRP2040版がある ピン配置の互換性はあれど、命令セットは完全に異なるので「ファームウエアを書けとささやくのよ、私のゴーストが」という方以外はAVR版を間違えずに買いましょう まあ最悪間違えても一週間くら…

Raspberry Pi 4をJTAGデバッグしてみる(FTDI C232HM-DDHSL-0使用)

概要 主な登場人物 決戦結線の時 JTAG ⇔ C232HM-DDHSL-0 UART ⇔ TTL-232RG-VREG3V3-WE 接続イメージ ソフトウエアの設定 openocdをインストールする Raspberry Pi 側でJTAGインターフェイスを有効化する ついでにシリアルポート出力とかも有効化しておく 参…

liumOS 2020年の進化を振り返る

この記事は自作OS Advent Calendar 2020の「最初の4つの素数の和」日目の記事として作成されました。 liumOSについて liumOSは、NVDIMM(Non-volatile DIMM, 不揮発性メインメモリ)をネイティブにサポートしている、珍しいタイプの自作OSです。2018年7月26日…

SECCON 2020 OnlineCTF writeup -- SCSBX:Reversing

概要 今年も例年のように、チームHarekazeの一員として出ました。チームの結果は2123点で11位/579チーム(何らかのFLAGを提出したチーム数)でした。 そのうち、私はSCSBX:Reversingを解いて129ポイントを稼ぎました。(st98さんが一人で1552ポイントも稼いで…

ISUCON10予選 meguryohikaの記録

ISUCON10の予選にmeguryohikaとして @megumish_unsafe, @systemctl_ryoto と共に出たのでその記録です。 結果としては、初期スコア500点台から、900点台の、1000点に届きそうかな?というところまでは行けたものの、最後のベンチマーク前に複数台構成にしよ…

C言語から0番地へアクセスする方法についての個人的まとめ

発端はuchan_nos氏によるこのツイートでした。 C言語で、本当にメモリの0番地にデータを書きたいときはどうすりゃええの?— うー@技術書典8 Day1う31 BitNOS (@uchan_nos) 2020年2月12日 それに対する私のリプライ: uint8_t *p = 1; p--; *p = v;— hikalium…

2019年概観

2019年を時系列に振り返る。Twitter埋め込みが大量にあるので注意。 1月 さくらインターネットで委託研究員としてNVDIMMたちと戯れていた(4月まで) というわけで今日からしばらくの間、さくらインターネット東京支社で、機材を使わせていただくなどの支援…

SECCON CTF 2019 Final competition Q4 "box" write-up

2019-12-22に開催されたSECCONの国際決勝に、hiww, h_noson, st98ともにHarekazeとして参加しました。(昨年は国内決勝に参加してました。) お疲れ様でした。11位でした pic.twitter.com/lfESEQxZ3L— h_noson (@h_noson) 2019年12月22日 順位はあまり振るわず…

自作OS開発におけるTips集 〜liumOSの場合〜

これは、自作OS Advent Calendar 2019 の7番目の素数日の記事です。(遅れてごめんなさい!) はじめに github.com liumOSは、2018年の中頃から私が一人で開発している自作OSです。これまでにいくつかの自作OSを作っては壊し続けてきましたが、今回が3作目に…

SECCON 2019 Online CTF Writeup

follow-me Harekazeの一員として参加しました。4724点を得て14位だったようです。 私は2問に取り組み、うち1問を解けたのでメモ。 follow-me (reversing) ちょっとした計算機アプリのバイナリが渡される。そのプログラムをIntel Pin を利用したトレーサでト…

技術書典6に初出展したところ300部の新刊が完売した話

2019-04-14, 技術書典6が池袋で開催されました。私は、前回の技術書典5の際に、買いに行く側としての初参加を果たしたのですが、その際「来年は書く側で出しなよ〜」と多数の皆様に煽られ応援されたのでした。 来年は技術書展に出す側に回りたいですねえ…?(…

compilium v2 におけるdeclarationの実装

この記事は、C言語 Advent Calendar 2018のうち、3連続素数和が素数になる最小の数番目の記事です。 …といったものの、かなり公開が遅れてしまいました。ごめんなさい…(SECCON国内決勝とかぶったりした&計画性がないのが原因です。) また、言語実装アドベ…

SECCON CTF 2018 ( DOMESTIC )にチームBluemermaidで出て2位だった話

2018-12-23に開催されたSECCON CTF 2018の国内決勝に、チームBluemermaidとして h_noson・うさぎ・srupとともに出場して、準優勝したようです。 準優勝の賞状 pic.twitter.com/aT7sUTgw2u— hikalium (@hikalium) December 23, 2018 ということで、一応Write-…

自作OSでできる!NVDIMMのつかいかた

これは、自作OS Advent Calendar 2018 の7番目の素数日の記事です。 はじめに みなさん、NVDIMMって知っていますか?知っている人はぜひ仲良くなりましょうー。 NVDIMMとは、Non-Volatile DIMMの略で、要するにDIMMスロットに刺さる不揮発性の記憶モジュール…

compilium v2 (in progress)の工夫点

この記事は、言語実装アドベントカレンダーの7日目にあたります。 ちなみに、これを書いている現在は2018年12月7日の12:00です。果たして今日中に記事を公開することはできるのでしょうか…。 compilium v2とは github.com compiliumは、hikaliumが開発してい…