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
Application number
JP4291695A
Other languages
English (en)
Other versions
JPH05274165A (ja
Inventor
ニコラス、アンソニー、カミロン
ダグラス、ハワード、スティーブズ
ケンドル、チャールズ、ウィット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05274165A publication Critical patent/JPH05274165A/ja
Application granted granted Critical
Publication of JP2516304B2 publication Critical patent/JP2516304B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/504Resource capping
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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社により開発されたものを含むもの
が開発されている。
【0003】資源アクセス及びアカウンティング制御は
システム管理者がUNIX互換性オペレーティングシス
テムでの資源アクセスを許可し、資源利用の監査を行う
ことが出来るようにする。資源は物理的なもの、あるい
は論理的なものでありうる。物理的な資源としてはディ
スクスペース、通信ライン及び処理時間がある。論理的
資源には通信バッファ、ファイルシステムバッファ、プ
ロセス及びページスペースが含まれる。すべての論理的
資源は究極的には物理的資源でつくられる。
【0004】多くのシステムにおいては、資源利用を制
御しあるいは監査することが重要である。システム管理
者がシステムの使用の可能性を保証したいとき資源利用
の制御が必要である。例えば、原子炉での炉のパラメー
タを制御するプロセスのような臨界的なプロセスは或る
時点で走行しなければならず、そうでないと或る安全性
のルールが侵かされることになる。このシステムで走行
する微妙なプロセスはそのシステム内のプロセステーブ
ルスロットをすべて使いつくしてその臨界的プロセスの
開始を妨げることがありうる。或るエンティティ(プロ
セス/ユーザ/プロジェクト)により消費されうる資源
の量を制限する制御を一般に割当(quota )と呼ぶ。
【0005】通常、UNIXシステムは資源の利用を制
御するために一つの割当システムを、もしあったとして
もほとんど提示しない。UNIXのバークレーソフトウ
ェアディストリビューション(Berkeley Software Dist
ribution (BSD))バージョンはディスク割当を与え、こ
れら割当によりシステム管理者はディスクスペースを特
定のユーザに割振ることが出来る。BSD UNIXは
また一つのプロセスによる資源消費を制限する一つの方
法を処理する。これらの制御は処理時間、最大ファイル
サイズ、コアファイルサイズ、メモリ利用、プロセスス
タックサイズ及びプロセスデータセグメントサイズを制
限する。しかしながらこれら制御は本当の意味での割当
ではない。一般にユーザによりつくることの出来るプロ
セスの数に制限はないから、ユーザは多くのプロセスを
つくることによりそれら資源を無制限に消費することが
出来る。プロセスの数に制限があったとしてもそれは一
般に資源消費の制御には効果がない。UNIXはプロセ
ス型システムであり、ほとんどのタスクは別々のプロセ
スで行われ、それ故「多重タスク」を行うユーザは多く
の同時的プロセスを必要とする。これにより単位プロセ
スの制限が無効となる傾向がある。
【0006】システム管理者がそのシステムの使用を管
理したいときには資源の利用を監査する必要がある。例
えば、多くの組織は多くの異なる部門にサービスを行う
集中型のコンピュータを維持している。これらのコンピ
ュータはしばしばスーパーコンピュータのような特殊な
マシンである。それらコンピュータを購入し、保守し、
そして動作させるためのコストは個々の部門からその使
用に応じて回収される。コンピュータシステムにおける
資源の利用の監査を一般にアカウンティングと呼ぶ。
【0007】UNIXシステムはユーザ単位で資源利用
を追跡することが可能な完全なアカウンティングシステ
ムを含む。監査される資源は処理時間、入力/出力サブ
システム利用度、メモリ利用度、及びプリンタの利用度
を含む。
【0008】UNIX割当サブシステムとアカウンティ
ンサブシステムの共通の問題は割当と責任体制の単位が
ユーザであることである。これは、UNIXが開発され
た研究及び学術的環境を反映するものである。これらの
場合、人間はより個人ベースでワークを行い、それ故資
源制御がこの単位で行われることになることは当然であ
る。しかしながら、商業的及び産業的な組織は通常グル
ープまたはプロジェクト単位でワークを行うから、UN
IXはそれらには不向きである。
【0009】一般に割当システムはシステム資源を区画
する傾向があるという望ましくない特性を有する。例え
ば、一つのシステムに10000個のプロセステーブル
スロット(最大プロセス数を決定する)と100個の資
源アカウントがあるとすれば、各アカウントに100個
のプロセステーブルスロットを許可するのが一つの方法
である。しかしながら、ほとんどの資源アカウントは常
にすべて使用されるわけではないから、このシステムは
ピーク時を除き充分には利用されないことになる。シス
テム管理者は各アカウントに100個のプロセスを越え
るプロセスを許可することも出来るが、その場合には資
源が使用可能であることの有効な保証は得られない。
【0010】この問題に対する一つの解は、要求された
資源について競合がなければプロセスがそれらの割当を
越えることが出来るようにするが、競合が生じる場合に
はそのような資源を放棄することである。例えば一つの
プロセスは、通信バッファの利用度が50%未満である
限り、要求された通りの数の通信バッファを許可されう
る。この方法は二つの問題を有する。
【0011】上記二つの問題の内の第一のものは、ファ
イルシステムスペースのような永久的な資源に関連して
ワークしないことである。第二はUNIXシステム内の
資源を放棄する明確な方法がプロセスにないことである
(例えば通信バッファはそのプロセスの代りに要求され
るのであり、プロセスにより直接にではなく、そして任
意の時点で自由になりえない)。その結果、それら資源
はそのプロセスを終了しなければ再び得ることが出来な
い。
【0012】以上述べた設計は資源制御がグループ型ま
たは個人型のいずれでも行うことが出来るようにするこ
とにより上記問題を解決する。資源制御の単位はアカウ
ントであり、これは1以上のユーザを含むことが出来
る。更に、ユーザは1以上のアカウントを指定すること
が出来る。ユーザがこのシステムにログするとき、それ
らユーザは使用しようとする資源アカウントを選択する
か、あるいはそれらのデフォルトアカウントを使用す
る。ログイン後につくられるすべてのプロセスは、ユー
ザがそのセッションの中途でアカウントを変えない限り
このアカウントの識別子を含む。
【0013】システム管理者はユーザをアカウントに指
定し、そして各アカウントについて割当を許可する。一
つのアカウントに割当てられたユーザはそのアカウント
に与えられる資源を使用することが出来る。割当はアカ
ウント識別子が資源要求の許可を決定するためにユーザ
の識別子の代りに使用されることを除き、現在のUNI
Xシステムの実行においてそのまま管理される。例え
ば、ファイル制御ブロックはアカウント識別子を含むよ
うに変更され、このアカウントがそのファイルのディス
ク利用に対しチャージされる。
【0014】アカウンティングレコードのフォーマット
はそのプロセスについての資源アカウント識別子を含む
ように変更され、アカウントのユーティリティはこの識
別子を追跡し表示するように変更される。
【0015】上位方向互換性は二つの方法の内のいずれ
かにより与えられる。その第一において、システム管理
者は資源アカウントを全くつくらず、まったく指定しな
いようにすることが出来る。この場合、ユーザは単にそ
れらのユーザ識別子と同一である識別子を有する一つの
アカウントに属する。ログイン時に、ログインプログラ
ムが、アカウントがつくられていないことを検出し、そ
してプロセスアカウント識別子をその新しいログインユ
ーザの識別子にセットする。
【0016】第二においては、システム管理者は各ユー
ザについて個々の資源アカウントをつくり、そのアカウ
ント識別子をユーザの識別子にセットする。この方法は
現存する割当レコードを変更する必要がないので完全に
独立したグループアカウンティング法への無理のない転
換を可能にする。
【0017】この設計は区画の問題を次のようにして解
決する。「プール」アカウントとして知られる区別され
た資源アカウントがある。すべてのユーザは本来このプ
ールアカウントに属しており、そしてシステム管理者は
このアカウントに割当を指定出来る。一つのプロセスが
一つの資源を要求し、その資源についてそのプロセスの
現在のアカウントの割当が満杯になるとすれば、そのプ
ロセスはそのプールアカウントの割当に引き当てること
が出来る。各アカウントにより使用されるプール資源の
数のレコードが維持され、一つのプロセスが、そのアカ
ウントが現在のプール資源を有する一つの資源を解放す
るとき、そのプールにその資源が記入される。この方法
は区画の問題を部分的に解決するものであり、特にプロ
セスの部分集合のみが保証された資源の利用の可能性を
必要とする臨界的なプロセスであるようなシステムに有
効である。これらシステムにおいて、管理者は臨界的な
プロセスを走行させるために用いられるアカウントを必
要な資源に割当て、次に残りをプールアカウントに割当
てることになる。通常のプロセスはプールアカウントか
らの資源について競合し、臨界的プロセスは必要な資源
を保証される。
【0018】区画の問題はそれが依然として生じうるた
め部分的にのみ解決される。プロセスX,Y及びZのす
べてが300個の資源を有するシステムの資源Qの内の
100個を必要とするとすれば、システム管理者はそれ
らプロセスが同時に走行する場合にはそれら資源を区画
しなければならない。上記のプール法は管理者がプロセ
スを臨界と非臨界に分離しうるようにする。臨界プロセ
スにはそのすべての資源要件が割振られねばならない。
非臨界プロセスはこの要件を有さず、それ故プールを
「共用」することが出来る。非臨界プロセスが資源の拒
否により遅延され、あるいは障害となるとすれば、それ
は了承しうる。このように、臨界プロセスは資源を区画
することが出来るが非臨界プロセスはそれが出来ない。
【0019】
【発明が解決しようとする課題】この設計の考えられる
問題は、現存するグループ機構が同一の目的についてサ
ービスしたとき、新しいエンティティ、すなわち資源ア
カウントをつくるということである。しかしながらこれ
は真実ではない。UNIXにおいてグループは個別的ア
クセス制御に用いられる。一つのグループに一つのユー
ザを付加することは、そのユーザにそのグループ内の他
のユーザと同一のアクセス権を与えることである。しか
しながらこれは資源制御で与えられるものと同じポリシ
ーではない。資源制御はシステムの使用の可能性を問題
とし、個別アクセス制御はそのシステムに維持される情
報の完全性及び秘密性に関する。資源制御をグループで
行うには、これらポリシーがそのシステムに別々に強制
しえないようにする必要がある。また、グループ識別子
はすでに現存するシステムに指定されており、多くの場
合現存するユーザの識別子との間でコンフリクトが生じ
るから、互換性を与えることは困難である。
【0020】それ故、本発明の目的は改善された多重プ
ロセスデータ処理システムを提供することである。本発
明の他の目的はデータ処理システムにおいて改善された
資源制御機構を提供することである。本発明の他の目的
はデータ処理システムにおいて改善された資源制御割振
り機構を提供することである。
【0021】
【課題を解決するための手段】複数のユーザ及びプロセ
スを有するデータ処理システムにおける資源の制御方法
およびシステムは、本発明によれば、そのデータ処理シ
ステムの少なくとも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位置にも同様に適用出来る。
【0024】集約資源アカウンティング及び制御に用い
られるアカウンティンググループについて可能となるよ
うにUNIXオペレーティングシステムを変更するには
三つの主な変更が必要である。変更されるべきそれら三
つのエリアは一般に資格証明すなわちクリデンシャリン
グ、監査及びアクセス制御である。これらエリアに対す
る変更は次の4つの組合せを含む。ファイルシステム
に記憶されてコマンドの実行によりメモリにロードされ
る新コマンドの加入、システムライブラリに記憶され
てコマンドによる参照によりメモリにロードされる新サ
ブルーチンの加入、新ファイル(ユーザデータベー
ス)に限定される新システムオブジェクトの加入、及び
カーネルユーザブロック、カーネルアカウンティング
レコード及びファイルシステムイノード(inode )(デ
ィスク及びコアメモリの両方)についてのデータ構造の
変更。
【0025】〔クリデンシャリング〕クリデンシャリン
グはユーザに、使用可能性のポリシーを実行するために
資源のアカウンティングを行い、それへのアクセスを制
御するために用いられるクリデンシャル(この場合、ア
カウント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 ファイルで用いられるような周知
のものである。
【0027】この新オブジェクトクラスにアクセスする
ために新コマンドとサブルーチンが定義される。新コマ
ンドは次のものを含む。 - 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に示される。
【0032】更に、システムコールが付加されたり変更
されたりしてこの識別子がブロック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)。ユーザ例示コマンドはすべてこのサブルー
チンを用いてユーザのクリデンシャルをつくるので、ア
カウンティンググループ識別子は常に各プロセスについ
て正しくつくられることになる。
【0034】テーブル2は上記コマンドとサブルーチン
をどのようにして行うかを当業者に明らかにするための
擬似コードを示すものである。
【0035】
【表4】
【0036】
【表5】
【0037】ユーザにとって便利な特徴として、setacc
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)と呼ぶ)がある。このファイルは各ユーザに
ついての現在の割振りも含んでいる。ブート時に、この
ファイルはこのファイルシステムと手動的に同期化され
る(基本的には割振量はそのファイルシステム内の各イ
ノードを読取り、ユーザにより使用されるすべてのディ
スクスペースを累積することによりリセットされる)。
【0039】このファイルは次にカーネルに「送られ
(fed )」、そしてこのカーネルがこの情報を用いて各
ユーザIDについてのカーネル内にディスク割当制御ブ
ロックをセットアップする。その後、ディスクスペース
が割振られあるいはフリーになると、この割当サブシス
テムにそれが知らされ、そのユーザ用の現在の割振が調
整される。ユーザが割当超過であれば(一つの割振り要
求について)、その要求は否定される(この割当実行も
ソフトリミット(soft limit)を含み、それらリミット
はウォーニングを出すために用いられるがここでは重要
でない)。
【0040】上記のサブシステムは図5に示すように変
更される。それを次に述べる。本発明は資源アカウンテ
ィンググループをサポートするためにこの割当サブシス
テムに対し、三通りの変更を加える。まず、割当ファイ
ル内の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データ構造に対してなされるこれらの変更
を示すものである。
【0042】
【表6】
【0043】第三に、ブロックを割振あるいは割振解除
するとき、この割当サブシステムはそれらブロック84
において要求プロセスのアカウンティンググループID
に課さねばならない。これはクレジット/請求アカウン
トの維持のための従来のプログラミング技術を用いて達
成される。しかしながら請求あるいはクレジットについ
てユーザのIDではなくグループのIDを用いる点が異
なる。
【0044】プールアカウントの実行は次の通りであ
る。まず、そのプール(それにすべてのユーザが属す
る)についての区別されたアカウントID(4G=2**
32)がある。第二に、すべての割当ブロックはこのI
Dについて現存し、そのプールからどれくらいの資源利
用が割振られているかを示すプールフィールドを含む。
【0045】資源アクセス要求がなされると、そのプロ
セスのアカウンティンググループ割振りから可能であれ
ばそれは許可される。それが可能でなければ、そしてそ
のプールが使用可能な割振を有していれば、その要求は
受け入れられ、プールの割振り(その割当制御ブロック
での)は請求され、そしてそのプロセスのアカウンティ
ンググループについての割当制御ブロック内でのプール
割当が増分される。このプールが使用可能な資源を有さ
ないならその要求は拒否される。
【0046】資源の割振りが解除されるときには、それ
ら資源が指定されたIDについての割当制御ブロックが
プール割振を有していれば、この値が増分され、それら
資源はそのプールにクレジットされる(そのプールにつ
いてこの割当制御ブロックはアカウンティンググループ
IDについてのそれらの代りに用いられる)。そうでな
い場合にはノーマルチェックが用いられる。上記のプー
リング機能についての擬似コードをテーブル4に示す。
【0047】
【表7】
【0048】
【発明の効果】要約すると、上記のシステムはユーザI
Dを用いる標準BSD割当法から上位方向に互換性をも
ち、そしてシステム管理者にユーザまたはアカウンティ
ンググループまたはそれらの両方に責任を負わせるにつ
いての融通性を与えるものである。またこのシステムは
システム個別のアクセス制御とは別である。そしてこの
システムは資源の区画を最少にする。
【0049】非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)

    (57)【特許請求の範囲】
  1. 【請求項1】ユーザ識別子及びプロセス並びに資源を有
    するデータ処理システムにおける資源割当て制御方法で
    あって、 システム資源を1つのプールアカウント及び複数のグル
    ープアカウントに分類するステップと、 前記プールアカウント及び前記グループアカウントの各
    々のための資源割当てを含む資源制御情報を示す、資源
    割当てプールアカウント及び資源割当てグループアカウ
    ントを確立するステップと、 1つ以上の前記ユーザ識別子を前記資源割当てグループ
    アカウントに割当てるステップと、 ユーザプロセス資源要求が、前記ユーザ識別子の割当て
    られた資源割当てグループアカウントにより利用可能な
    資源を超過しているか否かをテストするステップと、 前記要求が前記グループアカウントにより利用可能な資
    源を超過していない場合には、前記要求を許可し、許可
    した分だけ利用可能なグループ資源を減少させるステッ
    プと、 前記要求が前記グループアカウントにより利用可能な資
    源を超過している場合には、前記要求が前記資源割当て
    プールアカウントにより利用可能な資源を超過している
    か否かをテストするステップと、 前記要求が前記プールアカウントにより利用可能な資源
    を超過している場合には、前記要求を拒否するステップ
    と、 前記要求が前記プールアカウントにより利用可能な資源
    を超過していない場合には、前記要求を許可し、許可し
    た分だけ利用可能なプール資源を減少させるステップと
    を含む資源割当て制御方法。
  2. 【請求項2】前記アカウントがシステム資源アカウンテ
    ィング情報を維持するために用いられる、請求項1に記
    載の方法。
  3. 【請求項3】ユーザ識別子及びプロセス並びに資源を有
    するデータ処理システムにおける資源割当て制御装置で
    あって、 システム資源を1つのプールアカウント及び複数のグル
    ープアカウントに分類する手段と、 前記プールアカウント及び前記グループアカウントの各
    々のための資源割当てを含む資源制御情報を示す、資源
    割当てプールアカウント及び資源割当てグループアカウ
    ントを確立する手段と、 前記資源割当てアカウントを記憶する記憶手段と、 前記資源割当てアカウントの各々に0または1以上のユ
    ーザ識別子を割当てる手段と、 ユーザプロセス資源要求が前記ユーザ識別子の割当てら
    れているグループアカウントにより利用可能な資源を超
    過しているか否かをテストし、グループ・アカウント資
    源が利用可能である場合には、前記要求を許可し、且つ
    利用可能な資源を減少させ、 グループアカウント資源が利用可能でない場合には、前
    記プールアカウントにより利用可能な資源を超過してい
    るか否かをテストし、前記プールアカウントに利用可能
    な資源を超過している場合には、前記要求を拒否し、ま
    たは、 前記プールアカウントに利用可能な資源を超過していな
    い場合には、前記要求を許可し、利用可能なプール資源
    を減少させる手段とを含む、資源割当て制御装置。
  4. 【請求項4】前記アカウントがシステム資源アカウンテ
    ィング情報を維持するために用いられる、請求項3に記
    載の資源割当て制御装置。
JP4291695A 1991-12-20 1992-10-29 デ―タ処理システムにおける資源制御方法及び装置 Expired - Lifetime JP2516304B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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的任务资源调度方法及其系统