けんつの煽られ駆動開発記

何か作るときは大抵誰かに煽られた時です。

Linux

最速のEchoサーバーを目指して、LinuxKernelモジュールを作っていく part4

はじめに 前回、実装したはずの機能で特にacceptでコケる問題がなかなか解決出来なかったので毎回おなじみになりつつあるこのサイト linux/include - Elixir - Free Electrons さらに今回は、この本も参考にして書いていく www.oreilly.co.jpまず色々、調べ…

最速のEchoサーバーを目指して、LinuxKernelモジュールを作っていく part3

はじめに 前回まで rabbitfoot141.hatenablog.com rabbitfoot141.hatenablog.comこの二回でカーネルモジュールで標準出力や、カーネルスレッドを動かすところまでやった。 今回はこれをTCPサーバー化するのを目標にやっていく。 ネットワーク周り さくっと実…

最速のEchoサーバーを目指して、LinuxKernelモジュールを作っていく part2

はじめに 前回はカーネルモジュールで出力をやるところまでやった。 rabbitfoot141.hatenablog.com 今回は、気合でカーネルスレッドを扱えるようにする。 実装 EchoサーバではTCPを使用する、それをスレッドでああだこうだして複数接続を可能にしたい。その…

最速のEchoサーバーを目指して、LinuxKernelモジュールを作っていく part1

はじめに これから諸事情でLinux Kernel moduleとして動作する最速(?)のEchoサーバを作ることになったので Echoサーバを作る過程をまとめていく。 今回はとりあえず、環境構築からKernel moduleで「Hello,World」的なことをするまでをやる 開発環境構築 参考…

gdbを使ってコアダンプの原因を解析

コアダンプは嫌いだ。 大学やその他情報系専門科のある学校に通ったことがある人が一度は触ったことがあるであろう、C言語。 こいつは近年の言語に比べてものすごく面倒くさい書き方をするし、手間もかかる。 中でも最悪なのが「コアダンプ」の文字。 これは…

さくっとアセンブリ入門 hello,world編

さくっとアセンブリ入門 なんとなくアセンブリをはじめてみる レジスタがーとかメモリがーっていうお話は割愛 とりあえず「Hello,World」 まずはお決まりの「Hello,World」から .globl main main: movl $4,%eax movl $1,%ebx movl $msg,%ecx movl $13,%edx i…

OpenGLをC言語で扱う①

OpenGLをC言語で扱う 今回から画像処理以外にCGの部分も少しずつやっていこうと思ってこれからOpenGLをC言語でぼちぼち扱っていこうと思うインストールとかその他もろもろの環境構築は割愛 空ウィンドウを表示する まずはとりあえずウィンドウだけを表示して…

RaspberryPiにSambaをインストールしてサーバー化する

はじめに 結構前にRaspberryPI B+を買っていて そのままになっていたのを発見したのでsambaでもインストールしてサーバー化しようと思う sambaのインストール これはすごく簡単で sudo apt-get install sambaでいい sambaの設定 インストールすると/etc/samb…

PythonでOpenCVを使えるようにする

環境 Ubuntu 14.04 Python 2.7.4 方法 まずは例にならって環境を最新にする sudo apt-get update sudo apt-get upgradeこれで必要なパッケージをインストールするだけ sudo apt-get install libopencv-dev sudo apt-get install python-opencvnumpyが必要な…