throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2004/0098526A1
`Matsumoto et al.
`(43) Pub. Date:
`May 20, 2004
`
`US 20040098526A1
`
`(54) APPARATUS, METHOD AND PROGRAM
`FOR CONTENTION ARBTRATION
`(76) Inventors: Michiko Matsumoto, Moriguchi (JP);
`Yoshiaki Suzuki, Osaka (JP)
`Correspondence Address:
`WENDEROTH, LIND & PONACK, L.L.P.
`2033 K STREET N. W.
`SUTE 800
`WASHINGTON, DC 20006-1021 (US)
`(21) Appl. No.:
`10/712,001
`(22) Filed:
`Nov. 14, 2003
`(30)
`Foreign Application Priority Data
`
`Nov. 15, 2002 (JP)...................................... 2002-331905
`
`Publication Classification
`
`(51) Int. Cl. .................................................. G06F 13/14
`
`(52) U.S. Cl. .............................................................. 710/240
`(57)
`ABSTRACT
`The present invention provides a contention arbitration
`apparatus and method which can fully utilize the advantages
`of physical devices and can be flexibly adapted to a change
`of the physical devices. A contention arbitration apparatuS 1
`includes: a resource information Storing Section 14 for
`Storing resource information; a device information Storing
`Section 18 for Storing device information indicating a cor
`respondence between a logic device and resources, a used
`resource recognizing Section 13 for recognizing a resource
`asSociated with the logic device; a resource access deter
`mining Section 15 for determining by reference to the
`resource information which application program is allowed
`to access the resource recognized by the used resource
`recognizing Section; and a device access determining Section
`16 for determining, based on a determination result provided
`by the resource acceSS determining Section, whether the
`application program which has specified the logic device is
`able to access a physical device which implements functions
`defined by the logic device.
`
`
`
`RESOURCE
`ACCESS
`DETERMINING
`SECTION
`
`RESOURCE
`INFORMATION
`STORING
`SECTION
`
`USED
`RESOURCE
`RECOGNITING
`SECTION
`
`APPLICATION
`PROGRAM
`I/F
`SECTION
`
`APPLICATION
`PROGRAM
`EXECUT ING
`APPARATUS 2
`
`DEWICE
`ACCESS
`DETERMINING
`SECTION
`
`DEVICE
`INFORMATION
`STORING
`SECTION
`
`APPLICATION
`INFORMATION
`STORING
`SECTION
`
`EXECUTING
`SECTION
`
`CONTENTION ARBITRATION APPARATUS
`
`DEWICE DRIWER
`EXECUT ING APPARATUS 4
`
`ZTE, Ex. 1008
`
`1
`
`

`

`Patent Application Publication May 20, 2004 Sheet 1 of 13
`
`US 2004/0098526A1
`
`F I G. 1
`
`APPLICATION PROGRAM
`EXECUTING APPARATUS
`
`DEVICE DRIVER
`EXECUTING APPARATUS
`
`
`
`PHYSICAL
`DEWICE
`
`
`
`
`
`
`
`
`
`CONTENTION
`ARBITRATION
`APPARATUS
`
`
`
`
`
`
`
`PHYSICAL
`DEWICE
`
`
`
`2
`
`

`

`Patent Application Publication May 20, 2004 Sheet 2 of 13
`
`US 2004/0098526A1
`
`F I G. 2
`
`APPLICATION PROGRAM
`
`APPLICATION PROGRAM
`
`
`
`
`
`SDSP LOGIC
`DEWICE
`
`MIDI LOGIC
`DEWICE
`
`
`
`
`
`
`
`SDSP
`RESOURCE
`
`LOUDSPEAKER
`RESOURCE
`
`MIDI
`RESOURCE
`
`
`
`
`
`SDSP PHYSICAL
`DEWICE
`
`MIDI PHYSICAL
`DEWICE .
`
`LOUDSPEAKER
`PHYSICAL DEVICE
`
`3
`
`

