Linuxプロセス管理とタスクスケジューリングの基本

プロセス管理:ps、top タスクスケジューリング:crontab プロセス管理の概念 プロセスとは、独自の仮想アドレス空間内で実行される独立したプログラムです。 プログラムとプロセスの違い:プログラムは静的なコマンドの集合であり、システムのリソースを消費しません。一方、プロセスは常に変化する動的なもので、システムのリソースを使用します。1つのプログラムから複 ...

7月13日 00:48 投稿

Linux 環境におけるディスク I/O パフォーマンス評価:dd コマンドの実践的活用

Linux の dd コマンドは単なるファイル複製ツールではなく、低レベルのブロックデバイス操作や I/O ベンチマークにも有効なユーティリティです。本稿では、dd を用いたディスク読み書き性能の定量的評価手法を、実行可能なコマンド例とともに解説します。 基本構文と核心パラメータ dd の典型的な構文は以下の通りです: dd if=<入力ソース> of=<出力先> bs=& ...

7月12日 21:39 投稿

Docker 環境の基礎構築とコンテナ管理手法

Docker 技術の概要 Docker は、アプリケーションとその依存ライブラリを標準化されたユニットである「コンテナ」にパッケージ化するためのオープンソースエンジンです。これにより、開発者はインフラストラクチャに依存しない形でソフトウェアをビルド、共有、実行することが可能になります。コンテナは Linux カーネルの機能(名前空間や cgroups など)を利用してプロセ ...

7月12日 20:00 投稿

Linuxの電源管理:熱管理(thermal)と温度制御の分析(デバイスツリーとASLを活用)

Linuxシステムの電源管理と熱管理に関する詳細な内容は、CSDNブログの「Linux電源管理、消費電力管理、熱管理(CPUFreq、CPUIdle、RPM、thermal、スリープ、 wakeup)」を参照してください。 本分析は、Linuxカーネル5.4.18バージョンのソースコードを基にしています。 1. 熱管理の概要 1.1 ハードウェアの基本知識 CPUなどのチップは動作中に大量の熱を発生させ、ハー ...

7月12日 18:27 投稿

Linux環境での開発と操作のヒント

はじめに Linuxは、特にプログラミングやシステム開発において非常に強力なオペレーティングシステムです。ここでは、Linux環境(特にNOI Linuxなど)での開発ワークフロー、基本的な操作、そしてVimエディタの設定に関するヒントを紹介します。 基本的な操作 ファイル管理 デスクトップへのファイルのドラッグ&ドロップ:ファイルをデスクトップの上部領域にドラッグす ...

7月12日 16:52 投稿

Linux基礎:Bashシェルの基本機能とスクリプト作成

本記事では、LinuxシステムにおけるBashシェルの基本概念と機能について解説します。仮想マシン環境(例:VMware上のCentOS 7)とリモート接続ツール(例:MobaXterm)を使用した環境を前提とします。本記事の参考資料として、鳥氏の「Linux私房菜:基础版」と黒馬プログラマーのLinuxコースノートを参考にしています。各トピックの説明後には、GitHubの「The Missing Seme ...

7月11日 18:34 投稿

Linux環境でDockerを用いてRedisコンテナとブloomフィルタをインストールする方法

はじめに 多くのプロジェクトでキャッシュとして利用されるRedis。Redisの学習中に、キャッシュのパフォーマンス問題(キャッシュのパニング、ヒット、雪崩)に遭遇しました。その中で、キャッシュのパニング問題に対する解決策の一つとしてブloomフィルタが挙げられました。ブloomフィルタの実装には、Guava、Redisson、RedisBloomなど複数の選択肢がありますが、今回はロ ...

7月10日 21:42 投稿

Linuxの基礎知識とシステムアーキテクチャ

基本概念 Linuxシステムの構成要素 Linuxシステムは、Linuxカーネル、Linuxファイルシステム、Linuxシェル、Linuxアプリケーションで構成されています。 Linuxの起動プロセス u-bootは一般的なオープンソースのブートローダーです。その起動シーケンスは以下の通りです: CPUが電源を投入すると、まずboot ROM(ブートROM)のコードが実行されます。 boot ROMは、システム ...

7月10日 21:01 投稿

Linux KVM仮想化環境におけるvirshコマンドの活用

virshコマンドラインツールの基本操作 virshはKVM仮想化環境を管理するためのコマンドラインインターフェースです。このツールを使用することで、仮想マシンの作成、管理、操作を効率的に行うことができます。 主要なvirshコマンド virsh list - 実行中の仮想マシン一覧を表示 virsh list --all - 全ての仮想マシン一覧を表示 virsh version - virshのバージョ ...

7月10日 20:14 投稿

Linux x86バイナリ解析とバッファオーバーフロー攻撃の実践

概要 本記事では、Linux環境上の32ビット実行ファイルを対象とした、リバースエンジニアリングと脆弱性攻撃の手法について解説します。対象プログラムpwn1は、ユーザー入力をエコー backするfoo関数を呼び出しますが、バイナリ内には通常の実行フローでは呼び出されないgetShell関数が含まれています。本演習の目的は、この隠された関数を実行させるために、バイナリの直 ...

7月10日 19:19 投稿