3
1

More than 3 years have passed since last update.

セマフォについてまとめ

Posted at

はじめに

前にOracle Master Bronze(DBA)の勉強をしていた時にふとセマフォのことがわからなくなったことを思い出したのでざっくりまとめてみました。

セマフォとは

共有リソースの排他制御(アクセス可能な接続数を制御)を行うもの。

Linuxでの確認方法

[root@localhost ~]# sysctl kernel.sem
kernel.sem = 250(①) 32000(②) 32(③) 128(④)

パラメータ説明

No パラメータ 説明
SEMMSL セマフォ集合ごとのセマフォ数の最大値。IHSで言うとThreadLimitのこと。
SEMMNS システム全体での、全てのセマフォ集合におけるセマフォ数の制限。IHSで言うとMaxClientのこと。
SEMOPM semop(2)コールに指定されるオペレーション数の最大値。semopはセマフォ獲得後に行う操作で、その実行回数を指定するもの。(*1)
SEMMNI システム全体でのセマフォ識別子の最大値(=セマフォ集合の最大数)。IHSで言うとServerLimitのこと。

(*1)セマフォ獲得後の操作とは、セマフォの値を増減させることだと思われる

覚え方

No パラメータ 覚え方
SEMMSL Max Set Limit。セットのリミット(上限)。
SEMMNS S = Systemということで全体の数。N = Nodeで全体、という意味(だと考える)。
SEMOPM semopのMax値。
SEMMNI I = Identify。N = Nodeで全体、という意味(だと考える)。

イメージ図

セマフォ画像.png

参考URL

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1