Linux

Linuxのopen(低水準入出力)の使い方やfopenとの違いをまとめていく

調べていたら思ったよりはまってしまったので、これを機にopenに関してまとめておく。 open の基礎知識 openとは、Unixにおける入出力システムを提供してくれる関数のこと。早い話が、C言語のfopenの低レベルバージョンの関数。 #include <sys/types.h> #include <sys/stat.h> #includ</sys/stat.h></sys/types.h>…

なぜ子プロセスを呼び出した時にsetsid()を使うのか?

「tinytinyhttpd/httpd.cxx at master · mattn/tinytinyhttpd」のコードを読んでいた時に、以下のコードを見かけた。 child = fork(); if (!child) { setsid(); setpgid(0, 0); setsid();とは、新たなセッションを作成する関数だが、なぜ子プロセスの実行前…

C言語からRubyやPHPなどのスクリプト言語を呼び出して、実行結果をC言語に渡す方法

最近、自作httpサーバーをC言語で書いているが、「C言語側からRubyやPHPを呼び出して、そのRubyの実行結果をC言語側に渡す」という方法が分からなかった。 いろいろ調べた所、「これでOK」という方法が見つかったので、備忘録としてまとめていく。 開発環境 …

Ubuntu18.04.1にphpbrew+php7.2+apache2+MySQL5.7の開発環境を整える方法

今まではCentOSを開発環境に使っていたが、Ubuntuの方がデザインが良いし使っていて気持ちが良かったので乗り換えた。 それに伴ってphpの開発環境を新たに構築し直したので、その方法を備忘録としてまとめておく。 今回の開発環境&入れるパッケージ Ubuntu 1…

CentOS7で日本語入力&日本語106キーボードを使うための設定

CentOS7で日本語入力&キーボードを使いために色々苦労してしまったので、備忘録として記録を残しておきます。 環境 仮想マシン CentOS 7.5 ホストマシン Windows10 日本語入力をできるようにする方法 日本語入力できるようにするためには、以下の場所をクリ…

古いWindowsパソコンをLinux(Ubuntu)に完全に変える方法を解説する

今日は古くなったWindows10パソコンを引っ張り出して、そのWindowsパソコンを丸まるLinux(Ubuntu)に変えたので、その方法を紹介していく。 WindowsをLinux(Ubuntu)に変えて何が嬉しいのか? Windows10になって以降、自動でバージョンアップをするような設定…

CentOS7.4のVimのバージョンを8.0に上げる方法を紹介する

すごくしょうもない事でハマってしまったので、備忘録がてCentOS7.4のVimのバージョンを8.0に上げる方法を紹介します。 結論 単純に以下のコマンドを行うだけで良かった。他のコマンドなんて要らんかったんや。 sudo yum update vim* -y ハマったポイント 実…