Why You Need a Proper Init Process on Docker

You have to use proper init process when you create a docker image. Running a process on docker without it might lead unexpected results. Today, I'll explain about that. The “init” Process and Orphans On a Linux system, the process which has PID 1 is the root of the process tree. It is called “init”. The default signal handlers of the init process is different from other ordinary processes. And the init process has a special responsibility.

Read more →

KJ Method to Get New Ideas

KJ method is a way to integrate classified and arranged information and encourage to conceive new ideas. This will be useful to make better solutions for difficult issues. Today I introduce the outline of that. 1. Explore and Record To begin with, collect and record information as much as possible from all the participants by any method such as brainstorming. Summarize each idea into short title and write it to a little paper (e.

Read more →

Calling C Function from Assembly Code

I'm developing a tiny kernel to learn how software works from the bottom to up. That's why I write assembly code. However, doing everything with that is very hard. So I'd like to use C or higher level programming language as far as possible. By the way, there are many calling conventions to call C function. Which convention can be used depends on CPU architecture and compiler. Today I tried two of them.

Read more →

Show Register Values of QEMU Emulator

To accomplish it, you can pass -monitor stdio option to qemu-system-TARGET. This option provides a monitor console for interacting with QEMU. And then info registers command prints the register values to stdout. $ qemu-system-x86_64 -monitor stdio -kernel kernel.elf (qemu) info registers EAX=cafebabe EBX=00009500 ECX=0010000c EDX=00000511 Also, it can be done with gdb. If -s option was passed, QEMU listen on port 1234 and wait for gdb connection. $ qemu-system-x86_64 -s -kernel kernel.

Read more →

Gentaro "hibariya" Terada

Otaka-no-mori, Chiba, Japan
Email me

Likes Ruby, Internet, and Programming.