`

`Patent Application Publication May 20, 2004 Sheet 3 of 13
`
`US 2004/0098526A1
`
`F I G. 3
`
`A1
`
`A2
`
`A3
`
`A4
`
`APPLICATION
`PROGRAM
`
`APPLICATION
`PROGRAM
`
`APPLICATION
`PROGRAM
`
`APPLICATION
`PROGRAM
`
`LINE LOGIC DEWICE
`
`32
`
`33
`
`LINE
`RESOURCE d 34
`
`LINE PHYSICAL
`DEWICE
`
`4
`
`

`

`Patent Application Publication May 20, 2004 Sheet 4 of 13
`
`US 2004/0098526 A1
`
`F I G. 4
`
`A1
`
`
`
`A2
`
`A3
`
`APPLICATION
`PROGRAM
`
`APPLICATION
`PROGRAM
`
`APPLICATION
`PROGRAM
`
`
`
`SDSP RECORDING
`LOGIC DEWICE
`
`
`
`SDSP REPRODUCING
`LOGIC DEWICE
`
`SSESSEE
`
`SDSP
`RECORDING
`RESOURCE
`
`
`
`
`
`SDSP
`REPRODUCTION
`RESOURCE
`
`
`
`SDSP PHYSICAL
`DEVICE
`
`5
`
`

`

`Patent Application Publication May 20, 2004 Sheet 5 of 13
`
`US 2004/0098526A1
`
`F I G. 5
`
`
`
`RESOURCE
`ACCESS
`DETERMINING
`SECTION
`
`RESOURCE
`INFORMATION
`STORING
`SECTION
`
`USED
`RESOURCE
`RECOGNITING
`SECTION
`
`APPLICATION
`PROGRAM
`I/F
`SECTION
`
`APPLICATION
`PROGRAM
`EXECUT ING
`APPARATUS 2
`
`DEWICE
`ACCESS
`DETERMINING
`SECTION
`
`APPLICATION
`DEWICE
`INFORMATION INFORMATION
`STORING
`STORING
`SECTION
`SECTION
`
`EXECUTING
`SECTION
`
`CONTENTION ARBITRATION APPARATUS
`
`DEWICE DRIWER
`EXECUT ING APPARATUS 4
`
`1
`
`6
`
`

`

`Patent Application Publication May 20, 2004 Sheet 6 of 13
`
`US 2004/0098526A1
`
`F I G. 6
`
`APPLICATION
`ID
`
`PRIORITY
`
`ACCESS. TARGET ACCESSIBILITY
`LOGIC DEWICE NAME INFORMATION
`SDSP LOGIC
`
`
`
`
`
`
`
`
`
`F I G. 7
`
`LINE LOGIC
`
`SDSP RECORDING
`ALLOWED
`6",
`SDSP REPRODUCING
`to
`SEYE" | NOT ALLOWED
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`LOGIC DEWICE NAME
`
`RESOURCE NAME
`
`SDSP LOGIC
`DEWICE
`
`MIDI LOGIC
`DEWICE
`
`LINE LOGIC
`DEW ICE
`
`SDSP RECORDING
`LOGIC DEWICE
`
`SDSP REPRODUCING
`LOGIC DEWICE
`
`
`
`
`
`
`
`
`
`SDSP RESOURCE
`
`LOUDSPEAKER
`RESOURCE
`
`MIDI RESOURCE
`
`
`
`LOUDSPEAKER
`RESOURCE
`
`LINE RESOURCE
`SDSP RECORDING
`RESOURCE
`SDSP CODEC
`RESOURCE
`SDSP REPRODUCTION
`RESOURCE
`SDSP CODEC
`RESOURCE
`
`7
`
`

`

`Patent Application Publication May 20, 2004 Sheet 7 of 13
`F I G. 8
`
`US 2004/0098526A1
`
`
`
`
`
`RESOURCE NAME
`
`LOUDSPEAKER
`RESOURCE
`MIDI RESOURCE
`
`LINE RESOURCE
`
`LINE RESOURCE
`
`LINE RESOURCE
`
`SDSP CODEC
`RESOURCE
`
`SDSP RECORDING
`RESOURCE
`SDSP REPRODUCTION
`RESOURCE -
`
`APPLICATION ID OF
`
`
`
`l
`l
`
`NULL
`
`NULL
`
`NULL
`
`LL
`
`8
`
`

