JP2004070964A - デバイスドライバ制御共通化方法 - Google Patents
デバイスドライバ制御共通化方法 Download PDFInfo
- Publication number
- JP2004070964A JP2004070964A JP2003289785A JP2003289785A JP2004070964A JP 2004070964 A JP2004070964 A JP 2004070964A JP 2003289785 A JP2003289785 A JP 2003289785A JP 2003289785 A JP2003289785 A JP 2003289785A JP 2004070964 A JP2004070964 A JP 2004070964A
- Authority
- JP
- Japan
- Prior art keywords
- device driver
- driver
- layer
- function
- application
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23265—Select device driver for actuator, sensor
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
【解決手段】本発明のデバイスドライバ制御共通化方法は、DIA階層をアプリケーション階層とデバイスドライバ階層との間に位置させ、上位アプリケーション階層及びデバイスドライバ階層にDIA階層の標準化規則を適用させる第1過程と、DIA階層の標準化規則を通じてアプリケーション階層及びデバイスドライバ階層はDIA階層がデバイスドライバ階層及び上位アプリケーション階層に相互にアクセスする第2過程と、からなることを特徴とする。
【選択図】図4
Description
22 DIA階層
24,26,50,52 下位デバイスドライバ
30 DCB handlerId[1.0.0]
32 DCB
34 コマンド制御テーブル
36 デバイスドライバ制御テーブル
38 イベントテーブル
40 最上位データベース
Claims (22)
- デバイスドライバ制御共通化方法において、
デバイス独立アクセス階層をアプリケーション階層とデバイスドライバ階層との間に位置させ、前記アプリケーション階層及びデバイスドライバ階層に前記デバイス独立アクセス階層の標準化規則を適用させる第1過程と、
前記デバイス独立アクセス階層の標準化規則を通じて前記アプリケーション階層及びデバイスドライバ階層が前記デバイスドライバ階層及びアプリケーション階層に相互にアクセスする第2過程と、からなることを特徴とするデバイスドライバ制御共通化方法。 - 前記第2過程は、
前記アプリケーション階層が該当デバイスドライバに対する標準化共通フォーマットに基づく制御コマンドを前記デバイス独立アクセス階層に伝送し、及び、前記デバイス独立アクセス階層が、前記制御コマンドをローカルフォーマットに基づく他の制御コマンドに変換し、該変換した制御コマンドを前記デバイスドライバに伝達する段階と、
前記デバイスドライバがローカルフォーマットに基づく変換した制御コマンドの応答を前記デバイス独立アクセス階層に伝送し、及び、前記デバイス独立アクセス階層が、前記デバイスドライバからの応答を標準化共通フォーマットに基づく応答に変換し、該標準化共通フォーマットに基づく応答を前記アプリケーション階層に伝達する段階と、からなる請求項1記載のデバイスドライバ制御共通化方法。 - デバイスドライバ制御共通化方法において、
デバイス独立アクセス階層をアプリケーション階層とデバイスドライバ階層との間に位置させる過程と、
ファンクションブロックのファンクションのうち、該当デバイスドライバで使用可能なファンクションをファンクションテーブルに定義する過程と、
デバイスが初期化される場合、前記デバイス独立アクセス階層が、前記デバイスに対する標準化データフォーマットに基づくデバイスハンドラ識別子を生成し、該生成したデバイスハンドラ識別子を上位のアプリケーション階層に伝達する過程と、
該上位アプリケーション階層が前記デバイスハンドラ識別子を用いて所定デバイスを呼び出し、前記デバイス独立アクセス階層が前記デバイスハンドラ識別子を用いてファンクションテーブルから該当デバイスドライバのファンクションを識別する過程と、からなることを特徴とするデバイスドライバ制御共通化方法。 - 前記デバイスハンドラ識別子はDCB handlerId[x1.x2.x3]で表現され、x1,x2,x3が符号なし整数であり、x1がデバイス識別子を意味するレベル1の値で、x2が該当デバイスの論理又は物理グループ番号を意味するレベル2の値で、x3が該当デバイス又はグループのチャンネル番号を意味するチャンネルの値である請求項3記載のデバイスドライバ制御共通化方法。
- 前記x1,x2,x3の値が“0”であれば、該当レベル又はチャンネルが存在しないことを意味し、デバイスが初期化される場合にx1の値が“1”から順次に増加する請求項4記載のデバイスドライバ制御共通化方法。
- デバイスドライバ制御共通化方法において、
デバイス独立アクセス階層をアプリケーション階層とデバイスドライバ階層との間に位置させる過程と、
前記アプリケーション階層によってデバイス初期化が制御される場合、前記デバイス独立アクセス階層が、前記デバイスのレベル1初期化、レベル2初期化、チャンネル初期化を実行し、前記デバイスに対する標準化データフォーマットに基づくデバイスハンドラ識別子を生成する過程と、
前記デバイス独立アクセス階層が前記デバイスハンドラ識別子に対応する標準化規則を実行するためのエレメントを含むデバイス制御ブロックを動的に割り当てる過程と、
前記デバイス独立アクセス階層が前記アプリケーション階層に前記デバイスハンドラ識別子を提供する過程と、
前記アプリケーション階層が前記デバイスハンドラ識別子を用いて前記デバイス独立アクセス階層を通じて所定デバイスを呼び出す過程と、からなることを特徴とするデバイスドライバ制御共通化方法。 - 前記デバイス制御ブロックのエレメントは、標準化固有値を有しコマンドファンクションポインタがマッピングされているコマンド識別子を含むコマンド制御テーブルの位置を知らせるポインタ*pControlTable、該当ファンクションの存在有無及び位置を識別するためにデバイスドライバ制御テーブルの位置を知らせるポインタ*pDDCB、次のレベルを指示するポインタ*pAnchorを少なくとも含む請求項6記載のデバイスドライバ制御共通化方法。
- 前記デバイス制御ブロックのエレメントは、デバイス初期化時に与えられる初期化プロファイルの位置を知らせるポインタ*pHandler、デバイスの初期化時に使用されるファンクションのあるファンクションポインタ*fpIntiDevice、チャンネルをオープンするときに使用されるファンクションのあるファンクションポインタ*fpOpenChannel、チャンネルをクローズするときに使用されるファンクションのあるファンクションポインタ*fpCloseChannel、オープンチャンネルのデータを読み出すときに使用されるファンクションポインタ*fpRead、オープンチャンネルのデータを書き込むときに使用されるファンクションポインタ*fpWrite、デバイスのリセット時のファンクションポインタ*fpReset、標準化固有値を有しコマンドファンクションポインタがマッピングされているコマンド識別子を含むコマンド制御テーブルの位置を知らせるポインタ*pControlTable、該当ファンクションの存在有無及び位置を識別するためにデバイスドライバ制御テーブルの位置を知らせるポインタ*pDDCB、イベントテーブルの位置を知らせるポインタ*pEventTable、次のレベルを指示するポインタ*pAnchorで構成される請求項6記載のデバイスドライバ制御共通化方法。
- 前記デバイスのレベル1初期化は、x1,x2,x3が符号なし整数でありDCB handlerId[x1.x2.x3]として表現されるデバイスハンドラ識別子にレベル1初期化の順序に基づくデバイスにそれぞれ対応するデバイス識別子x1値を固有値として与えることによって行われる請求項6記載のデバイスドライバ制御共通化方法。
- 前記デバイスのレベル2初期化は、前記レベル1初期化後に遂行され、x1,x2,x3が符号なし整数でありDCB handlerId[x1.x2.x3]で表現されるデバイスハンドラ識別子に、デバイスにそれぞれ対応する論理又は物理グループの個数を参照してアンカーを割り当て、この割り当てられたアンカーのぞれぞれに対するグループ値x2を固有値として与えることによって行われる請求項9記載のドライバ制御共通化方法。
- 前記デバイスのレベル3初期化は、x1,x2,x3が符号なし整数でありDCB handlerId[x1.x2.x3]で表現されるデバイスハンドラ識別子に、チャンネルオープン順序に基づく前記デバイス及び前記デバイス内グループが所有するチャンネルのそれぞれに対してチャンネル値x3を与えることによって行われる請求項10記載のデバイスドライバ制御共通化方法。
- アプリケーションが標準化共通フォーマットに基づくLOS状態情報をデバイス独立アクセス階層に要求する過程と、
前記アプリケーションからの要求を第1デバイスローカルフォーマットに変換し、第1デバイスドライバがLOS状態情報を前記デバイス独立アクセス階層に提供することを要求する過程と、
第1デバイスローカルフォーマットに基づくLOS状態情報に対する要求に応答する過程と、
前記デバイス独立アクセス階層が標準化共通フォーマットに基づくLOS状態情報のために前記アプリケーションに応答する過程と、を含むことを特徴とするデバイスドライバ制御共通化方法。 - 前記アプリケーションからの要求を変換する過程は、
第1デバイスが第2デバイスに変換されて前記第1デバイスドライバが第2デバイスドライバに変更される場合、前記要求を第2デバイスローカルフォーマットに変換する過程と、
第2デバイスドライバがLOS状態情報を前記第2デバイスローカルフォーマットに基づく前記デバイス独立アクセス階層に提供することを要求する過程と、をさらに含む請求項12記載のデバイスドライバ制御共通化方法。 - デバイスドライバに提供される制御コマンドを変更せずに、前記アプリケーションを、第2アプリケーションに変更することを収容するデバイスドライバに提供する標準化共通フォーマットに基づく制御コマンドに変換する過程をさらに含む請求項13記載のデバイスドライバ制御共通化方法。
- デバイス独立アクセス階層がデバイスドライバ制御ブロックからマテリアルを読み出し、所定ファンクションを用いて第1デバイスドライバ及び第2デバイスドライバにアクセスすることにより、前記アプリケーションと前記第1デバイスドライバ及び第2デバイスドライバ間に相互インタフェースを提供する過程をさらに含む請求項14記載のデバイスドライバ制御共通化方法。
- 前記デバイス独立アクセス階層が標準化データフォーマットに基づく各装置に対応するデバイスハンドラ識別子を用いる請求項15記載のデバイスドライバ制御共通化方法。
- 該当デバイスを初期化する間、前記デバイス独立アクセス階層から前記アプリケーションに前記デバイスハンドラ識別子を提供する過程と、
前記アプリケーションが、デバイスハンドラ識別子を貯蔵し、該当デバイスハンドラ識別子を用いて該当デバイスを呼び出す過程と、をさらに含む請求項16記載のデバイスドライバ制御共通化方法。 - 前記デバイス独立アクセス階層が、前記ドライバハンドラ識別子に従って特定のデバイスドライバが呼び出されたかを決定し、その結果に基づいて特定のドライバハンドラを呼び出す過程をさらに含む請求項17記載のデバイスドライバ制御共通化方法。
- デバイス独立アクセス階層が標準化共通フォーマットを遂行するために特定のポインタ及びファンクションポインタを使用する請求項18記載のデバイスドライバ制御共通化方法。
- 前記アプリケーションが使用するファンクションブロックのファンクションを呼び出す場合、前記デバイス独立アクセス階層が、ファンクションテーブルから該当ファンクションの存在を確認し、デバイスドライバがデバイスハンドラ識別子を用いて前記アプリケーションにアクセスすることを収容するデバイスドライバの初期化を知らせるためにデバイスハンドラ識別子を使用する請求項19記載のデバイスドライバ制御共通化方法。
- 前記第1デバイスドライバが前記第2デバイスドライバに変更される場合、デバイスのためのデバイスハンドラID値を変更しない請求項20記載のデバイスドライバ制御共通化方法。
- 前記第1デバイスドライバが前記第2デバイスドライバに変更される場合、前記デバイス独立アクセス階層の制御下でポインタのアドレスを変更する請求項21記載のデバイスドライバ制御共通化方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0046757A KR100464349B1 (ko) | 2002-08-08 | 2002-08-08 | 디바이스 드라이버 제어 공통화 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004070964A true JP2004070964A (ja) | 2004-03-04 |
Family
ID=31492828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003289785A Pending JP2004070964A (ja) | 2002-08-08 | 2003-08-08 | デバイスドライバ制御共通化方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7437737B2 (ja) |
JP (1) | JP2004070964A (ja) |
KR (1) | KR100464349B1 (ja) |
CN (1) | CN1241113C (ja) |
CA (1) | CA2434869A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005103918A1 (ja) * | 2004-04-21 | 2005-11-03 | Ntt Docomo, Inc. | データ処理装置およびデータ処理方法 |
JP2007141161A (ja) * | 2005-11-22 | 2007-06-07 | Fuji Xerox Co Ltd | 変換プログラム、変換装置、およびデバイスドライバ |
JP2010277293A (ja) * | 2009-05-28 | 2010-12-09 | Seiko Epson Corp | コントローラーの制御方法およびコントローラー |
JP2013210820A (ja) * | 2012-03-30 | 2013-10-10 | Hitachi Information & Telecommunication Engineering Ltd | 組み込みシステム及びプログラム |
US10372461B2 (en) | 2014-09-19 | 2019-08-06 | Alab Inc. | Device driver registration device and device driver registration method using same |
US11573913B2 (en) | 2014-09-19 | 2023-02-07 | Alab Inc. | Device proxy and control method |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8126993B2 (en) * | 2006-07-18 | 2012-02-28 | Nvidia Corporation | System, method, and computer program product for communicating sub-device state information |
US20120284702A1 (en) * | 2011-05-02 | 2012-11-08 | Microsoft Corporation | Binding applications to device capabilities |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02195462A (ja) | 1989-01-24 | 1990-08-02 | Matsushita Electric Ind Co Ltd | 情報処理端末器 |
US5815682A (en) | 1994-12-13 | 1998-09-29 | Microsoft Corporation | Device independent modem interface |
US5802365A (en) * | 1995-05-05 | 1998-09-01 | Apple Computer, Inc. | Dynamic device matching using driver candidate lists |
JPH1011384A (ja) | 1996-06-24 | 1998-01-16 | Sumitomo Metal Ind Ltd | 入出力標準化装置 |
KR100209360B1 (ko) * | 1996-11-30 | 1999-07-15 | 이계철 | 지능형 디바이스 드라이버를 제공하는 광대역 종합정보통신망 정합장치 |
US6311228B1 (en) * | 1997-08-06 | 2001-10-30 | Microsoft Corporation | Method and architecture for simplified communications with HID devices |
US5963726A (en) * | 1998-03-20 | 1999-10-05 | National Instruments Corporation | Instrumentation system and method including an improved driver software architecture |
US6282586B1 (en) | 1998-10-28 | 2001-08-28 | 3Com Corporation | Method in an operating system, a method and system for supporting multiple hardware devices from a single communications port |
JP4057201B2 (ja) * | 1999-09-16 | 2008-03-05 | 富士通株式会社 | 異種計算機間高速データ交換方式およびエクステント抽出・変換プログラム記録媒体 |
US6505258B1 (en) * | 2000-02-29 | 2003-01-07 | Compaq Information Technologies Group, L.P. | Comprehensive interface between bios and device drivers to signal events |
US6938261B2 (en) * | 2000-05-12 | 2005-08-30 | Microsoft Corporation | System and method employing script-based device drivers |
US20020170039A1 (en) * | 2001-02-22 | 2002-11-14 | Kovacevic Branko D. | System for operating system and platform independent digital stream handling and method thereof |
EP1253750A1 (en) * | 2001-04-24 | 2002-10-30 | Deutsche Thomson-Brandt Gmbh | Method for the control of network devices connected via a bus system |
US6952830B2 (en) * | 2001-08-16 | 2005-10-04 | Occam Networks, Inc. | System and method to uniformly access devices |
US6993772B2 (en) * | 2001-09-18 | 2006-01-31 | The Mathworks, Inc. | Common communication system for control instruments |
KR20030065911A (ko) * | 2002-02-01 | 2003-08-09 | 삼성전자주식회사 | 임베디드 시스템에서 사용자 어플리케이션과 디바이스드라이버간의 독립성을 보장하는 인터페이스 방법 |
-
2002
- 2002-08-08 KR KR10-2002-0046757A patent/KR100464349B1/ko not_active IP Right Cessation
-
2003
- 2003-06-27 US US10/607,167 patent/US7437737B2/en not_active Expired - Fee Related
- 2003-07-09 CA CA002434869A patent/CA2434869A1/en not_active Abandoned
- 2003-08-08 JP JP2003289785A patent/JP2004070964A/ja active Pending
- 2003-08-08 CN CNB031277128A patent/CN1241113C/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005103918A1 (ja) * | 2004-04-21 | 2005-11-03 | Ntt Docomo, Inc. | データ処理装置およびデータ処理方法 |
JP2005309783A (ja) * | 2004-04-21 | 2005-11-04 | Ntt Docomo Inc | データ処理装置およびデータ処理方法 |
KR100878714B1 (ko) | 2004-04-21 | 2009-01-14 | 가부시키가이샤 엔티티 도코모 | 데이터 처리 장치 및 데이터 처리 방법 |
US8161499B2 (en) | 2004-04-21 | 2012-04-17 | Ntt Docomo, Inc. | Data processing device and data processing method |
JP2007141161A (ja) * | 2005-11-22 | 2007-06-07 | Fuji Xerox Co Ltd | 変換プログラム、変換装置、およびデバイスドライバ |
JP2010277293A (ja) * | 2009-05-28 | 2010-12-09 | Seiko Epson Corp | コントローラーの制御方法およびコントローラー |
JP2013210820A (ja) * | 2012-03-30 | 2013-10-10 | Hitachi Information & Telecommunication Engineering Ltd | 組み込みシステム及びプログラム |
US10372461B2 (en) | 2014-09-19 | 2019-08-06 | Alab Inc. | Device driver registration device and device driver registration method using same |
US11573913B2 (en) | 2014-09-19 | 2023-02-07 | Alab Inc. | Device proxy and control method |
Also Published As
Publication number | Publication date |
---|---|
CN1241113C (zh) | 2006-02-08 |
KR20040013703A (ko) | 2004-02-14 |
US7437737B2 (en) | 2008-10-14 |
CA2434869A1 (en) | 2004-02-08 |
US20040030415A1 (en) | 2004-02-12 |
KR100464349B1 (ko) | 2005-01-03 |
CN1484139A (zh) | 2004-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7203696B2 (en) | Dynamic registry partitioning | |
JP3891612B2 (ja) | ダイナミック機能置換を有するデータ構造 | |
US7051101B1 (en) | Methods and apparatus for controlling devices within storage network | |
US9733951B2 (en) | Creation and use of virtual device drivers on a serial bus | |
US6122732A (en) | System management interrupt for a desktop management interface/system management basic input output system interface function | |
US8104026B2 (en) | Compiler register allocation and compilation | |
JPH06187259A (ja) | Os/2仮想装置ドライバを利用したlanへのデータ転送 | |
CN109614165A (zh) | 一种com组件的多版本并行运行方法和装置 | |
WO2021196597A1 (zh) | 业务插件加载实现方法、装置和终端设备 | |
JP2009059349A (ja) | 共用型ジャバjarファイル | |
US6748459B1 (en) | Method and apparatus for address mapping | |
US5627998A (en) | System and method for mapping calls to functions in a first driver level library to a session-based instrumentation control driver level system | |
JP2004070964A (ja) | デバイスドライバ制御共通化方法 | |
JPH0348959A (ja) | メモリ素子及び周辺素子の選択装置 | |
CN101136780A (zh) | 获取用户命令信息的方法、系统及用户命令注册的装置 | |
US7020723B2 (en) | Method of allowing multiple, hardware embedded configurations to be recognized by an operating system | |
Gill et al. | ORB middleware evolution for networked embedded systems | |
CN113918268A (zh) | 一种多租户管理方法及装置 | |
US7346896B2 (en) | Slowing network connection for application optimization | |
US7103686B1 (en) | Method and apparatus for device discovery | |
US7181737B2 (en) | Method and apparatus for deployment of high integrity software using static procedure return addresses | |
US6636964B1 (en) | Method and apparatus for loading an object-oriented operating system by providing an initial execution environment and migrating to a core execution environment thereafter | |
US7519719B2 (en) | Automatic creation of protocol dependent control path for instrument application | |
US20030135708A1 (en) | System, method and computer program product for mapping system memory in a multiple node information handling system | |
US11886838B2 (en) | Space- and time-efficient enumerations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20040712 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040803 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060307 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060606 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070305 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080324 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080610 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20090501 |