Skip to content

Instantly share code, notes, and snippets.

View tenpoku1000's full-sized avatar
🏠
Working from home

市川 真一 tenpoku1000

🏠
Working from home
View GitHub Profile
@tenpoku1000
tenpoku1000 / efi_main.c
Last active September 22, 2015 06:03
EFI 内部変数の CustomMode に CUSTOM_SECURE_BOOT_MODE:1 を書き込み後に再起動し、値を取得すると常に STANDARD_SECURE_BOOT_MODE:0 が返る
// Copyright 2015 Shin'ichi Ichikawa. Released under the MIT license.
/**
Copyright (c) Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php
@tenpoku1000
tenpoku1000 / regexp.md
Last active May 26, 2016 12:57
正規表現を学習した際の問題点を掲載
@tenpoku1000
tenpoku1000 / global.cpp
Last active June 9, 2016 07:11
C++ でグローバル定数を宣言する場合のイディオム。定数の唯一の定義をマクロ HEADER_H_ で指示することで実現する
(1) Header.h
#if defined(HEADER_H_)
extern const int global = 100;
#else
extern const int global;
#endif
(2) consumer.cpp
#include "Header.h"
@tenpoku1000
tenpoku1000 / AC_2017-12-09.md
Created November 30, 2017 08:40
表に出て来ない凄い人は、実在性の確認が困難である

表に出て来ない凄い人は、実在性の確認が困難である

この記事は、自作OS Advent Calendar 2017の 12/9 の記事として書かれました。

繰り返される「凄い人は表に出てこない」という趣旨の言説、「俺は凄い人を知っている」という、自慢話とも受け取れる話です。

趣味でプログラミングしていても、成果を公表している人ばかりでもないと思いますし、仕事の話題を公表できる人ばかりでもないと思いますから、「凄い人は表に出てこない」のも珍しいことではないと思います。

仕事の話題だと、特定の業界や業種向けに仕事をしている人も多いでしょうから、汎用的な情報技術の話題よりも業界固有のプロトコルなどの話題が多かったりもするので、話題として広がりがないということもあるでしょうし、話をする場面は特定業界に閉じた集会だったりすることもあるでしょう。それ以前に忙しすぎて発表どころではない人も多いと思います。

@tenpoku1000
tenpoku1000 / x64_PM.md
Created January 11, 2019 12:10
x64 の電力管理についてのメモ
@tenpoku1000
tenpoku1000 / osdev_plan.txt
Last active May 10, 2019 07:06
OS 開発予定(基本機能)
OS 開発予定(基本機能)
フェーズ1:事前準備 - 2015/02 ~ 2018/07
・開発工程の検討
・資料収集
・デバイス購入検討
・サンプルコード開発
フェーズ2:32 ビット整数式の x64 JIT コンパイラを試作する - 2018/07 ~ 2018/12
@tenpoku1000
tenpoku1000 / x64_エンコーディングの概略.txt
Last active August 18, 2020 09:27
x64 の 64 ビットモードのエンコーディング概略
x64 の 64 ビットモードのエンコーディング概略
@tenpoku1000
2018/10/15 作成, 2020/08/18 最終更新
1. 命令の方向
初歩的な命令の場合:
ニーモニック ディスティネーション・オペランド, ソース・オペランド
@tenpoku1000
tenpoku1000 / AC_2020-12-05_compiler_backend.md
Last active December 3, 2020 06:12
独自拡張 WebAssembly を生成し、UEFI アプリを出力するバックエンドを試作する

独自拡張 WebAssembly を生成し、UEFI アプリを出力するバックエンドを試作する

この記事は、自作OS Advent Calendar 2020の 12/05 の記事として書かれました。

WebAssembly から UEFI アプリを出力可能にするため、独自の再配置情報を付加した独自仕様の 64 ビット WebAssembly を定義して実装しています。

コンパイラのバックエンドのソースコードと実行可能ファイルは、以下のリポジトリからダウンロードできます。使い方は、README.md に書かれています。

tenpoku1000/PE_COFF: 独自 WASM64 を生成し、PE/COFF や PE32+(UEFI アプリ)に変換するバックエンド試作版

@tenpoku1000
tenpoku1000 / low_priority_matter.txt
Last active January 22, 2022 09:14
やらないこと・低優先度のリスト
やらないこと・低優先度のリスト
(1)Web/スマホのアプリ開発は行わない
(2)ハードウェア開発は行わない
(3)3D プリンタは扱わない
(4)ドローンは扱わない
(5)IoT/Wot は扱わない
(6)ブロックチェーン技術は扱わない
(7)量子計算は扱わない
@tenpoku1000
tenpoku1000 / memo.md
Last active November 18, 2022 22:57
コンパイラ・IDE・OS・VMM・IME の開発のためのメモ