`

`Patent Application Publication May 20, 2004 Sheet 8 of 13
`
`US 2004/0098526A1
`
`F I G. 9
`
`START
`
`RECEIWE ACCESS
`START INDICATION
`
`REGISTER AND NOTI FY
`APPLICATION INFORMATION
`
`OBTAIN AND NOT IFY
`RESOURCE NAME
`
`DETERMINE WHETHER ACCESS
`RIGHT TO ALL THE RESOURCES
`CAN BE OBTAINED AND REFLECT
`DETERMINATION RESULT IN
`STORING SECTIONS
`
`
`
`S101
`
`S102
`
`S103
`
`S104
`
`
`
`
`
`
`
`
`
`
`
`HAWING ACCESS
`RIGHT TO ALL THE
`RESOURCES
`
`
`
`S105
`NO
`
`S108
`
`SET APPLICATION
`INFORMATION TO "ALLOWED"
`
`SET APPLICATION INFORMATION
`TO "NOT ALLOWED"
`
`EXECUTE DEWICE DRIWER
`
`9
`
`

`

`Patent Application Publication May 20, 2004 Sheet 9 of 13
`
`US 2004/0098526A1
`
`F I. G. 1 O
`
`(EOMs)
`
`a
`
`SAME RESOURCE
`ARE PRESENT
`
`YeS
`ALL THE ACCES
`RIGHTSARE SET
`Yes
`
`SEARCH FOR APPLICATION
`AP2 HAVING LOWEST PRIORITY
`
`RESOURC
`EFFECTS MULTIPLE
`ACCESS
`
`IDENTICAL ATTRIBUTES
`
`S201
`
`No
`
`S2O2
`
`
`
`
`
`
`
`S2O3
`
`
`
`S204
`No
`
`S211
`
`APPLICATION AP3
`HAWING ACCESS RIGHT
`IS PRESENT
`Yes
`OBTAIN APPLICATION
`INFORMATION ABOUT AP3
`
`No
`
`S212
`
`GA)
`
`COMPARE PRIORITIES OF
`AP1 AND AP2 (AP3)
`
`S2O6
`
`AP
`PRIORITIZED
`
`UPDATE RESOURCE
`INFORMATION
`
`SET APPLICATION INFORMATION
`ABOUT AP2 (AP3) TO "NOT ALLOWED"
`
`S210
`
`
`
`UPDATED FOR
`ALL THE RESOURCES
`
`Yes
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`10
`
`

`

`Patent Application Publication May 20, 2004 Sheet 10 of 13
`
`US 2004/0098526A1
`
`F I G. 1 1
`
`
`
`
`
`RECEIWE AND NOT IFY
`ACCESS INDICATION
`
`REFER TO APPLICATION
`INFORMATION
`
`S301
`
`S302
`
`
`
`
`
`ACCESS ALLOWED
`
`
`
`S305
`
`EXECUTE DEWICE DRIVER
`
`RETURN AND NOTIFY ERROR
`
`
`
`
`
`11
`
`

`

`Patent Application Publication May 20, 2004 Sheet 11 of 13
`
`US 2004/0098526 A1
`
`F I G. 1 2
`
`S401
`
`S402
`
`S403
`
`S404
`
`RECEIVE AND NOT IFY ACCESS
`TERMINATION INDICATION
`
`OBTAIN RESOURCE INFORMATION
`
`
`
`DETERMINE WHETHER THERE IS
`ANY APPLICATION PROGRAM
`WHICH WISHES TO OBTAIN
`ACCESS RIGHT TO ALL THE
`RESOURCES WHICH CAN BE ACCESSED
`BY AP1, AND GRANT ACCESS RIGHT
`
`FIND APPLICATION AP4 HAWING
`GRANTED ACCESS RIGHT TO ALL
`THE RESOURCES TO BE USED
`
`S405
`AP, IS PRESENTS-Ne
`Yes
`UPDATE APPLICATION
`INFORMATION ABOUT AP TO
`"ALLOWED"
`
`
`
`CHANGE SETTING OF
`DEWICE TO AP4
`
`DELETE APPLICATION
`INFORMATION ABOUT AP1
`
`S408
`
`C END D
`
`12
`
`

