JP2516304B2 - デ―タ処理システムにおける資源制御方法及び装置 - Google Patents
デ―タ処理システムにおける資源制御方法及び装置Info
- Publication number
- JP2516304B2 JP2516304B2 JP4291695A JP29169592A JP2516304B2 JP 2516304 B2 JP2516304 B2 JP 2516304B2 JP 4291695 A JP4291695 A JP 4291695A JP 29169592 A JP29169592 A JP 29169592A JP 2516304 B2 JP2516304 B2 JP 2516304B2
- Authority
- JP
- Japan
- Prior art keywords
- account
- resources
- resource
- available
- pool
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/504—Resource capping
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
【0001】
【産業上の利用分野】本発明はデータ処理システムに関
し、より詳細には、多重処理環境用の資源アクセス及び
アカウンティング制御方法に関する。
し、より詳細には、多重処理環境用の資源アクセス及び
アカウンティング制御方法に関する。
【0002】
【従来の技術】ここに記述する本発明はUNIX(商
標)オペレーティングシステムの一つのバージョンで実
施されたものである。UNIXオペレーティングシステ
ムはディジタルイクイプメントコーポレーション(Digi
tal Equipment Corporation )のミニコンピュータで使
用するためにベル電話会社(Bell Telephone Laborator
ies, Inc. )により開発されたものであるが、広範囲の
ミニコンピュータをはじめとして、最近ではマイクロコ
ンピュータ及びワークステーション用の普及したオペレ
ーティングシステムとなっている。UNIXオペレーテ
ィングシステムの詳細はウェスターンエレクトリック社
(Western Electric Co.)から1983年1月に出版さ
れた“UNIX System, User's Manual System V ”に示さ
れている。UNIXオペレーティングシステムの概略
は、カーニガン他(Brian W.Kernighan及びRob Pike)
著、“The UNIX Programming Environment”,プレンテ
ィスホール(Prentice-Hall )出版(1984)及びモ
ーリス(Maurice J.Bach)著”Design of the UNIX Ope
rating System ”,プレンティスホール出版(198
6)に示されている。UNIXオペレーティングシステ
ムの他のバージョン、例えばバークレーバージョン(Be
rkeley version)として知られるカリホルニア大学バー
クレー校で開発されたもの、及びAIX(登録商標)と
して知られるIBM社により開発されたものを含むもの
が開発されている。
標)オペレーティングシステムの一つのバージョンで実
施されたものである。UNIXオペレーティングシステ
ムはディジタルイクイプメントコーポレーション(Digi
tal Equipment Corporation )のミニコンピュータで使
用するためにベル電話会社(Bell Telephone Laborator
ies, Inc. )により開発されたものであるが、広範囲の
ミニコンピュータをはじめとして、最近ではマイクロコ
ンピュータ及びワークステーション用の普及したオペレ
ーティングシステムとなっている。UNIXオペレーテ
ィングシステムの詳細はウェスターンエレクトリック社
(Western Electric Co.)から1983年1月に出版さ
れた“UNIX System, User's Manual System V ”に示さ
れている。UNIXオペレーティングシステムの概略
は、カーニガン他(Brian W.Kernighan及びRob Pike)
著、“The UNIX Programming Environment”,プレンテ
ィスホール(Prentice-Hall )出版(1984)及びモ
ーリス(Maurice J.Bach)著”Design of the UNIX Ope
rating System ”,プレンティスホール出版(198
6)に示されている。UNIXオペレーティングシステ
ムの他のバージョン、例えばバークレーバージョン(Be
rkeley version)として知られるカリホルニア大学バー
クレー校で開発されたもの、及びAIX(登録商標)と
して知られるIBM社により開発されたものを含むもの
が開発されている。
【0003】資源アクセス及びアカウンティング制御は
システム管理者がUNIX互換性オペレーティングシス
テムでの資源アクセスを許可し、資源利用の監査を行う
ことが出来るようにする。資源は物理的なもの、あるい
は論理的なものでありうる。物理的な資源としてはディ
スクスペース、通信ライン及び処理時間がある。論理的
資源には通信バッファ、ファイルシステムバッファ、プ
ロセス及びページスペースが含まれる。すべての論理的
資源は究極的には物理的資源でつくられる。
システム管理者がUNIX互換性オペレーティングシス
テムでの資源アクセスを許可し、資源利用の監査を行う
ことが出来るようにする。資源は物理的なもの、あるい
は論理的なものでありうる。物理的な資源としてはディ
スクスペース、通信ライン及び処理時間がある。論理的
資源には通信バッファ、ファイルシステムバッファ、プ
ロセス及びページスペースが含まれる。すべての論理的
資源は究極的には物理的資源でつくられる。
【0004】多くのシステムにおいては、資源利用を制
御しあるいは監査することが重要である。システム管理
者がシステムの使用の可能性を保証したいとき資源利用
の制御が必要である。例えば、原子炉での炉のパラメー
タを制御するプロセスのような臨界的なプロセスは或る
時点で走行しなければならず、そうでないと或る安全性
のルールが侵かされることになる。このシステムで走行
する微妙なプロセスはそのシステム内のプロセステーブ
ルスロットをすべて使いつくしてその臨界的プロセスの
開始を妨げることがありうる。或るエンティティ(プロ
セス/ユーザ/プロジェクト)により消費されうる資源
の量を制限する制御を一般に割当(quota )と呼ぶ。
御しあるいは監査することが重要である。システム管理
者がシステムの使用の可能性を保証したいとき資源利用
の制御が必要である。例えば、原子炉での炉のパラメー
タを制御するプロセスのような臨界的なプロセスは或る
時点で走行しなければならず、そうでないと或る安全性
のルールが侵かされることになる。このシステムで走行
する微妙なプロセスはそのシステム内のプロセステーブ
ルスロットをすべて使いつくしてその臨界的プロセスの
開始を妨げることがありうる。或るエンティティ(プロ
セス/ユーザ/プロジェクト)により消費されうる資源
の量を制限する制御を一般に割当(quota )と呼ぶ。
【0005】通常、UNIXシステムは資源の利用を制
御するために一つの割当システムを、もしあったとして
もほとんど提示しない。UNIXのバークレーソフトウ
ェアディストリビューション(Berkeley Software Dist
ribution (BSD))バージョンはディスク割当を与え、こ
れら割当によりシステム管理者はディスクスペースを特
定のユーザに割振ることが出来る。BSD UNIXは
また一つのプロセスによる資源消費を制限する一つの方
法を処理する。これらの制御は処理時間、最大ファイル
サイズ、コアファイルサイズ、メモリ利用、プロセスス
タックサイズ及びプロセスデータセグメントサイズを制
限する。しかしながらこれら制御は本当の意味での割当
ではない。一般にユーザによりつくることの出来るプロ
セスの数に制限はないから、ユーザは多くのプロセスを
つくることによりそれら資源を無制限に消費することが
出来る。プロセスの数に制限があったとしてもそれは一
般に資源消費の制御には効果がない。UNIXはプロセ
ス型システムであり、ほとんどのタスクは別々のプロセ
スで行われ、それ故「多重タスク」を行うユーザは多く
の同時的プロセスを必要とする。これにより単位プロセ
スの制限が無効となる傾向がある。
御するために一つの割当システムを、もしあったとして
もほとんど提示しない。UNIXのバークレーソフトウ
ェアディストリビューション(Berkeley Software Dist
ribution (BSD))バージョンはディスク割当を与え、こ
れら割当によりシステム管理者はディスクスペースを特
定のユーザに割振ることが出来る。BSD UNIXは
また一つのプロセスによる資源消費を制限する一つの方
法を処理する。これらの制御は処理時間、最大ファイル
サイズ、コアファイルサイズ、メモリ利用、プロセスス
タックサイズ及びプロセスデータセグメントサイズを制
限する。しかしながらこれら制御は本当の意味での割当
ではない。一般にユーザによりつくることの出来るプロ
セスの数に制限はないから、ユーザは多くのプロセスを
つくることによりそれら資源を無制限に消費することが
出来る。プロセスの数に制限があったとしてもそれは一
般に資源消費の制御には効果がない。UNIXはプロセ
ス型システムであり、ほとんどのタスクは別々のプロセ
スで行われ、それ故「多重タスク」を行うユーザは多く
の同時的プロセスを必要とする。これにより単位プロセ
スの制限が無効となる傾向がある。
【0006】システム管理者がそのシステムの使用を管
理したいときには資源の利用を監査する必要がある。例
えば、多くの組織は多くの異なる部門にサービスを行う
集中型のコンピュータを維持している。これらのコンピ
ュータはしばしばスーパーコンピュータのような特殊な
マシンである。それらコンピュータを購入し、保守し、
そして動作させるためのコストは個々の部門からその使
用に応じて回収される。コンピュータシステムにおける
資源の利用の監査を一般にアカウンティングと呼ぶ。
理したいときには資源の利用を監査する必要がある。例
えば、多くの組織は多くの異なる部門にサービスを行う
集中型のコンピュータを維持している。これらのコンピ
ュータはしばしばスーパーコンピュータのような特殊な
マシンである。それらコンピュータを購入し、保守し、
そして動作させるためのコストは個々の部門からその使
用に応じて回収される。コンピュータシステムにおける
資源の利用の監査を一般にアカウンティングと呼ぶ。
【0007】UNIXシステムはユーザ単位で資源利用
を追跡することが可能な完全なアカウンティングシステ
ムを含む。監査される資源は処理時間、入力/出力サブ
システム利用度、メモリ利用度、及びプリンタの利用度
を含む。
を追跡することが可能な完全なアカウンティングシステ
ムを含む。監査される資源は処理時間、入力/出力サブ
システム利用度、メモリ利用度、及びプリンタの利用度
を含む。
【0008】UNIX割当サブシステムとアカウンティ
ンサブシステムの共通の問題は割当と責任体制の単位が
ユーザであることである。これは、UNIXが開発され
た研究及び学術的環境を反映するものである。これらの
場合、人間はより個人ベースでワークを行い、それ故資
源制御がこの単位で行われることになることは当然であ
る。しかしながら、商業的及び産業的な組織は通常グル
ープまたはプロジェクト単位でワークを行うから、UN
IXはそれらには不向きである。
ンサブシステムの共通の問題は割当と責任体制の単位が
ユーザであることである。これは、UNIXが開発され
た研究及び学術的環境を反映するものである。これらの
場合、人間はより個人ベースでワークを行い、それ故資
源制御がこの単位で行われることになることは当然であ
る。しかしながら、商業的及び産業的な組織は通常グル
ープまたはプロジェクト単位でワークを行うから、UN
IXはそれらには不向きである。
【0009】一般に割当システムはシステム資源を区画
する傾向があるという望ましくない特性を有する。例え
ば、一つのシステムに10000個のプロセステーブル
スロット(最大プロセス数を決定する)と100個の資
源アカウントがあるとすれば、各アカウントに100個
のプロセステーブルスロットを許可するのが一つの方法
である。しかしながら、ほとんどの資源アカウントは常
にすべて使用されるわけではないから、このシステムは
ピーク時を除き充分には利用されないことになる。シス
テム管理者は各アカウントに100個のプロセスを越え
るプロセスを許可することも出来るが、その場合には資
源が使用可能であることの有効な保証は得られない。
する傾向があるという望ましくない特性を有する。例え
ば、一つのシステムに10000個のプロセステーブル
スロット(最大プロセス数を決定する)と100個の資
源アカウントがあるとすれば、各アカウントに100個
のプロセステーブルスロットを許可するのが一つの方法
である。しかしながら、ほとんどの資源アカウントは常
にすべて使用されるわけではないから、このシステムは
ピーク時を除き充分には利用されないことになる。シス
テム管理者は各アカウントに100個のプロセスを越え
るプロセスを許可することも出来るが、その場合には資
源が使用可能であることの有効な保証は得られない。
【0010】この問題に対する一つの解は、要求された
資源について競合がなければプロセスがそれらの割当を
越えることが出来るようにするが、競合が生じる場合に
はそのような資源を放棄することである。例えば一つの
プロセスは、通信バッファの利用度が50%未満である
限り、要求された通りの数の通信バッファを許可されう
る。この方法は二つの問題を有する。
資源について競合がなければプロセスがそれらの割当を
越えることが出来るようにするが、競合が生じる場合に
はそのような資源を放棄することである。例えば一つの
プロセスは、通信バッファの利用度が50%未満である
限り、要求された通りの数の通信バッファを許可されう
る。この方法は二つの問題を有する。
【0011】上記二つの問題の内の第一のものは、ファ
イルシステムスペースのような永久的な資源に関連して
ワークしないことである。第二はUNIXシステム内の
資源を放棄する明確な方法がプロセスにないことである
(例えば通信バッファはそのプロセスの代りに要求され
るのであり、プロセスにより直接にではなく、そして任
意の時点で自由になりえない)。その結果、それら資源
はそのプロセスを終了しなければ再び得ることが出来な
い。
イルシステムスペースのような永久的な資源に関連して
ワークしないことである。第二はUNIXシステム内の
資源を放棄する明確な方法がプロセスにないことである
(例えば通信バッファはそのプロセスの代りに要求され
るのであり、プロセスにより直接にではなく、そして任
意の時点で自由になりえない)。その結果、それら資源
はそのプロセスを終了しなければ再び得ることが出来な
い。
【0012】以上述べた設計は資源制御がグループ型ま
たは個人型のいずれでも行うことが出来るようにするこ
とにより上記問題を解決する。資源制御の単位はアカウ
ントであり、これは1以上のユーザを含むことが出来
る。更に、ユーザは1以上のアカウントを指定すること
が出来る。ユーザがこのシステムにログするとき、それ
らユーザは使用しようとする資源アカウントを選択する
か、あるいはそれらのデフォルトアカウントを使用す
る。ログイン後につくられるすべてのプロセスは、ユー
ザがそのセッションの中途でアカウントを変えない限り
このアカウントの識別子を含む。
たは個人型のいずれでも行うことが出来るようにするこ
とにより上記問題を解決する。資源制御の単位はアカウ
ントであり、これは1以上のユーザを含むことが出来
る。更に、ユーザは1以上のアカウントを指定すること
が出来る。ユーザがこのシステムにログするとき、それ
らユーザは使用しようとする資源アカウントを選択する
か、あるいはそれらのデフォルトアカウントを使用す
る。ログイン後につくられるすべてのプロセスは、ユー
ザがそのセッションの中途でアカウントを変えない限り
このアカウントの識別子を含む。
【0013】システム管理者はユーザをアカウントに指
定し、そして各アカウントについて割当を許可する。一
つのアカウントに割当てられたユーザはそのアカウント
に与えられる資源を使用することが出来る。割当はアカ
ウント識別子が資源要求の許可を決定するためにユーザ
の識別子の代りに使用されることを除き、現在のUNI
Xシステムの実行においてそのまま管理される。例え
ば、ファイル制御ブロックはアカウント識別子を含むよ
うに変更され、このアカウントがそのファイルのディス
ク利用に対しチャージされる。
定し、そして各アカウントについて割当を許可する。一
つのアカウントに割当てられたユーザはそのアカウント
に与えられる資源を使用することが出来る。割当はアカ
ウント識別子が資源要求の許可を決定するためにユーザ
の識別子の代りに使用されることを除き、現在のUNI
Xシステムの実行においてそのまま管理される。例え
ば、ファイル制御ブロックはアカウント識別子を含むよ
うに変更され、このアカウントがそのファイルのディス
ク利用に対しチャージされる。
【0014】アカウンティングレコードのフォーマット
はそのプロセスについての資源アカウント識別子を含む
ように変更され、アカウントのユーティリティはこの識
別子を追跡し表示するように変更される。
はそのプロセスについての資源アカウント識別子を含む
ように変更され、アカウントのユーティリティはこの識
別子を追跡し表示するように変更される。
【0015】上位方向互換性は二つの方法の内のいずれ
かにより与えられる。その第一において、システム管理
者は資源アカウントを全くつくらず、まったく指定しな
いようにすることが出来る。この場合、ユーザは単にそ
れらのユーザ識別子と同一である識別子を有する一つの
アカウントに属する。ログイン時に、ログインプログラ
ムが、アカウントがつくられていないことを検出し、そ
してプロセスアカウント識別子をその新しいログインユ
ーザの識別子にセットする。
かにより与えられる。その第一において、システム管理
者は資源アカウントを全くつくらず、まったく指定しな
いようにすることが出来る。この場合、ユーザは単にそ
れらのユーザ識別子と同一である識別子を有する一つの
アカウントに属する。ログイン時に、ログインプログラ
ムが、アカウントがつくられていないことを検出し、そ
してプロセスアカウント識別子をその新しいログインユ
ーザの識別子にセットする。
【0016】第二においては、システム管理者は各ユー
ザについて個々の資源アカウントをつくり、そのアカウ
ント識別子をユーザの識別子にセットする。この方法は
現存する割当レコードを変更する必要がないので完全に
独立したグループアカウンティング法への無理のない転
換を可能にする。
ザについて個々の資源アカウントをつくり、そのアカウ
ント識別子をユーザの識別子にセットする。この方法は
現存する割当レコードを変更する必要がないので完全に
独立したグループアカウンティング法への無理のない転
換を可能にする。
【0017】この設計は区画の問題を次のようにして解
決する。「プール」アカウントとして知られる区別され
た資源アカウントがある。すべてのユーザは本来このプ
ールアカウントに属しており、そしてシステム管理者は
このアカウントに割当を指定出来る。一つのプロセスが
一つの資源を要求し、その資源についてそのプロセスの
現在のアカウントの割当が満杯になるとすれば、そのプ
ロセスはそのプールアカウントの割当に引き当てること
が出来る。各アカウントにより使用されるプール資源の
数のレコードが維持され、一つのプロセスが、そのアカ
ウントが現在のプール資源を有する一つの資源を解放す
るとき、そのプールにその資源が記入される。この方法
は区画の問題を部分的に解決するものであり、特にプロ
セスの部分集合のみが保証された資源の利用の可能性を
必要とする臨界的なプロセスであるようなシステムに有
効である。これらシステムにおいて、管理者は臨界的な
プロセスを走行させるために用いられるアカウントを必
要な資源に割当て、次に残りをプールアカウントに割当
てることになる。通常のプロセスはプールアカウントか
らの資源について競合し、臨界的プロセスは必要な資源
を保証される。
決する。「プール」アカウントとして知られる区別され
た資源アカウントがある。すべてのユーザは本来このプ
ールアカウントに属しており、そしてシステム管理者は
このアカウントに割当を指定出来る。一つのプロセスが
一つの資源を要求し、その資源についてそのプロセスの
現在のアカウントの割当が満杯になるとすれば、そのプ
ロセスはそのプールアカウントの割当に引き当てること
が出来る。各アカウントにより使用されるプール資源の
数のレコードが維持され、一つのプロセスが、そのアカ
ウントが現在のプール資源を有する一つの資源を解放す
るとき、そのプールにその資源が記入される。この方法
は区画の問題を部分的に解決するものであり、特にプロ
セスの部分集合のみが保証された資源の利用の可能性を
必要とする臨界的なプロセスであるようなシステムに有
効である。これらシステムにおいて、管理者は臨界的な
プロセスを走行させるために用いられるアカウントを必
要な資源に割当て、次に残りをプールアカウントに割当
てることになる。通常のプロセスはプールアカウントか
らの資源について競合し、臨界的プロセスは必要な資源
を保証される。
【0018】区画の問題はそれが依然として生じうるた
め部分的にのみ解決される。プロセスX,Y及びZのす
べてが300個の資源を有するシステムの資源Qの内の
100個を必要とするとすれば、システム管理者はそれ
らプロセスが同時に走行する場合にはそれら資源を区画
しなければならない。上記のプール法は管理者がプロセ
スを臨界と非臨界に分離しうるようにする。臨界プロセ
スにはそのすべての資源要件が割振られねばならない。
非臨界プロセスはこの要件を有さず、それ故プールを
「共用」することが出来る。非臨界プロセスが資源の拒
否により遅延され、あるいは障害となるとすれば、それ
は了承しうる。このように、臨界プロセスは資源を区画
することが出来るが非臨界プロセスはそれが出来ない。
め部分的にのみ解決される。プロセスX,Y及びZのす
べてが300個の資源を有するシステムの資源Qの内の
100個を必要とするとすれば、システム管理者はそれ
らプロセスが同時に走行する場合にはそれら資源を区画
しなければならない。上記のプール法は管理者がプロセ
スを臨界と非臨界に分離しうるようにする。臨界プロセ
スにはそのすべての資源要件が割振られねばならない。
非臨界プロセスはこの要件を有さず、それ故プールを
「共用」することが出来る。非臨界プロセスが資源の拒
否により遅延され、あるいは障害となるとすれば、それ
は了承しうる。このように、臨界プロセスは資源を区画
することが出来るが非臨界プロセスはそれが出来ない。
【0019】
【発明が解決しようとする課題】この設計の考えられる
問題は、現存するグループ機構が同一の目的についてサ
ービスしたとき、新しいエンティティ、すなわち資源ア
カウントをつくるということである。しかしながらこれ
は真実ではない。UNIXにおいてグループは個別的ア
クセス制御に用いられる。一つのグループに一つのユー
ザを付加することは、そのユーザにそのグループ内の他
のユーザと同一のアクセス権を与えることである。しか
しながらこれは資源制御で与えられるものと同じポリシ
ーではない。資源制御はシステムの使用の可能性を問題
とし、個別アクセス制御はそのシステムに維持される情
報の完全性及び秘密性に関する。資源制御をグループで
行うには、これらポリシーがそのシステムに別々に強制
しえないようにする必要がある。また、グループ識別子
はすでに現存するシステムに指定されており、多くの場
合現存するユーザの識別子との間でコンフリクトが生じ
るから、互換性を与えることは困難である。
問題は、現存するグループ機構が同一の目的についてサ
ービスしたとき、新しいエンティティ、すなわち資源ア
カウントをつくるということである。しかしながらこれ
は真実ではない。UNIXにおいてグループは個別的ア
クセス制御に用いられる。一つのグループに一つのユー
ザを付加することは、そのユーザにそのグループ内の他
のユーザと同一のアクセス権を与えることである。しか
しながらこれは資源制御で与えられるものと同じポリシ
ーではない。資源制御はシステムの使用の可能性を問題
とし、個別アクセス制御はそのシステムに維持される情
報の完全性及び秘密性に関する。資源制御をグループで
行うには、これらポリシーがそのシステムに別々に強制
しえないようにする必要がある。また、グループ識別子
はすでに現存するシステムに指定されており、多くの場
合現存するユーザの識別子との間でコンフリクトが生じ
るから、互換性を与えることは困難である。
【0020】それ故、本発明の目的は改善された多重プ
ロセスデータ処理システムを提供することである。本発
明の他の目的はデータ処理システムにおいて改善された
資源制御機構を提供することである。本発明の他の目的
はデータ処理システムにおいて改善された資源制御割振
り機構を提供することである。
ロセスデータ処理システムを提供することである。本発
明の他の目的はデータ処理システムにおいて改善された
資源制御機構を提供することである。本発明の他の目的
はデータ処理システムにおいて改善された資源制御割振
り機構を提供することである。
【0021】
【課題を解決するための手段】複数のユーザ及びプロセ
スを有するデータ処理システムにおける資源の制御方法
およびシステムは、本発明によれば、そのデータ処理シ
ステムの少なくとも1個のユーザを資源制御情報を有す
るアカウントに集約し、そのデータ処理システムにより
そのアカウントを用いて少なくとも1個のユーザによる
資源の割当を制御するようにする。
スを有するデータ処理システムにおける資源の制御方法
およびシステムは、本発明によれば、そのデータ処理シ
ステムの少なくとも1個のユーザを資源制御情報を有す
るアカウントに集約し、そのデータ処理システムにより
そのアカウントを用いて少なくとも1個のユーザによる
資源の割当を制御するようにする。
【0022】
【作用】本発明はユーザ単位ではなく、グループ単位で
アクセス制御とアカウンティングを行うことが出来る。
これはユーザ単位で資源割当てとアカウンティングを行
う現存のものと上位方向に互換性を有する。更に、本発
明は強制されるべきシステム使用可能性のポリシーを選
択する際により大きいフレキシビリティを与える。資源
割当て法が導入され、プールされた資源アカウントによ
りシステム管理者がプロセスを臨界/非臨界分離に分け
ることが出来る。
アクセス制御とアカウンティングを行うことが出来る。
これはユーザ単位で資源割当てとアカウンティングを行
う現存のものと上位方向に互換性を有する。更に、本発
明は強制されるべきシステム使用可能性のポリシーを選
択する際により大きいフレキシビリティを与える。資源
割当て法が導入され、プールされた資源アカウントによ
りシステム管理者がプロセスを臨界/非臨界分離に分け
ることが出来る。
【0023】
【実施例】図1に示すデータ処理システムは好適な実施
例ではUNIXまたはそれに等価なオペレーティングシ
ステムを用いて動作する。このデータ処理システムは中
央処理ユニット(CPU)10、読取専用メモリ(RO
M)16、ランダムアクセスメモリ(RAM)14、入
力/出力(I/O)アダプタ18、ユーザインターフェ
ースアダプタ22、ディスプレイアダプタ36及び共通
バスすなわちデータバス12を介して相互接続された通
信アダプタ34を有する。入力/出力(I/O)アダプ
タ18は直接アクセス記憶装置(DASD)20のよう
なI/O装置とバス12の間にインターフェースを与え
る。ユーザアダプタ22は同様にしてユーザ装置(キー
ボード24、トラックボール32、マウス26及びスピ
ーカ28等)とバス12の間にインターフェースを与え
る。テキスト、図形及び画像はディスプレイ38に表示
される。ディスプレイ38はディスプレイアダプタ36
を介してバス12にアクセスしうるようにする。UNI
Xオペレーティングシステムではシステムセットアップ
及びオペレーションを限定する特定のファイルを有する
ファイルシステムがDASD20に維持される。他の実
施例ではローカルDASD20はなく、通信アダプタ3
4を介してネットワークの遠隔ファイルシステムにアク
セスする。次に述べる方法及びシステムがいずれのDA
SD位置にも同様に適用出来る。
例ではUNIXまたはそれに等価なオペレーティングシ
ステムを用いて動作する。このデータ処理システムは中
央処理ユニット(CPU)10、読取専用メモリ(RO
M)16、ランダムアクセスメモリ(RAM)14、入
力/出力(I/O)アダプタ18、ユーザインターフェ
ースアダプタ22、ディスプレイアダプタ36及び共通
バスすなわちデータバス12を介して相互接続された通
信アダプタ34を有する。入力/出力(I/O)アダプ
タ18は直接アクセス記憶装置(DASD)20のよう
なI/O装置とバス12の間にインターフェースを与え
る。ユーザアダプタ22は同様にしてユーザ装置(キー
ボード24、トラックボール32、マウス26及びスピ
ーカ28等)とバス12の間にインターフェースを与え
る。テキスト、図形及び画像はディスプレイ38に表示
される。ディスプレイ38はディスプレイアダプタ36
を介してバス12にアクセスしうるようにする。UNI
Xオペレーティングシステムではシステムセットアップ
及びオペレーションを限定する特定のファイルを有する
ファイルシステムがDASD20に維持される。他の実
施例ではローカルDASD20はなく、通信アダプタ3
4を介してネットワークの遠隔ファイルシステムにアク
セスする。次に述べる方法及びシステムがいずれのDA
SD位置にも同様に適用出来る。
【0024】集約資源アカウンティング及び制御に用い
られるアカウンティンググループについて可能となるよ
うにUNIXオペレーティングシステムを変更するには
三つの主な変更が必要である。変更されるべきそれら三
つのエリアは一般に資格証明すなわちクリデンシャリン
グ、監査及びアクセス制御である。これらエリアに対す
る変更は次の4つの組合せを含む。ファイルシステム
に記憶されてコマンドの実行によりメモリにロードされ
る新コマンドの加入、システムライブラリに記憶され
てコマンドによる参照によりメモリにロードされる新サ
ブルーチンの加入、新ファイル(ユーザデータベー
ス)に限定される新システムオブジェクトの加入、及び
カーネルユーザブロック、カーネルアカウンティング
レコード及びファイルシステムイノード(inode )(デ
ィスク及びコアメモリの両方)についてのデータ構造の
変更。
られるアカウンティンググループについて可能となるよ
うにUNIXオペレーティングシステムを変更するには
三つの主な変更が必要である。変更されるべきそれら三
つのエリアは一般に資格証明すなわちクリデンシャリン
グ、監査及びアクセス制御である。これらエリアに対す
る変更は次の4つの組合せを含む。ファイルシステム
に記憶されてコマンドの実行によりメモリにロードされ
る新コマンドの加入、システムライブラリに記憶され
てコマンドによる参照によりメモリにロードされる新サ
ブルーチンの加入、新ファイル(ユーザデータベー
ス)に限定される新システムオブジェクトの加入、及び
カーネルユーザブロック、カーネルアカウンティング
レコード及びファイルシステムイノード(inode )(デ
ィスク及びコアメモリの両方)についてのデータ構造の
変更。
【0025】〔クリデンシャリング〕クリデンシャリン
グはユーザに、使用可能性のポリシーを実行するために
資源のアカウンティングを行い、それへのアクセスを制
御するために用いられるクリデンシャル(この場合、ア
カウントID)を割当てることを含む。まず、新しい事
務管理オブジェクトのクラスを図2のブロック40で定
義してアカウンティンググループの事務管理エンティテ
ィとしての加入を可能にする。これらオブジェクトは次
の(a) 〜(e) の5つの属性を有する。 (a) name(名前)(データ型:文字列) コマンドレベルでアカウンティンググループを知ること
の出来る名前を定義する。 (b) identifier(識別子)(データ型:カージナル
(cardinal)(無符号長(unsigned long )) カーネルレベルでアカウンティンググループを知ること
の出来る名前を定義する。 (c) member(メンバ)(データ型:文字列のリスト) そのアカウンティンググループに属するシステムユーザ
を定義する。 (d) administrator (管理者)(データ型:文字列の
リスト) そのアカウンティンググループの管理者でありうるシス
テムユーザを定義する(メンバ及び管理者を付加/削除
することにより)。定義された保安管理者は通常この機
能を行うことが出来る。 (e) admin (アドミン)(データ型:ブール) そのアカウンティンググループを事務管理として定義す
る。これは保安管理者がこのグループの管理者でないこ
とを意味する。
グはユーザに、使用可能性のポリシーを実行するために
資源のアカウンティングを行い、それへのアクセスを制
御するために用いられるクリデンシャル(この場合、ア
カウントID)を割当てることを含む。まず、新しい事
務管理オブジェクトのクラスを図2のブロック40で定
義してアカウンティンググループの事務管理エンティテ
ィとしての加入を可能にする。これらオブジェクトは次
の(a) 〜(e) の5つの属性を有する。 (a) name(名前)(データ型:文字列) コマンドレベルでアカウンティンググループを知ること
の出来る名前を定義する。 (b) identifier(識別子)(データ型:カージナル
(cardinal)(無符号長(unsigned long )) カーネルレベルでアカウンティンググループを知ること
の出来る名前を定義する。 (c) member(メンバ)(データ型:文字列のリスト) そのアカウンティンググループに属するシステムユーザ
を定義する。 (d) administrator (管理者)(データ型:文字列の
リスト) そのアカウンティンググループの管理者でありうるシス
テムユーザを定義する(メンバ及び管理者を付加/削除
することにより)。定義された保安管理者は通常この機
能を行うことが出来る。 (e) admin (アドミン)(データ型:ブール) そのアカウンティンググループを事務管理として定義す
る。これは保安管理者がこのグループの管理者でないこ
とを意味する。
【0026】この情報は図3に示すように二つのファイ
ル、すなわち、/etc / acct 50及び/etc /securi
ty/ acct 60という二つのファイルに記憶される。/
etc/acct 50はアカウント(acct)名、識別子及び
メンバ属性を含み、このシステムの各acct名を含む。各
acct名51は別々のラインで定義され、フィールドは従
来のUNIXシステムの/etc /passwd及び/etc /gr
oup ファイルにおけるようにコロンで分けられる。第1
フィールドはacct名52であり、第2フィールドは左ブ
ランク53である。第3フィールドはacct ID 54、第
4フィールドはmember(メンバ)56のリストである。
各member名はコンマと任意幅の白スペース(ブランクま
たはタブのみ)で分離される。/etc /security/ acc
t 60はname(名前)62、administrator (管理者)
66及びadmin 属性64を含む。各 acct 51はそれ自
体のスタンザ(stanza)68を有する。このスタンザの
フォーマットはUNIXファイルシステムにおける/et
c /security/group ファイルで用いられるような周知
のものである。
ル、すなわち、/etc / acct 50及び/etc /securi
ty/ acct 60という二つのファイルに記憶される。/
etc/acct 50はアカウント(acct)名、識別子及び
メンバ属性を含み、このシステムの各acct名を含む。各
acct名51は別々のラインで定義され、フィールドは従
来のUNIXシステムの/etc /passwd及び/etc /gr
oup ファイルにおけるようにコロンで分けられる。第1
フィールドはacct名52であり、第2フィールドは左ブ
ランク53である。第3フィールドはacct ID 54、第
4フィールドはmember(メンバ)56のリストである。
各member名はコンマと任意幅の白スペース(ブランクま
たはタブのみ)で分離される。/etc /security/ acc
t 60はname(名前)62、administrator (管理者)
66及びadmin 属性64を含む。各 acct 51はそれ自
体のスタンザ(stanza)68を有する。このスタンザの
フォーマットはUNIXファイルシステムにおける/et
c /security/group ファイルで用いられるような周知
のものである。
【0027】この新オブジェクトクラスにアクセスする
ために新コマンドとサブルーチンが定義される。新コマ
ンドは次のものを含む。 - mkacct 一つの新しいアカウンティンググループをつくる。 - rmacct すでに存在する一つのアカウンティンググループを削除
する。 - chacct 一つのアカウンティンググループの1以上の属性を変更
する。 - lsacct 一つのアカウンティンググループの1以上の属性を照会
する。 それら新サブルーチンは次のものを含む。 - setacctdb アカウンティンググループオブジェクトを含むデータベ
ースを開放する。 - getacctattr 一つのアカウンティンググループの属性の値を照会す
る。 - setacctattr 一つのアカウンティンググループの属性の値を変更す
る。 - endacctdb 一つのアカウンティンググループオブジェクトを含むデ
ータベースを閉じる。 - nextacct 線形検索において次のアカウンティンググループの名を
もどす。 テーブル1は上記コマンドとサブルーチンをどのように
して実行するかを当業者が知ることが出来るようにする
擬似コードを示すものである。
ために新コマンドとサブルーチンが定義される。新コマ
ンドは次のものを含む。 - mkacct 一つの新しいアカウンティンググループをつくる。 - rmacct すでに存在する一つのアカウンティンググループを削除
する。 - chacct 一つのアカウンティンググループの1以上の属性を変更
する。 - lsacct 一つのアカウンティンググループの1以上の属性を照会
する。 それら新サブルーチンは次のものを含む。 - setacctdb アカウンティンググループオブジェクトを含むデータベ
ースを開放する。 - getacctattr 一つのアカウンティンググループの属性の値を照会す
る。 - setacctattr 一つのアカウンティンググループの属性の値を変更す
る。 - endacctdb 一つのアカウンティンググループオブジェクトを含むデ
ータベースを閉じる。 - nextacct 線形検索において次のアカウンティンググループの名を
もどす。 テーブル1は上記コマンドとサブルーチンをどのように
して実行するかを当業者が知ることが出来るようにする
擬似コードを示すものである。
【0028】
【表1】
【0029】
【表2】
【0030】
【表3】
【0031】〔監査〕監査は各ユーザにより使用された
資源を記録するアカウンティングサブシステムである。
標準UNIXシステムVアカウンティングサブシステム
は図4に示すように次のごとくに変更される。アカウン
ティンググループ情報がプロセスブロック70に加えら
れ、割当と資源アカウントが夫々のプロセスについて行
われる。これを行うためにアカウンティンググループ識
別子が単位プロセスユーザブロック内に論理的に含まれ
るクリデンシャルデータ構造に付加される。このフィー
ルドの名前はcr_acctidであり、型は uid_t である。
これは同様にテーブル3に示される。
資源を記録するアカウンティングサブシステムである。
標準UNIXシステムVアカウンティングサブシステム
は図4に示すように次のごとくに変更される。アカウン
ティンググループ情報がプロセスブロック70に加えら
れ、割当と資源アカウントが夫々のプロセスについて行
われる。これを行うためにアカウンティンググループ識
別子が単位プロセスユーザブロック内に論理的に含まれ
るクリデンシャルデータ構造に付加される。このフィー
ルドの名前はcr_acctidであり、型は uid_t である。
これは同様にテーブル3に示される。
【0032】更に、システムコールが付加されたり変更
されたりしてこの識別子がブロック72で照会されある
いはセットされる。この実施例ではAIXv3システム
コールsetuidx() とgetuidx() が変更されてアカウンテ
ィンググループ識別子がセットされ、そして夫々それら
現存するコールに照会されうるようにしている。これら
のコールはどのuseridを get/set するかを特定するた
めのパラメータとしてマニフェストコンスタント(mani
fest constant )をとる。この付加/変更は新しいマニ
フェストコンスタント、すなわち“id_acct”を sys/
id.hファイルに付加することを含み、これがそれらコー
ルにおいて従来のプログラミング技術を用いてアカウン
ティングIDを特定するために用いられる。
されたりしてこの識別子がブロック72で照会されある
いはセットされる。この実施例ではAIXv3システム
コールsetuidx() とgetuidx() が変更されてアカウンテ
ィンググループ識別子がセットされ、そして夫々それら
現存するコールに照会されうるようにしている。これら
のコールはどのuseridを get/set するかを特定するた
めのパラメータとしてマニフェストコンスタント(mani
fest constant )をとる。この付加/変更は新しいマニ
フェストコンスタント、すなわち“id_acct”を sys/
id.hファイルに付加することを含み、これがそれらコー
ルにおいて従来のプログラミング技術を用いてアカウン
ティングIDを特定するために用いられる。
【0033】最後にユーザ例示コマンドがブロック74
で変更されてユーザが新しいセッションを(login, rlo
gin, rsh, ftp,等を介して)開始するとき、この情報を
正しくセットする。これはアカウンティンググループデ
ータベースを照会してsetuidx() システムコールで適正
なアカウンティンググループをセットするためにサブル
ーチンsetpcred()を変更することで行われる。setpcred
()はそれがgetuserattr() ルーチンを用いてlogin でユ
ーザ用のデフォールトアカウント用ユーザデータベース
を照会するように変更される。次にsetpcred()はこの値
をsetuidx (id_acc,値)を用いてプロセスクリデンシ
ャルにセットする。セッションreset (sv, setacct )
でこのsetpcred()ルーチンは要求され(setacct )ると
きに正しくこの属性を変更してそれをそのままリセット
する(sv)。ユーザ例示コマンドはすべてこのサブルー
チンを用いてユーザのクリデンシャルをつくるので、ア
カウンティンググループ識別子は常に各プロセスについ
て正しくつくられることになる。
で変更されてユーザが新しいセッションを(login, rlo
gin, rsh, ftp,等を介して)開始するとき、この情報を
正しくセットする。これはアカウンティンググループデ
ータベースを照会してsetuidx() システムコールで適正
なアカウンティンググループをセットするためにサブル
ーチンsetpcred()を変更することで行われる。setpcred
()はそれがgetuserattr() ルーチンを用いてlogin でユ
ーザ用のデフォールトアカウント用ユーザデータベース
を照会するように変更される。次にsetpcred()はこの値
をsetuidx (id_acc,値)を用いてプロセスクリデンシ
ャルにセットする。セッションreset (sv, setacct )
でこのsetpcred()ルーチンは要求され(setacct )ると
きに正しくこの属性を変更してそれをそのままリセット
する(sv)。ユーザ例示コマンドはすべてこのサブルー
チンを用いてユーザのクリデンシャルをつくるので、ア
カウンティンググループ識別子は常に各プロセスについ
て正しくつくられることになる。
【0034】テーブル2は上記コマンドとサブルーチン
をどのようにして行うかを当業者に明らかにするための
擬似コードを示すものである。
をどのようにして行うかを当業者に明らかにするための
擬似コードを示すものである。
【0035】
【表4】
【0036】
【表5】
【0037】ユーザにとって便利な特徴として、setacc
t() コマンドが付加されており、これはユーザが一つの
セッションの途中でアカウンティンググループをリセッ
トしうるようにするものである。これにより、ユーザ
は、資源の利用がユーザがワーキングを行うプロジェク
トに対し常に変えられるようにアカウントを変えること
が出来る。
t() コマンドが付加されており、これはユーザが一つの
セッションの途中でアカウンティンググループをリセッ
トしうるようにするものである。これにより、ユーザ
は、資源の利用がユーザがワーキングを行うプロジェク
トに対し常に変えられるようにアカウントを変えること
が出来る。
【0038】〔アクセス制御〕アクセス制御は指定され
た割当にもとづく資源へのアクセスを許可し、あるいは
拒否する割当サブシステムにより行われる。従来のUN
IXディスク割当サブシステムは“UNIX System manage
r's Manual Section 4 - Disk Quatas in a UNIX Envir
onment”(USENIX Association UNIX マニュアルセット
の一部)に示されるように次のごとくに動作する。この
システムでの各ユーザIDについての割当を含むファイ
ルパーファイルシステム(file per filesystem ,割当
(quota)と呼ぶ)がある。このファイルは各ユーザに
ついての現在の割振りも含んでいる。ブート時に、この
ファイルはこのファイルシステムと手動的に同期化され
る(基本的には割振量はそのファイルシステム内の各イ
ノードを読取り、ユーザにより使用されるすべてのディ
スクスペースを累積することによりリセットされる)。
た割当にもとづく資源へのアクセスを許可し、あるいは
拒否する割当サブシステムにより行われる。従来のUN
IXディスク割当サブシステムは“UNIX System manage
r's Manual Section 4 - Disk Quatas in a UNIX Envir
onment”(USENIX Association UNIX マニュアルセット
の一部)に示されるように次のごとくに動作する。この
システムでの各ユーザIDについての割当を含むファイ
ルパーファイルシステム(file per filesystem ,割当
(quota)と呼ぶ)がある。このファイルは各ユーザに
ついての現在の割振りも含んでいる。ブート時に、この
ファイルはこのファイルシステムと手動的に同期化され
る(基本的には割振量はそのファイルシステム内の各イ
ノードを読取り、ユーザにより使用されるすべてのディ
スクスペースを累積することによりリセットされる)。
【0039】このファイルは次にカーネルに「送られ
(fed )」、そしてこのカーネルがこの情報を用いて各
ユーザIDについてのカーネル内にディスク割当制御ブ
ロックをセットアップする。その後、ディスクスペース
が割振られあるいはフリーになると、この割当サブシス
テムにそれが知らされ、そのユーザ用の現在の割振が調
整される。ユーザが割当超過であれば(一つの割振り要
求について)、その要求は否定される(この割当実行も
ソフトリミット(soft limit)を含み、それらリミット
はウォーニングを出すために用いられるがここでは重要
でない)。
(fed )」、そしてこのカーネルがこの情報を用いて各
ユーザIDについてのカーネル内にディスク割当制御ブ
ロックをセットアップする。その後、ディスクスペース
が割振られあるいはフリーになると、この割当サブシス
テムにそれが知らされ、そのユーザ用の現在の割振が調
整される。ユーザが割当超過であれば(一つの割振り要
求について)、その要求は否定される(この割当実行も
ソフトリミット(soft limit)を含み、それらリミット
はウォーニングを出すために用いられるがここでは重要
でない)。
【0040】上記のサブシステムは図5に示すように変
更される。それを次に述べる。本発明は資源アカウンテ
ィンググループをサポートするためにこの割当サブシス
テムに対し、三通りの変更を加える。まず、割当ファイ
ル内のIDをアカウンティンググループIDとする。こ
れにはコマンド(edquota )の変更が必要である。これ
はこのファイルをユーザのIDと名前の代りにアカウン
ティンググループのID及び名前を用いるように変更す
ることである。アカウンティンググループ識別子がブロ
ック80で割当及びアカウンティングレコードに付加さ
れてこれらの機能が適正に行われるようにする。
更される。それを次に述べる。本発明は資源アカウンテ
ィンググループをサポートするためにこの割当サブシス
テムに対し、三通りの変更を加える。まず、割当ファイ
ル内のIDをアカウンティンググループIDとする。こ
れにはコマンド(edquota )の変更が必要である。これ
はこのファイルをユーザのIDと名前の代りにアカウン
ティンググループのID及び名前を用いるように変更す
ることである。アカウンティンググループ識別子がブロ
ック80で割当及びアカウンティングレコードに付加さ
れてこれらの機能が適正に行われるようにする。
【0041】第二に、ブート時にこの割当サブシステム
はディスク割当制御ブロックをつくるためにブロック8
2でユーザIDの代りにイノード内のアカウンティング
グループIDを参照しなければならない。acct構造にフ
ィールドac_acct(型 uid_t )が付加される。このフ
ィールドにはカーネル内のacctexit()サブルーチンが充
填されるのであり、これはアカウンティングレコード内
の他の単位プロセス情報に入る。オンディスクイノード
構造(dinode)にはフィールドdi_acct(型 uid_t )
が付加される。この情報を読出すためにstat構造にフィ
ールドst_acct(型 uid_t )が付加され、stat()シス
テムコールがこのフィールドを埋めるために変更され
る。システムコールchacct()が付加されてこのフィール
ドが適正にセットされるようにする。テーブル3は現存
するUNIXデータ構造に対してなされるこれらの変更
を示すものである。
はディスク割当制御ブロックをつくるためにブロック8
2でユーザIDの代りにイノード内のアカウンティング
グループIDを参照しなければならない。acct構造にフ
ィールドac_acct(型 uid_t )が付加される。このフ
ィールドにはカーネル内のacctexit()サブルーチンが充
填されるのであり、これはアカウンティングレコード内
の他の単位プロセス情報に入る。オンディスクイノード
構造(dinode)にはフィールドdi_acct(型 uid_t )
が付加される。この情報を読出すためにstat構造にフィ
ールドst_acct(型 uid_t )が付加され、stat()シス
テムコールがこのフィールドを埋めるために変更され
る。システムコールchacct()が付加されてこのフィール
ドが適正にセットされるようにする。テーブル3は現存
するUNIXデータ構造に対してなされるこれらの変更
を示すものである。
【0042】
【表6】
【0043】第三に、ブロックを割振あるいは割振解除
するとき、この割当サブシステムはそれらブロック84
において要求プロセスのアカウンティンググループID
に課さねばならない。これはクレジット/請求アカウン
トの維持のための従来のプログラミング技術を用いて達
成される。しかしながら請求あるいはクレジットについ
てユーザのIDではなくグループのIDを用いる点が異
なる。
するとき、この割当サブシステムはそれらブロック84
において要求プロセスのアカウンティンググループID
に課さねばならない。これはクレジット/請求アカウン
トの維持のための従来のプログラミング技術を用いて達
成される。しかしながら請求あるいはクレジットについ
てユーザのIDではなくグループのIDを用いる点が異
なる。
【0044】プールアカウントの実行は次の通りであ
る。まず、そのプール(それにすべてのユーザが属す
る)についての区別されたアカウントID(4G=2**
32)がある。第二に、すべての割当ブロックはこのI
Dについて現存し、そのプールからどれくらいの資源利
用が割振られているかを示すプールフィールドを含む。
る。まず、そのプール(それにすべてのユーザが属す
る)についての区別されたアカウントID(4G=2**
32)がある。第二に、すべての割当ブロックはこのI
Dについて現存し、そのプールからどれくらいの資源利
用が割振られているかを示すプールフィールドを含む。
【0045】資源アクセス要求がなされると、そのプロ
セスのアカウンティンググループ割振りから可能であれ
ばそれは許可される。それが可能でなければ、そしてそ
のプールが使用可能な割振を有していれば、その要求は
受け入れられ、プールの割振り(その割当制御ブロック
での)は請求され、そしてそのプロセスのアカウンティ
ンググループについての割当制御ブロック内でのプール
割当が増分される。このプールが使用可能な資源を有さ
ないならその要求は拒否される。
セスのアカウンティンググループ割振りから可能であれ
ばそれは許可される。それが可能でなければ、そしてそ
のプールが使用可能な割振を有していれば、その要求は
受け入れられ、プールの割振り(その割当制御ブロック
での)は請求され、そしてそのプロセスのアカウンティ
ンググループについての割当制御ブロック内でのプール
割当が増分される。このプールが使用可能な資源を有さ
ないならその要求は拒否される。
【0046】資源の割振りが解除されるときには、それ
ら資源が指定されたIDについての割当制御ブロックが
プール割振を有していれば、この値が増分され、それら
資源はそのプールにクレジットされる(そのプールにつ
いてこの割当制御ブロックはアカウンティンググループ
IDについてのそれらの代りに用いられる)。そうでな
い場合にはノーマルチェックが用いられる。上記のプー
リング機能についての擬似コードをテーブル4に示す。
ら資源が指定されたIDについての割当制御ブロックが
プール割振を有していれば、この値が増分され、それら
資源はそのプールにクレジットされる(そのプールにつ
いてこの割当制御ブロックはアカウンティンググループ
IDについてのそれらの代りに用いられる)。そうでな
い場合にはノーマルチェックが用いられる。上記のプー
リング機能についての擬似コードをテーブル4に示す。
【0047】
【表7】
【0048】
【発明の効果】要約すると、上記のシステムはユーザI
Dを用いる標準BSD割当法から上位方向に互換性をも
ち、そしてシステム管理者にユーザまたはアカウンティ
ンググループまたはそれらの両方に責任を負わせるにつ
いての融通性を与えるものである。またこのシステムは
システム個別のアクセス制御とは別である。そしてこの
システムは資源の区画を最少にする。
Dを用いる標準BSD割当法から上位方向に互換性をも
ち、そしてシステム管理者にユーザまたはアカウンティ
ンググループまたはそれらの両方に責任を負わせるにつ
いての融通性を与えるものである。またこのシステムは
システム個別のアクセス制御とは別である。そしてこの
システムは資源の区画を最少にする。
【0049】非UNIXオペレーティングシステムでの
資源は同様にUNIX互換性資源について上述したもの
と同様の技術を用いてそのような資源を割振り、そして
維持することを可能にするものである。
資源は同様にUNIX互換性資源について上述したもの
と同様の技術を用いてそのような資源を割振り、そして
維持することを可能にするものである。
【図1】データ処理システムの構成及び資源を示す図。
【図2】データ処理システムのオペレーティングシステ
ムにおけるクリデンシャルの変更のためのステップを示
す図。
ムにおけるクリデンシャルの変更のためのステップを示
す図。
【図3】システム管理オブジェクトについてのファイル
構造を示す図。
構造を示す図。
【図4】データ処理システムのオペレーティングシステ
ムにおける監査変更のためのステップを示す図。
ムにおける監査変更のためのステップを示す図。
【図5】データ処理システムのオペレーティングシステ
ムにおけるアクセス制御の変更のためのステップを示す
図。
ムにおけるアクセス制御の変更のためのステップを示す
図。
10 中央処理ユニット 14 ランダムアクセスメモリ(RAM) 16 読取専用メモリ(ROM) 18 入力/出力(I/O)アダプタ 20 直接アクセス記憶装置(DASD) 22 ユーザインターフェースアダプタ 24 キーボード 26 マウス 28 スピーカ 32 トラックボール 34 通信アダプタ 36 ディスプレイアダプタ 38 ディスプレイ
フロントページの続き (72)発明者 ダグラス、ハワード、スティーブズ アメリカ合衆国テキサス州、オースチ ン、ナンバー、3031、モラド、サーク ル、10610 (72)発明者 ケンドル、チャールズ、ウィット アメリカ合衆国テキサス州、オースチ ン、ジェネイブ、レーン、14302 (56)参考文献 特開 平3−252824(JP,A) 特開 昭63−70342(JP,A)
Claims (4)
- 【請求項1】ユーザ識別子及びプロセス並びに資源を有
するデータ処理システムにおける資源割当て制御方法で
あって、 システム資源を1つのプールアカウント及び複数のグル
ープアカウントに分類するステップと、 前記プールアカウント及び前記グループアカウントの各
々のための資源割当てを含む資源制御情報を示す、資源
割当てプールアカウント及び資源割当てグループアカウ
ントを確立するステップと、 1つ以上の前記ユーザ識別子を前記資源割当てグループ
アカウントに割当てるステップと、 ユーザプロセス資源要求が、前記ユーザ識別子の割当て
られた資源割当てグループアカウントにより利用可能な
資源を超過しているか否かをテストするステップと、 前記要求が前記グループアカウントにより利用可能な資
源を超過していない場合には、前記要求を許可し、許可
した分だけ利用可能なグループ資源を減少させるステッ
プと、 前記要求が前記グループアカウントにより利用可能な資
源を超過している場合には、前記要求が前記資源割当て
プールアカウントにより利用可能な資源を超過している
か否かをテストするステップと、 前記要求が前記プールアカウントにより利用可能な資源
を超過している場合には、前記要求を拒否するステップ
と、 前記要求が前記プールアカウントにより利用可能な資源
を超過していない場合には、前記要求を許可し、許可し
た分だけ利用可能なプール資源を減少させるステップと
を含む資源割当て制御方法。 - 【請求項2】前記アカウントがシステム資源アカウンテ
ィング情報を維持するために用いられる、請求項1に記
載の方法。 - 【請求項3】ユーザ識別子及びプロセス並びに資源を有
するデータ処理システムにおける資源割当て制御装置で
あって、 システム資源を1つのプールアカウント及び複数のグル
ープアカウントに分類する手段と、 前記プールアカウント及び前記グループアカウントの各
々のための資源割当てを含む資源制御情報を示す、資源
割当てプールアカウント及び資源割当てグループアカウ
ントを確立する手段と、 前記資源割当てアカウントを記憶する記憶手段と、 前記資源割当てアカウントの各々に0または1以上のユ
ーザ識別子を割当てる手段と、 ユーザプロセス資源要求が前記ユーザ識別子の割当てら
れているグループアカウントにより利用可能な資源を超
過しているか否かをテストし、グループ・アカウント資
源が利用可能である場合には、前記要求を許可し、且つ
利用可能な資源を減少させ、 グループアカウント資源が利用可能でない場合には、前
記プールアカウントにより利用可能な資源を超過してい
るか否かをテストし、前記プールアカウントに利用可能
な資源を超過している場合には、前記要求を拒否し、ま
たは、 前記プールアカウントに利用可能な資源を超過していな
い場合には、前記要求を許可し、利用可能なプール資源
を減少させる手段とを含む、資源割当て制御装置。 - 【請求項4】前記アカウントがシステム資源アカウンテ
ィング情報を維持するために用いられる、請求項3に記
載の資源割当て制御装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US810986 | 1985-12-19 | ||
US07/810,986 US5421011A (en) | 1991-12-20 | 1991-12-20 | Method and system for access and accounting control in a data processing system by using a single resource account for a user or a group of users |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05274165A JPH05274165A (ja) | 1993-10-22 |
JP2516304B2 true JP2516304B2 (ja) | 1996-07-24 |
Family
ID=25205228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4291695A Expired - Lifetime JP2516304B2 (ja) | 1991-12-20 | 1992-10-29 | デ―タ処理システムにおける資源制御方法及び装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5421011A (ja) |
EP (1) | EP0549208A2 (ja) |
JP (1) | JP2516304B2 (ja) |
Families Citing this family (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9402935D0 (en) * | 1994-02-16 | 1994-04-06 | British Telecomm | A method for controlling access to a database |
EP0725340A3 (en) * | 1995-02-03 | 1996-10-02 | Ibm | Apparatus and method for managing the workload of a distributed data processing system by limiting the consumption of processing capacity |
JPH08328880A (ja) * | 1995-05-31 | 1996-12-13 | Mitsubishi Electric Corp | 複数のアプリケーションプログラムを同時に実行できるオペレーティングシステムにおける計算機運転管理システム |
US5742759A (en) * | 1995-08-18 | 1998-04-21 | Sun Microsystems, Inc. | Method and system for facilitating access control to system resources in a distributed computer system |
US5899987A (en) * | 1995-10-03 | 1999-05-04 | Memco Software Ltd. | Apparatus for and method of providing user exits on an operating system platform |
US6282561B1 (en) * | 1995-12-07 | 2001-08-28 | Microsoft Corporation | Method and system for resource management with independent real-time applications on a common set of machines |
US5870550A (en) * | 1996-02-26 | 1999-02-09 | Network Engineering Software | Web server employing multi-homed, moldular framework |
US8117298B1 (en) | 1996-02-26 | 2012-02-14 | Graphon Corporation | Multi-homed web server |
US6052723A (en) * | 1996-07-25 | 2000-04-18 | Stockmaster.Com, Inc. | Method for aggregate control on an electronic network |
US5940809A (en) * | 1996-08-19 | 1999-08-17 | Merrill Lynch & Co. | Securities brokerage-asset management system |
US6601083B1 (en) * | 1996-08-29 | 2003-07-29 | Frederick John Reznak | Multitasking data processing system and method of controlling allocation of a shared resource |
US5819047A (en) * | 1996-08-30 | 1998-10-06 | At&T Corp | Method for controlling resource usage by network identities |
US5778320A (en) * | 1996-10-04 | 1998-07-07 | Motorola, Inc. | Method for allocating communication resources among groups of communication units |
DE19734182C2 (de) * | 1996-12-16 | 2001-01-25 | Fujitsu Ltd | Computersystem zur Ermittlung der Berechnungsinformation zur Gebührenanzeige von Programmen |
JP3648892B2 (ja) * | 1996-12-16 | 2005-05-18 | 富士通株式会社 | 計算機システム |
US5748890A (en) * | 1996-12-23 | 1998-05-05 | U S West, Inc. | Method and system for authenticating and auditing access by a user to non-natively secured applications |
US6393455B1 (en) * | 1997-03-28 | 2002-05-21 | International Business Machines Corp. | Workload management method to enhance shared resource access in a multisystem environment |
US6032232A (en) * | 1997-05-29 | 2000-02-29 | 3Com Corporation | Multiported memory access system with arbitration and a source burst limiter for blocking a memory access request |
US6065054A (en) * | 1997-07-07 | 2000-05-16 | International Business Machines Corporation | Managing a dynamically-created user account in a client following authentication from a non-native server domain |
US5956734A (en) * | 1997-07-11 | 1999-09-21 | International Business Machines Corporation | Parallel file system with a quota check utility |
US5946686A (en) * | 1997-07-11 | 1999-08-31 | International Business Machines Corporation | Parallel file system and method with quota allocation |
US6092163A (en) | 1998-12-04 | 2000-07-18 | W. Quinn Associates, Inc. | Pageable filter driver for prospective implementation of disk space quotas |
US6047377A (en) * | 1997-12-11 | 2000-04-04 | Sun Microsystems, Inc. | Typed, parameterized, and extensible access control permissions |
DE19802364A1 (de) * | 1998-01-22 | 1999-07-29 | Siemens Ag | Vorrichtung und Verfahren zur Steuerung von Prozessen auf einem Computersystem |
EP0949782B1 (en) | 1998-03-13 | 2015-06-17 | Canon Kabushiki Kaisha | Information processing apparatus and method |
US6154751A (en) * | 1998-05-14 | 2000-11-28 | International Business Machines Corporation | Method for executing a user-requested CGI program in a new authentication context while protecting operation of a default web server program |
US6338064B1 (en) | 1998-05-14 | 2002-01-08 | International Business Machines Corporation | Method for enabling a web server running a “closed” native operating system to impersonate a user of a web client to obtain a protected file |
US6618743B1 (en) * | 1998-10-09 | 2003-09-09 | Oneworld Internetworking, Inc. | Method and system for providing discrete user cells in a UNIX-based environment |
US6910210B1 (en) * | 1998-11-24 | 2005-06-21 | Microsoft Corp. | System and method for terminating applications |
US7451484B1 (en) | 1999-05-27 | 2008-11-11 | International Business Machines Corporation | Method for enabling a program written in untrusted code to interact with a security subsystem of a hosting operating system |
JP3740320B2 (ja) * | 1999-05-31 | 2006-02-01 | キヤノン株式会社 | デバイス検索システム及びデバイス検索方法 |
US6952741B1 (en) * | 1999-06-30 | 2005-10-04 | Computer Sciences Corporation | System and method for synchronizing copies of data in a computer system |
US6850953B1 (en) * | 1999-08-23 | 2005-02-01 | Sun Microsystems, Inc. | Creating multiple sets of data by spawning a secondary virtual machine |
US7571171B1 (en) | 1999-10-29 | 2009-08-04 | Computer Sciences Corporation | Smart trigger for use in processing business transactions |
US7526487B1 (en) * | 1999-10-29 | 2009-04-28 | Computer Sciences Corporation | Business transaction processing systems and methods |
US7363264B1 (en) | 1999-10-29 | 2008-04-22 | Computer Sciences Corporation | Processing business transactions using dynamic database packageset switching |
US7693844B1 (en) * | 1999-10-29 | 2010-04-06 | Computer Sciences Corporation | Configuring processing relationships among entities of an organization |
US6564247B1 (en) | 1999-11-18 | 2003-05-13 | International Business Machines Corporation | System and method for registering user identifiers |
US7058947B1 (en) | 2000-05-02 | 2006-06-06 | Microsoft Corporation | Resource manager architecture utilizing a policy manager |
US7284244B1 (en) | 2000-05-02 | 2007-10-16 | Microsoft Corporation | Resource manager architecture with dynamic resource allocation among multiple configurations |
US6799208B1 (en) * | 2000-05-02 | 2004-09-28 | Microsoft Corporation | Resource manager architecture |
US7111297B1 (en) | 2000-05-02 | 2006-09-19 | Microsoft Corporation | Methods and architectures for resource management |
US7137119B1 (en) | 2000-05-02 | 2006-11-14 | Microsoft Corporation | Resource manager architecture with resource allocation utilizing priority-based preemption |
US20020147739A1 (en) * | 2001-04-10 | 2002-10-10 | Netvoyage Corporation | Methods and systems for tracking storage resources associated with a document distribution system |
US7421411B2 (en) * | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
US7487233B2 (en) * | 2001-12-05 | 2009-02-03 | Canon Kabushiki Kaisha | Device access based on centralized authentication |
JP4054572B2 (ja) | 2001-12-17 | 2008-02-27 | キヤノン株式会社 | アプリケーション実行システム |
GB2385163A (en) * | 2002-02-12 | 2003-08-13 | Inventec Corp | Method of sharing expenditure of distribution system |
US7007197B2 (en) * | 2002-05-31 | 2006-02-28 | Microsoft Corporation | Virtual logging system and method |
US7484216B2 (en) * | 2002-06-18 | 2009-01-27 | Microsoft Corporation | System and method for decoupling space reservation in transactional logging systems |
US7689485B2 (en) * | 2002-08-10 | 2010-03-30 | Cisco Technology, Inc. | Generating accounting data based on access control list entries |
US7533137B1 (en) * | 2002-08-30 | 2009-05-12 | Symantec Operating Corporation | System and method for grouping files |
US7620950B2 (en) * | 2003-07-01 | 2009-11-17 | International Business Machines Corporation | System and method to monitor amount of usage of applications in logical partitions |
US8296771B2 (en) * | 2003-08-18 | 2012-10-23 | Cray Inc. | System and method for mapping between resource consumers and resource providers in a computing system |
US20050108063A1 (en) * | 2003-11-05 | 2005-05-19 | Madill Robert P.Jr. | Systems and methods for assessing the potential for fraud in business transactions |
US7665063B1 (en) | 2004-05-26 | 2010-02-16 | Pegasystems, Inc. | Integration of declarative rule-based processing with procedural programming |
US7702779B1 (en) * | 2004-06-30 | 2010-04-20 | Symantec Operating Corporation | System and method for metering of application services in utility computing environments |
US20060059021A1 (en) * | 2004-09-15 | 2006-03-16 | Jim Yulman | Independent adjuster advisor |
US8335704B2 (en) * | 2005-01-28 | 2012-12-18 | Pegasystems Inc. | Methods and apparatus for work management and routing |
US20070150385A1 (en) * | 2005-09-13 | 2007-06-28 | Ode Frederick J | Accountant audit/review console |
US8201214B1 (en) | 2005-09-30 | 2012-06-12 | Apple Inc. | Ad-hoc user account creation |
US8924335B1 (en) | 2006-03-30 | 2014-12-30 | Pegasystems Inc. | Rule-based user interface conformance methods |
US8250525B2 (en) | 2007-03-02 | 2012-08-21 | Pegasystems Inc. | Proactive performance management for multi-user enterprise software systems |
US8181230B2 (en) * | 2008-06-30 | 2012-05-15 | International Business Machines Corporation | System and method for adaptive approximating of a user for role authorization in a hierarchical inter-organizational model |
US20100094861A1 (en) * | 2008-10-01 | 2010-04-15 | Henrique Andrade | System and method for application session tracking |
US9465663B2 (en) * | 2008-10-31 | 2016-10-11 | Synopsys, Inc. | Allocating resources in a compute farm to increase resource utilization by using a priority-based allocation layer to allocate job slots to projects |
US8843435B1 (en) | 2009-03-12 | 2014-09-23 | Pegasystems Inc. | Techniques for dynamic data processing |
US8468492B1 (en) | 2009-03-30 | 2013-06-18 | Pegasystems, Inc. | System and method for creation and modification of software applications |
US8880487B1 (en) | 2011-02-18 | 2014-11-04 | Pegasystems Inc. | Systems and methods for distributed rules processing |
US9195936B1 (en) | 2011-12-30 | 2015-11-24 | Pegasystems Inc. | System and method for updating or modifying an application without manual coding |
CN104750558B (zh) * | 2013-12-31 | 2018-07-03 | 伊姆西公司 | 在分层配额系统中管理资源分配的方法和装置 |
US10069914B1 (en) * | 2014-04-21 | 2018-09-04 | David Lane Smith | Distributed storage system for long term data storage |
US10469396B2 (en) | 2014-10-10 | 2019-11-05 | Pegasystems, Inc. | Event processing with enhanced throughput |
US10698599B2 (en) | 2016-06-03 | 2020-06-30 | Pegasystems, Inc. | Connecting graphical shapes using gestures |
US10698647B2 (en) | 2016-07-11 | 2020-06-30 | Pegasystems Inc. | Selective sharing for collaborative application usage |
US11048488B2 (en) | 2018-08-14 | 2021-06-29 | Pegasystems, Inc. | Software code optimizer and method |
US11567945B1 (en) | 2020-08-27 | 2023-01-31 | Pegasystems Inc. | Customized digital content generation systems and methods |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2253432A5 (ja) * | 1973-11-30 | 1975-06-27 | Honeywell Bull Soc Ind | |
US4481583A (en) * | 1981-10-30 | 1984-11-06 | At&T Bell Laboratories | Method for distributing resources in a time-shared system |
JPS6024647A (ja) * | 1983-07-20 | 1985-02-07 | Hitachi Ltd | システムの自律化資源管理方式 |
JPS6370342A (ja) * | 1986-09-11 | 1988-03-30 | Nec Corp | 資源管理方式 |
US5018060A (en) * | 1989-01-26 | 1991-05-21 | Ibm Corporation | Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters |
JPH03252824A (ja) * | 1990-03-02 | 1991-11-12 | Nec Corp | パッチjob実行多重度制御方式 |
JP3169597B2 (ja) * | 1990-05-16 | 2001-05-28 | エヌイーシーソフト株式会社 | マルチタスク実行時間アカウント方法とその機構 |
US5210872A (en) * | 1991-06-28 | 1993-05-11 | Texas Instruments Inc. | Critical task scheduling for real-time systems |
-
1991
- 1991-12-20 US US07/810,986 patent/US5421011A/en not_active Expired - Fee Related
-
1992
- 1992-10-29 JP JP4291695A patent/JP2516304B2/ja not_active Expired - Lifetime
- 1992-12-10 EP EP92311301A patent/EP0549208A2/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
EP0549208A2 (en) | 1993-06-30 |
EP0549208A3 (ja) | 1994-05-04 |
US5421011A (en) | 1995-05-30 |
JPH05274165A (ja) | 1993-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2516304B2 (ja) | デ―タ処理システムにおける資源制御方法及び装置 | |
US11960937B2 (en) | System and method for an optimizing reservation in time of compute resources based on prioritization function and reservation policy parameter | |
US6859926B1 (en) | Apparatus and method for workload management using class shares and tiers | |
CN108701059B (zh) | 多租户资源分配方法和系统 | |
US11275609B2 (en) | Job distribution within a grid environment | |
US7784053B2 (en) | Management of virtual machines to utilize shared resources | |
US9886322B2 (en) | System and method for providing advanced reservations in a compute environment | |
US7430741B2 (en) | Application-aware system that dynamically partitions and allocates resources on demand | |
JP4593078B2 (ja) | 異なる計算機環境におけるジョブ実行方法及びそのプログラム | |
US20210203723A1 (en) | Data Storage Method and Apparatus | |
JP3074638B2 (ja) | アクセス制御方法 | |
JP5967672B2 (ja) | データベース管理システム、計算機、データベース管理方法 | |
US5115505A (en) | Controlled dynamic load balancing for a multiprocessor system | |
US7571438B2 (en) | Method and system for resource management with independent real-time applications on a common set of machines | |
EP0972240B1 (en) | An agent-implemented locking mechanism | |
US7325017B2 (en) | Method of implementation of data storage quota | |
EP2357561A1 (en) | System and method for providing advanced reservations in a compute environment | |
US20210089534A1 (en) | System and method for dynamically reallocating resources among multiple task groups in a database system | |
US7958097B1 (en) | Method and system for implementation of data storage quota | |
Wu et al. | Hierarchical disk sharing for multimedia systems | |
Schnepf et al. | Dynamic integration and management of opportunistic resources for HEP | |
US20050216908A1 (en) | Assigning computational processes in a computer system to workload management classes | |
CN116095149B (zh) | 云环境下密码服务应用配额的方法、系统、介质及设备 | |
CN115600185B (zh) | 一种云原生平台的资源操作方法和系统 | |
CN115981817A (zh) | 一种面向htap的任务资源调度方法及其系统 |