Skip to content

Instantly share code, notes, and snippets.

View n01e0's full-sized avatar
:shipit:

n01e0 n01e0

:shipit:
View GitHub Profile
@n01e0
n01e0 / keybase.md
Created March 19, 2021 12:53
keybase proof

Keybase proof

I hereby claim:

  • I am n01e0 on github.
  • I am n01e0 (https://keybase.io/n01e0) on keybase.
  • I have a public key ASDvdvC9l3YUB9OFEXLYagEdPiS0vboY3432lolkP_s0kgo

To claim this, I am signing this object:

@n01e0
n01e0 / linux,kernel,c,list_in_kernel.md
Last active November 26, 2019 10:46
list_in_kernel

list in linux kernel

カーネルに於けるリスト型データ構造

LinuxカーネルはCで書かれており、C言語には標準でリストが無い。

どうやってリストを作るかは実装した本人次第だ。

Linuxカーネルのような大規模なコードでは、リストの標準化を行っている。

その実装はCの特異な言語仕様を駆使したものであり、Cをある程度理解していないとかなり難しい。

実装

@n01e0
n01e0 / gdb_chsh.md
Created November 20, 2019 09:16
GDB_cheatseet

GDB cheet sheet

@n01e0
n01e0 / abc.bf
Last active September 10, 2019 09:31
LLVM IRを読む
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+.+.>++++++++++.
@n01e0
n01e0 / _Generic.md
Last active August 23, 2019 07:42
Cでジェネリック

Cでジェネリック

Cでもジェネリックが使える

関数オーバーロードみたいな感じ

引数の型によって関数の動作を変えたい

前に任意の型を引数に取る関数の実装を行ったが、なかなか無理があった。

あれではまだ満足出来ない。

与えた引数の型からマクロが呼び出す関数を変えるようにしたい。

@n01e0
n01e0 / cptr4b.md
Created August 21, 2019 02:40
ポインタ読解入門

ポインタ読解入門

@n01e0
n01e0 / type.md
Last active August 19, 2019 01:51
”型”を受け取るマクロの実装
@n01e0
n01e0 / va.md
Last active August 16, 2019 04:22
C言語で可変引数を受け取る
@n01e0
n01e0 / go4abc.md
Last active August 16, 2019 05:40
go4abc

Hello Go!

package main

import "fmt"

func main(){
    fmt.Println("Hello Go!")
}