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が開発してい…

SECCON 2018 Online CTF Writeup

https://score-quals.seccon.jp/team/115 チーム Bluemermaid として参加しました。総合17位、国内6位だったようです。 私がsubmitしたフラグは1つでした。(2つ解けたのだけど、1つは少し前に他の方が解いていた…。はやい。) 解けた問題 Special Device Fi…

ISUCON8 本戦に出てまあまあだった話

(この記事は本戦後の眠い頭を無理に回して書いています。どうか温かい目で読んであげてください…。) これまでのあらすじ 前回は、ISUCON8予選に出てガチャを引いたら運良く本戦に行けることになった!という話を書きました。 hikalium.hatenablog.jp とい…

ISUCON8の予選に出てみた

概要 CTFつながりでうさぎさんに声をかけていただき、megumishさんと3人で参加した。 チーム名は「受験生の仇」 13980点で学生枠8位で通過できた。 とにかくうさぎさんのギャンブル運の賜物である。 isucon.net なにをしたの 基本的にインフラまわりをしてい…

思い立っておうちネットワークにdnsmasqを建てた話

概要 ホストとipの結びつきや、固定ipの利用状況の管理が ~/.ssh/config 頼りだったので改善したかった とりあえず善は急げでdnsmasqを建てた Ubuntu 18.04ではsystemd-resolvedが53をLISTENしていて手間取った 環境 $ cat /etc/lsb-release DISTRIB_ID=Ubun…