`

`Patent Application Publication May 20, 2004 Sheet 12 of 13
`
`US 2004/0098526 A1
`
`F I G. 1 3
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FROM S4O2
`
`S501
`
`HAWING ACCESS
`RIGHT TO RESOURCES
`TO BE USED
`
`FIND APPLICATION AP5 HAWING
`PROVIDED ACCESS START INDICATION
`TO LOGIC DEVICE WHICH REQUIRES
`THE RESOURCE
`
`PLURALITY
`OF AP5 ARE PRESENT
`
`FIND APPLICATION AP5
`HAWING HIGHEST PRIORITY
`
`UPDATE RESOURCE INFORMATION
`(COMPARE ATTRIBUTES IF
`MULTIPLE ACCESS IS EFFECTED)
`
`PROCESS
`PERFORMED ON ALL THE
`RESOURCES
`
`TO S.404
`
`13
`
`

`

`Patent Application Publication May 20, 2004 Sheet 13 of 13
`
`US 2004/0098526 A1
`
`F I G. 1 4
`
`FROM S104
`
`
`
`HAWING
`ACCESS RIGHT
`TO ALL THE
`RESOURCES
`
`S105
`
`RECOGNIZE ACCESSIBLE
`RESOURCES
`
`SET APPLICATION
`INFORMATION TO "ALLOWED"
`
`
`
`
`
`
`
`
`
`
`
`FUNCTIONS
`OF PART OF
`RESOURCES CAN BE
`
`
`
`PLEENTED
`
`EXECUTE DEWICE DRIWER
`
`
`
`EXECUTE DEWICE
`DRIWER
`
`S1081
`
`S1082
`
`
`
`
`
`S108
`
`SET APPLICATION
`INFORMATION TO
`"NOT ALLOWED"
`
`14
`
`

`

`US 2004/0098526 A1
`
`May 20, 2004
`
`APPARATUS, METHOD AND PROGRAM FOR
`CONTENTION ARBTRATION
`
`BACKGROUND OF THE INVENTION
`0001) 1. Field of the Invention
`0002 The present invention relates to an apparatus and
`method for use in a computer System in which a plurality of
`application programs are executed, and more particularly to
`an apparatus and method for arbitrating a contention caused
`when the plurality of application programs simultaneously
`attempt to acceSS an acceSS target.
`0.003
`2. Description of the Background Art
`0004.
`In general, an application program executed in a
`computer System controls operations of a plurality of physi
`cal devices, Such as loudspeakers, musical instruments digi
`tal interface (MIDI) devices, and Sound digital signal pro
`cessor (SDSP) devices, thereby controlling the operation of
`the entire computer System So as to perform a desired
`process. In a computer System in which a plurality of
`application programs are executed, however, when two or
`more application programs Simultaneously access one
`physical device, a contention occurs between acceSS
`requests. On the occurrence of the contention between
`access requests, that one physical device does not operate in
`a desired manner.
`0005. Hereinafter, the term “contention” refers to such a
`State as described above in which two or more application
`programs simultaneously attempt to access one physical
`device. When a contention occurs, application programs are
`not able to control the operation of the computer System in
`a desired manner. Accordingly, in the computer System in
`which the plurality of application programs are executed, it
`is necessary to control acceSS requests from application
`programs to a physical device So as not to cause the
`occurrence of the contention. Hereinafter, the term “conten
`tion arbitration” refers to the control of acceSS requests from
`application programs to a physical device. Conventionally, a
`variety of methods for contention arbitration have been
`proposed.
`0006 For example, there is a proposed method for con
`tent arbitration which uses exclusive control identifiers (see,
`for example, Japanese Patent Laid-Open Publication
`No.2002-175287). In this method, the exclusive control
`identifiers are assigned to computing devices for executing
`application programs. When one application program
`accesses a shared physical device, a computing device,
`which executes the application program, collects exclusive
`control identifiers assigned to other computing devices.
`After collecting all the exclusive control identifiers, the
`computing device acquires exclusive control right to acceSS
`the shared physical device.
`0007. There is another proposed method for content
`arbitration which arbitrates an access contention caused
`when a plurality of threads Successively request to acceSS
`data or object stored in a computer System (see, for example,
`Japanese Patent Laid-Open Publication No. 10-187527). In
`this method, the acceSS contention is arbitrated based on a
`first-in, first-out process.
`0008. There is still another proposed method for content
`arbitration which uses a control device dedicated to conten
`
`tion arbitration in a computer System (See, for example,
`Japanese Patent Laid-Open Publication No. 2000-231458).
`In this method, the control device conducts the contention
`arbitration based on priorities assigned to access requests.
`0009. There is still another proposed method for content
`arbitration in which when a plurality of control commands
`are given to a device to be controlled, the device Selects any
`one of the control commands based on a prescribed condi
`tion to arbitrate an access contention (see, for example,
`Japanese Patent Laid-Open Publication No. 2001-346276).
`0010. In the above-described conventional methods for
`contention arbitration, the contention arbitration is con
`ducted for each physical device actually present in the
`computer System. Accordingly, in the case where the con
`ventional methods are used for arbitrating an acceSS con
`tention, for example, in a physical device which can be
`Simultaneously accessed by a plurality of application pro
`grams under a specific condition, or in a physical device
`which allows Simultaneous accesses from a prescribed num
`ber of application programs, the advantages of Such physical
`devices are not fully utilized.
`0011
`Further, in the case where the above-described
`conventional methods are used for arbitrating an access
`contention in a physical device, Such as a loudspeaker,
`which is connected to another physical device and does not
`have its own I/O port, when Such a physical device is shared
`between a plurality of physical devices, an application
`program refers to a State transition table to determine not to
`access the physical device accessed by another application
`program, thereby avoiding the access contention. As a result,
`the contention arbitration depends on how the application
`program operates or how the physical devices are connected
`to each other. Further, an increase of the number of physical
`devices necessitates each application program to update the
`State transition table, making it difficult to conduct the
`contention arbitration.
`0012. As described above, the conventional methods for
`contention arbitration cannot fully utilize the advantages of
`physical devices, and cannot be flexibly adapted to a change
`of the physical devices.
`
`SUMMARY OF THE INVENTION
`0013 Therefore, an object of the present invention is to
`provide a contention arbitration apparatus and method which
`can fully utilize the advantages of physical devices and can
`be flexibly adapted to a change of the physical devices.
`0014. The present invention has the following features to
`attain the object mentioned above.
`0015. A first aspect of the present invention is directed to
`a contention arbitration apparatus for arbitrating an access
`contention caused when a plurality of application programs
`Simultaneously attempt to access at least one physical
`device. The contention arbitration apparatus includes: a
`resource information Storing Section for Storing resource
`information which indicates a correspondence between at
`least one resource, which defines functions of Said at least
`one physical device, and at least one application program,
`which is allowed to use functions associated with Said at
`least one resource; a device information Storing Section for
`Storing device information which indicates a correspon
`dence between a logic device, which defines functions
`
`15
`
`

`

`US 2004/0098526 A1
`
`May 20, 2004
`
`Specified by Said at least one application program which
`attempts to access Said at least one physical device, and Said
`at least one resource which defines functions required for
`implementing functions defined by the logic device; a used
`resource recognizing Section for recognizing a resource
`asSociated with the logic device Specified by Said at least one
`application program by reference to the device information;
`a resource acceSS determining Section for determining by
`reference to the resource information which application
`program is allowed to access the resource recognized by the
`used resource recognizing Section; and a device acceSS
`determining Section for determining, based on a determina
`tion result provided by the resource access determining
`Section, whether the application program which has speci
`fied the logic device is able to acceSS Said at least one
`physical device which implements the functions defined by
`the logic device.
`0016 Preferably, the resource information may contain
`multiple access information which indicates whether to
`allow Simultaneous accesses from a plurality of application
`programs, and when the Simultaneous accesses from the
`plurality of application programs are allowed, the resource
`access determining Section may allow the plurality of appli
`cation programs to access the resource based on the multiple
`access information.
`0.017. In this case, the resource access determining sec
`tion may allow the plurality of application programs to
`access the resource only when a prescribed condition is
`Satisfied.
`0.018
`For example, the prescribed condition may be that
`the plurality of application programs use the same Scheme to
`implement a function provided by the resource.
`0.019
`Preferably, the contention arbitration apparatus
`may further include an executing Section for executing a
`device driver for controlling Said at least one physical device
`when the device access determining Section determines that
`Said at least one application program which has Specified the
`logic device is allowed to access Said at least one physical
`device.
`0020 For example, the executing section may send an
`error message to Said at least one application program
`having Specified the logic device when the access determin
`ing Section determines that Said at least one application is not
`allowed to access Said at least one physical device.
`0021
`Preferably, the resource access determining section
`may determine which application program is allowed to
`access Said at least one physical device based on priorities of
`the plurality of application programs.
`0022. The contention arbitration apparatus may further
`include an application information Storing Section for Storing
`information about the priorities of the plurality of applica
`tion programs.
`0023 The resource information may contain additional
`information which indicates whether to grant an access right
`to an application program having provided an access indi
`cation first or last, and when the plurality of application
`programs have the same priorities, the resource acceSS
`determining Section may determine which one of the appli
`cation programs is to be granted the access right based on the
`additional information.
`
`0024 Preferably, the contention arbitration apparatus
`may further include: an application information Storing
`Section for Storing, as application information, a correspon
`dence between a determination result obtained by the device
`acceSS determining Section and the plurality of application
`programs, and an executing Section for executing a device
`driver for controlling said at least one physical device. When
`an acceSS Start indication is provided by an application
`program to Specify the logic device, the device acceSS
`determining Section may determine whether the application
`program is able to acceSS Said at least one physical device
`and may store a determination result into the application
`information Storing Section. When an access indication is
`provided after the access Start indication, the executing
`Section may refer to the application information Stored in the
`application information Storing Section to determine whether
`the application program is able to acceSS Said at least one
`physical device.
`0025 For example, when an access indication is provided
`by an application program which is not able to access Said
`at least one physical device, the executing Section may send
`an error message to the application program.
`0026 Further, when an access indication is provided by
`an application program, which is not allowed to acceSS Said
`at least one physical device Since access to Said at least one
`physical device is granted to another application program,
`the executing Section may send an error message to the
`application program.
`0027 Preferably, upon receipt of an access termination
`indication from Said at least one application program, the
`resource acceSS determining Section may grant an access
`right to another application program which attempts to use
`the functions associated with the resource, and may update
`the resource information Such that a result of the grant of the
`access right is reflected in the resource information. The
`device access determining Section may determine whether
`Said another application program is able to access said at
`least one physical device based on the resource information
`updated by the resource access determining Section.
`0028. Further, the contention arbitration apparatus may
`further include: an application information Storing Section
`for Storing, as application information, a correspondence
`between a determination result obtained by the device acceSS
`determining Section and the plurality of application pro
`grams, and an executing Section for updating the application
`information based on the determination result obtained by
`the device acceSS determining Section.
`0029. Alternatively, the contention arbitration apparatus
`may further include an executing Section for changing a
`Setting of a device driver when the device access determin
`ing Section determines that Said another application program
`is able to access Said at least one physical device, the Setting
`being changed Such that Said another application program is
`allowed to access the physical device.
`0030 Preferably, when only said at least one application
`program, which specifies the logic device, is allowed to use
`the functions associated with all the resources associated
`with the logic device, the device access determining Section
`may determine that Said at least one application program is
`allowed to use Said at least one physical device.
`0031. Alternatively, when only said at least one applica
`tion program, which specifies the logic device, is associated
`
`16
`
`

`

`US 2004/0098526 A1
`
`May 20, 2004
`
`with a part of the resources associated with the logic device,
`the device acceSS determining Section may determine that
`Said at least one application program is allowed to use
`functions defined by the part of the resources when acceSS
`ing Said at least one physical device.
`0032. Furthermore, the contention arbitration apparatus
`may further include an application I/F Section for accepting
`Specification of the logic device from Said at least one
`application program.
`0.033
`For example, the resource information may contain
`additional information which indicates for each resource
`whether to grant an access right to an application program
`having provided an access indication first or last, and the
`resource acceSS determining Section may determine which
`application program is granted the access right based on the
`additional information.
`0034. A second aspect of the present invention is directed
`to a contention arbitration program for causing a computing
`apparatus to arbitrate an acceSS contention caused when a
`plurality of application programs simultaneously attempt to
`access at least one physical device, the computing apparatus
`having Stored therein resource information which indicates
`a correspondence between at least one resource, which
`defines functions of Said at least one physical device, and at
`least one application program, which is allowed to use
`functions associated with Said at least one resource, and also
`having Stored therein device information which indicates a
`correspondence between a logic device, which defines func
`tions specified by said at least one application program
`which attempts to access Said at least one physical device,
`and Said at least one resource which defines functions
`required for implementing functions defined by the logic
`device. The contention arbitration program causes the com
`puting apparatus to perform a contention arbitration method
`comprising the Steps of recognizing a resource associated
`with the logic device Specified by Said at least one applica
`tion program by reference to the device information; deter
`mining by reference to the resource information which
`application program is allowed to access the recognized
`resource; and determining, based on a determination result
`obtained by the step of determining by reference to the
`resource information, whether the application program
`which has specified the logic device is able to access Said at
`least one physical device which implements the functions
`defined by the logic device.
`0.035 A third aspect of the present invention is directed to
`a contention arbitration method for causing a computing
`apparatus to arbitrate an acceSS contention caused when a
`plurality of application programs simultaneously attempt to
`access at least one physical device, the computing apparatus
`having Stored therein resource information which indicates
`a correspondence between at least one resource, which
`defines functions of Said at least one physical device, and at
`least one application program, which is allowed to use
`functions associated with Said at least one resource, and also
`having Stored therein device information which indicates a
`correspondence between a logic device, which defines func
`tions Specified by Said at least one application program
`which attempts to access Said at least one physical device,
`and Said at least one resource which defines functions
`required for implementing functions defined by the logic
`device. The contention arbitration method include the Steps
`
`of recognizing a resource associated with the logic device
`Specified by Said at least one application program by refer
`ence to the device information; determining by reference to
`the resource information which application program is
`allowed to access the recognized resource; and determining,
`based on a determination result obtained by the Step of
`determining by reference to the resource information,
`whether the application program which has specified the
`logic device is able to access Said at least one physical
`device which implements the functions defined by the logic
`device.
`0036) The contention arbitration apparatus according to
`the first aspect manages logic devices Specified by applica
`tion programs, physical devices actually present in a System,
`resources for associating the logic devices with the physical
`devices, thereby managing functions of the physical devices
`and functions desired by application programs, and the
`contention apparatus according to the first aspect uses a
`method of arbitrating contention for acceSS from the appli
`cation programs to the physical devices for each resource.
`Thus, it is possible to provide a contention arbitration
`apparatus and method which can be flexibly adapted to a
`change of the physical devices only by changing the
`resource and device information Stored in the contention
`arbitration apparatus. Further, the contention arbitration
`apparatus according to the first embodiment conducts the
`contention arbitration for each resource associated with the
`functions of the physical devices. Thus, it is possible to
`provide a contention arbitration apparatus and method which
`is capable of fully utilizing the advantages of the physical
`devices even if the physical devices have a variety of
`characteristics.
`0037. Further, in the case of granting simultaneous mul
`tiple accesses within a prescribed limit, or in the case of
`granting Simultaneous multiple accesses when a prescribed
`condition is Satisfied, the contention arbitration apparatus
`according to the first aspect is able to grant a plurality of
`application programs an access right to Such a device. In this
`manner, the contention arbitration apparatus according to the
`first aspect is able to conduct contention arbitration So as to
`fully utilize the advantages of the physical devices.
`0038 Furthermore, the contention arbitration apparatus
`according to the first aspect is able to arbitrate contention of
`access to a physical device connected to other physical
`devices which does not have its own I/O port and is shared
`between a plurality of physical devices.
`0039. Further still, the contention apparatus according to
`the first aspect has a mechanism in which when an appli
`cation program provides an access indication, if acceSS is
`allowed, a device driver is executed, and if acceSS is not
`allowed, an error message is returned to the application
`program. Accordingly, the application program is only
`required to handle errors caused when providing the access
`indication. Such a mechanism reduces application program
`developerS burden in development of products.
`0040. Further still, the contention apparatus according to
`the first aspect conducts contention arbitration based on
`priorities assigned to application programs. In particular,
`when accessing a physical device which grants simultaneous
`multiple accesses, the application programs are allowed to
`the physical device in the decreasing order of priority. Thus,
`it is possible to realize complicated exclusive control based
`on the priorities.
`
`17
`
`

`

`US 2004/0098526 A1
`
`May 20, 2004
`
`Further still, whether the application programs are
`0041
`allowed to access the physical device is registered in the
`application information, and therefore it is not necessary to
`determine whether acceSS is allowed each time an acceSS
`indication is provided, leading to an increase in processing
`Speed.
`Further still, in the case where an access right to a
`0.042
`physical device owned by an application program is taken
`by another application program having provided an acceSS
`indication, if access to the physical device becomes avail
`able before the application program having previously
`owned the access right provides an acceSS indication, no
`Special proceSS is required for allowing the application
`program to access the physical device without being notified
`that the access to the physical device has been temporarily
`unavailable.
`0.043
`Further still, in the case of using an application
`program which implements a desired function by Simulta
`neously controlling a plurality of physical devices, it is
`necessary for the application program to be allowed to
`access to the plurality of physical devices in order to
`implement the desired function. AS in the case of the
`contention arbitration apparatus according to the first aspect,
`if access rights are managed for each resource, it is possible
`to execute device drivers required for accessing all the
`plurality of physical devices, thereby implementing the
`desired function. Moreover, if even one physical device is
`unable to be accessed, the contention arbitration apparatus
`according to the present aspect notifies the application
`program of an error.
`0044) Further still, in the case where a part of desired
`functions can be implemented even if access to all the
`physical devices is not allowed, the contention arbitration
`apparatus according to the first embodiment is able to
`execute a device driver So as to allow the application
`program to partially implement the desired functions.
`004.5 These and other objects, features, aspects and
`advantages of the present invention will become more
`apparent from the following detailed description of the
`present invention when taken in conjunction with the
`accompanying drawings.
`BRIEF DESCRIPTION OF THE DRAWINGS
`0.046
`FIG. 1 is a block diagram illustrating the entire
`Structure of a computer System including a contention arbi
`tration apparatus according to an embodiment of the present
`invention;
`0047 FIG. 2 is a schematic diagram illustrating an
`exemplary correspondence among application programs,
`logic devices, resources, and physical devices,
`0.048
`FIG. 3 is another schematic diagram illustrating an
`exemplary correspondence among application programs,
`logic devices, resources, and physical devices,
`0049 FIG. 4 is still another schematic diagram illustrat
`ing an exemplary correspondence among application pro
`grams, logic devices, resources, and physical devices,
`0050 FIG. 5 is a block diagram illustrating the func
`tional configuration of a contention arbitration apparatus 1;
`0051
`FIG. 6 is an exemplary table showing application
`information Stored in an application information Storing
`Section 12;
`
`0.052 FIG. 7 is an exemplary table showing device
`information;
`0053 FIG. 8 is an exemplary table showing resource
`information;
`0054 FIG. 9 is a flowchart illustrating the operation of
`the contention arbitration apparatus 1 when an access Start
`indicatio

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket