CN100458709C - Method and system for interrupting blocking in server safely - Google Patents

Method and system for interrupting blocking in server safely Download PDF

Info

Publication number
CN100458709C
CN100458709C CNB2006101423634A CN200610142363A CN100458709C CN 100458709 C CN100458709 C CN 100458709C CN B2006101423634 A CNB2006101423634 A CN B2006101423634A CN 200610142363 A CN200610142363 A CN 200610142363A CN 100458709 C CN100458709 C CN 100458709C
Authority
CN
China
Prior art keywords
obstructing event
potential
potential obstructing
event
registration table
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 - Fee Related
Application number
CNB2006101423634A
Other languages
Chinese (zh)
Other versions
CN1979430A (en
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 CN1979430A publication Critical patent/CN1979430A/en
Application granted granted Critical
Publication of CN100458709C publication Critical patent/CN100458709C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/524Deadlock detection or avoidance

Abstract

A method safe intermit blocking work in the server, which include: found registration form, register latency block affair in to registration form; execute latency block affair; ensure latency block affair is not respond; visit registration form entry which correspond to the block affair; and adopt emendation by the registration form entry which correspond to the block affair.

Description

The method and system that blocks work in the safe ISR
Technical field
Present disclosure relates to the processing in the computer system; More precisely, present disclosure relates to the method for blocking work in the safe ISR.
Background technology
Computer system typically comprises the combination of hardware (for example semiconductor, circuit board etc.) and software (for example computer program).To promote the computer hardware performance higher along with semiconductor processes and Computer Architecture progressive, and the higher hardware performance of computer software utilization of more complexity grows up, and causes the computer system of today than several years ago the stronger function that has.
Computer system typically comprises the operating system software of control computer basic function, and one or more under the control of operating system the operation to finish the software application of wanting task.For example, typical IBM personal computer can move os/2 operation system, and under the control of os/2 operation system, the user can carry out for example application program of word processor.Along with the lifting of computer capacity, the application program that designs for high-performance computer system becomes very powerful.
Depend on the distribution of shared system resource between different processes, the conflict in the utilization of resources can take place.Because many different processes can be handled simultaneously, two or more processes may need to visit given shared system resource fully simultaneously.But if resource and that process that given process has obtained to use stop because of certain reason is unexpected, the resource of Huo Deing becomes and can not obtain other process so, causes the poor efficiency of processing environment.
For example, the given process of moving on thread can be used for example shared system resource of Mutex object.To such an extent as to Mutex object is to pin a blocks of data to have only a thread can control the object of those data of determining at any time.Obtain this blocks of data because many threads can wish to visit Mutex object, so it is the shared system resource.If thread stops suddenly, to such an extent as to thread has no chance to stop its state, share so that Mutex object meeting " is locked in the outside " thus and can not visit this Mutex object and the use of its companion data with other thread of other process context.This situation can need to stop fully one or more processes and allow shared resource to be " released " so that other process can obtain this shared resource.In another kind of sight, the time span of one section expansion of process meeting " circulation " is used the shared system resource, and has therefore stoped other system process to visit this shared system resource.In some cases, even need restart total system and allow shared resource can obtain again to handle.
If the work of Zu Saiing can hinder other request of server process and all scheduling threads have all blocked like this, it may finally stop fully.If the current solution that this problem is used is to finish time of waiting for specified amount and do not finish with regard to the kill server process in that time as request.This method has spinoff unfortunately, and promptly it has also stopped any other and has sent to the request of apps server.
Therefore, needed is distribution and the administrative mechanism that is used for distributing effectively and controlling the shared system resource of shared system resource.
Summary of the invention
Example embodiment comprises the method for the obstruction work of safety interruption in server, and described method comprises: create registration table; The potential obstructing event of registration in registration table; Carry out potential obstructing event; Determine that potential obstructing event does not respond; Visit and the corresponding registry entries of obstructing event; And take by with the corrective action of the corresponding registry entries of obstructing event indication.
Example embodiment also comprises the system of the obstruction work of safety interruption in server, comprising: the device of creating registration table; The device of the potential obstructing event of registration in registration table; Carry out the device of potential obstructing event; Determine the device that potential obstructing event does not respond; The device of visit and the corresponding registry entries of potential obstructing event; And take by with the device of the corrective action of the corresponding registry entries of potential obstructing event indication.
Example embodiment further comprises to be used for the storage medium according to the machine-readable computer program code coding of syntax parsing buffer zone, storage medium comprises the instruction of the obstruction work of safety interruption in server, and described instruction comprises: create registration table; The potential obstructing event of registration in registration table; Carry out potential obstructing event; Determine that potential obstructing event does not respond; Visit and the corresponding registry entries of potential obstructing event; And take by with the corrective action of the corresponding registry entries of potential obstructing event indication.
Other system according to example embodiment, method and/or computer program are conspicuous after it consults hereinafter drawings and detailed description for a person skilled in the art.All this other systems, method and/or computer program all will comprise in this manual, in the scope of present disclosure, and be subjected to the protection of claims.
Description of drawings
Reference example figure, element identical in the exemplary plot is indicated with identical label in a plurality of figure.
Fig. 1 is that explanation is according to the process flow diagram that blocks the method for work in the example embodiment safety ISR; And
Fig. 2 is the piece figure of explanation according to the registration table of example embodiment.
Embodiment
Here disclosure is the method for blocking work in the safe ISR.The method of blocking work in the safe ISR generally includes: create registration table; The potential obstructing event of registration in registration table; Carry out potential obstructing event; Determine that potential obstructing event does not respond; Visit and the corresponding registry entries of obstructing event; And take by with the corrective action of the corresponding registry entries of obstructing event indication.
With reference now to Fig. 1,, common as 10 descriptions according to the process flow diagram of the method for blocking work in the safe ISR of example embodiment.The first step of blocking the method for work in the safe ISR is shown in process block 12, creates the registration table of potential obstructing event.Registration table will more go through at it with reference to figure 2.As shown in process block 14, before the potential obstructing event of in executive process piece 16, describing or code section, block the method for work in the safe ISR and in registration table, register potential obstructing event.Depending on that potential obstructing event runs succeeded or becomes does not respond, and the method for blocking work in the safe ISR will advance to process block 18 or 20 respectively.The method of blocking work in the safe ISR can be used multiple technologies to determine that potential obstructing event becomes and not respond, and these technology are including, but not limited to using timer or monitoring activity by potential obstructing event execution.
After successfully carrying out obstructing event, block the method for work in the safe ISR and from registration table, delete and the corresponding potential obstructing event clauses and subclauses of potential obstructing event, shown in process block 18.But, if becoming, potential obstructing event do not respond, block the way access and the corresponding registry entries of potential obstructing event of work in the safe ISR, shown in process block 20.Any help is removed the required information of potential obstructing event and can be placed in the instance data of the object of placing in registration table.In example embodiment, registration table can comprise the interface that will realize accordingly with each potential obstructing event.In addition, registration table also can be safeguarded the object of registration or the correlativity between potential obstructing event and its process of registering (promptly sending the thread that application requests arrives).No matter the method for blocking work in the safety ISR is because any reason determines that potential obstructing event can not respond, the method for quoting in the method call that blocks work in the so safe ISR and the corresponding registry entries of potential obstructing event that will interrupt.
Continue Fig. 1, after visit and the corresponding registry entries of potential obstructing event, registration table is searched the position of any registry object related with the potential obstructing event of appointment, shown in process block 22.If there is registry object to exist, the method for blocking work in the safe ISR is called the potential obstructing event that the method for interface definition interrupts not responding then on registry object, shown in process block 24.The method of interface definition is no matter responsible location is to activate not respond potential obstructing event or stop not responding the required control structure of obstructing event.In example embodiment, potential obstructing event recognizes that with potential obstructing event it has interrupted and can take any suitable action to indicate the mode of failure to interrupt.After interrupting not responding the method for potential obstructing event and calling interface definition, block the method for work in the safe ISR and from registration table, delete and the corresponding potential obstructing event clauses and subclauses of potential obstructing event, shown in process block 18.
Turn to Fig. 2 now, the piece figure of the registration table of potential obstructing event is generally as 30 descriptions.The registration table 30 of potential obstruction comprises a plurality of potential obstructing event clauses and subclauses 32.Each potential obstructing event clauses and subclauses 32 can comprise potential obstructing event identifier 34, to the quoting of method of quoting and do not respond to interruption the interface definition of potential obstructing event 38 of the process of the potential obstructing event clauses and subclauses 36 of registration.Potential obstructing event identifier 34 can comprise that memory address, title or other are used for discerning the unique identifying information piece of potential obstructing event.Equally, can comprise that to quoting of the process of the potential obstructing event clauses and subclauses 32 of registration memory address, title or other are used for discerning the unique identifying information piece of the process of the potential obstructing event clauses and subclauses 32 of registration.In addition, can comprise that to quoting of the method for the interface definition that interrupts not responding potential obstructing event memory address, title or other can be used for quoting the quoting of method of the interface definition that interruption do not respond potential obstructing event.
In the particular example embodiment, potential obstructing event can be the application program of reserved resource.For example, application program may be the network communication application that can open socket and send a message to remote server and use read () function wait remote server to respond then.In this example, before opening socket, application program can registration interface realize in registration table.If system determines that application program needs to interrupt, interrupt method can drive on the object of registration so.When the interruption method drove on the object of registration, it can be provided with mark and close socket.Application program can and be understood checkmark and be provided with and reported that it has been apprised of and stop wait-for-response because its read () wrong (because socket is closed) is waken up.In this case, if the sign that the indication application program is interrupted by interrupt method is not provided with, application program can be reported communication failure so.In optional example embodiment, can carry out registration and Interrupt Process is provided to the connector (rather than application program) of back-end data base or other foundation code.
As mentioned above, embodiment of the present invention can computer implemented process embody with the form of putting into practice the device of those processes.The form that embodiment of the present invention also can comprise the computer program code of instruction embodies, instruction is included in the tangible medium, for example floppy disk, CD-ROM, hard disk or any other computer-readable recording medium, wherein, when computer program code was loaded into and is carried out by computing machine, computing machine becomes put into practice device of the present invention.The present invention also can for example be stored in storage medium, is loaded into also/by computing machine carry out or for example by electric wire or cable, the form of the computer program code that transmits on by optical fiber or some transmission medium by electromagnetic radiation embodies, wherein, when computer program code was loaded into and is carried out by computing machine, computing machine becomes put into practice device of the present invention.When realizing on general purpose microprocessor, the computer program code segments configure microprocessor is created special logical circuit.
Describe although present disclosure is the reference example embodiment, those skilled in the art should be understood under the situation of the scope that does not deviate from present disclosure, can carry out various variations and can replace its element with equivalent.In addition, under the situation that does not deviate from the present disclosure essential scope, can carry out many modifications to the religious doctrine of present disclosure and adapt to special sight or material.Therefore, present disclosure is not the disclosed particular embodiment of optimal mode that will be limited to as planning to carry out present disclosure, but present disclosure will comprise all embodiments that belongs to the claims scope.

Claims (10)

1, the method for the obstruction work of a kind of safety interruption in server comprises:
Create registration table;
The potential obstructing event of registration in registration table;
Carry out potential obstructing event;
Determine that potential obstructing event does not respond;
Visit and the corresponding registry entries of potential obstructing event; And
Take by with the corrective action of the corresponding registry entries of potential obstructing event indication.
2, the method for claim 1 further comprises the potential obstructing event of deletion from registration table.
3, the method for claim 1 wherein uses timer to determine that potential obstructing event does not respond.
4, the method for claim 1, wherein corrective action comprises the one or more system resources that kept by potential obstructing event of release.
5, the method for claim 1, described registry entries comprise obstructing event identifier and quoting the process of registering potential obstructing event clauses and subclauses.
6, the system of the obstruction work of a kind of safety interruption in server comprises:
Create the device of registration table;
The device of the potential obstructing event of registration in registration table;
Carry out the device of potential obstructing event;
Determine the device that potential obstructing event does not respond;
The device of visit and the corresponding registry entries of potential obstructing event; With
Take by with the device of the corrective action of the corresponding registry entries of potential obstructing event indication.
7, system as claimed in claim 5 further comprises the potential obstructing event of deletion from registration table.
8, system as claimed in claim 5 wherein uses timer to determine that potential obstructing event does not respond.
9, system as claimed in claim 5, wherein corrective action comprises the one or more system resources that kept by potential obstructing event of release.
10, system as claimed in claim 5, described registry entries comprise obstructing event identifier and quoting the process of registering potential obstructing event clauses and subclauses.
CNB2006101423634A 2005-12-08 2006-10-11 Method and system for interrupting blocking in server safely Expired - Fee Related CN100458709C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/296,986 2005-12-08
US11/296,986 US7788529B2 (en) 2005-12-08 2005-12-08 Method for safely interrupting blocked work in a server

Publications (2)

Publication Number Publication Date
CN1979430A CN1979430A (en) 2007-06-13
CN100458709C true CN100458709C (en) 2009-02-04

Family

ID=38130608

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101423634A Expired - Fee Related CN100458709C (en) 2005-12-08 2006-10-11 Method and system for interrupting blocking in server safely

Country Status (4)

Country Link
US (1) US7788529B2 (en)
JP (1) JP2007157125A (en)
CN (1) CN100458709C (en)
TW (1) TWI413000B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107544840A (en) * 2016-06-28 2018-01-05 北京优朋普乐科技有限公司 A kind of process management method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1459718A (en) * 2002-05-23 2003-12-03 联想(北京)有限公司 Method of activating hand held information equipment button
US6738974B1 (en) * 1998-09-10 2004-05-18 International Business Machines Corporation Apparatus and method for system resource object deallocation in a multi-threaded environment
WO2005045668A1 (en) * 2003-10-24 2005-05-19 Microsoft Corporation System and method for extending application preference classes
CN1635476A (en) * 2003-12-25 2005-07-06 金宝电子工业股份有限公司 Loading interrupt service method

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5305455A (en) 1990-12-21 1994-04-19 International Business Machines Corp. Per thread exception management for multitasking multithreaded operating system
JPH04367951A (en) * 1991-06-17 1992-12-21 Fujitsu Ltd Memory stagnancy preventing system
JPH06295248A (en) * 1993-04-08 1994-10-21 Mitsubishi Electric Corp Task resource release system
JPH06332876A (en) * 1993-05-18 1994-12-02 Mitsubishi Electric Corp Inter-system exclusive control system
JPH0926888A (en) 1995-07-13 1997-01-28 Hitachi Ltd Exclusive controller
US6301676B1 (en) * 1999-01-22 2001-10-09 Sun Microsystems, Inc. Robust and recoverable interprocess locks
US6591418B2 (en) * 1999-03-26 2003-07-08 Dell U.S.A., L.P. Factory software management system
CA2347404C (en) 2001-05-10 2008-11-18 Corel Corporation System and method for recovering applications
JP4253466B2 (en) * 2002-05-08 2009-04-15 株式会社リコー Image forming apparatus and shared memory arbitration method
JP2004126634A (en) 2002-09-30 2004-04-22 Nec Software Chubu Ltd File protection system
JP2004246439A (en) * 2003-02-12 2004-09-02 Nec Corp System for preventing stall in cluster system, and method and program therefor
US7360223B2 (en) 2003-09-24 2008-04-15 Hewlett-Packard Development Company, L.P. Arrangements and methods for invoking an upcall in a computer system
JP4280919B2 (en) 2003-12-25 2009-06-17 日本電気株式会社 Replication management system, replication management method, and replication management program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738974B1 (en) * 1998-09-10 2004-05-18 International Business Machines Corporation Apparatus and method for system resource object deallocation in a multi-threaded environment
CN1459718A (en) * 2002-05-23 2003-12-03 联想(北京)有限公司 Method of activating hand held information equipment button
WO2005045668A1 (en) * 2003-10-24 2005-05-19 Microsoft Corporation System and method for extending application preference classes
CN1635476A (en) * 2003-12-25 2005-07-06 金宝电子工业股份有限公司 Loading interrupt service method

Also Published As

Publication number Publication date
US20070240015A1 (en) 2007-10-11
TW200809630A (en) 2008-02-16
US7788529B2 (en) 2010-08-31
JP2007157125A (en) 2007-06-21
CN1979430A (en) 2007-06-13
TWI413000B (en) 2013-10-21

Similar Documents

Publication Publication Date Title
TWI537831B (en) Multi-core processor,method to perform process switching,method to secure a memory block, apparatus to enable transactional processing using a multi core device and method to perform memory transactional processing
US9727372B2 (en) Scheduling computer jobs for execution
JP5370936B2 (en) Multiprocessor system, system configuration method in multiprocessor system, and program thereof
JP6606064B2 (en) Support for cloud-based multi-tenant environments using connection labeling
US8442960B1 (en) Systems and methods for process self-elevation
CN105051690A (en) Systems and methods of using a hypervisor with guest operating systems and virtual processors
JP3976065B2 (en) Multiprocessor system and program for causing computer to execute interrupt control method of multiprocessor system
US20200110634A1 (en) Managing Task Dependency
CN107003896B (en) Apparatus with shared transaction processing resources and data processing method
CN104272256A (en) Task processor
KR20140131961A (en) Arbitration of disk ownership in a storage pool
CN102591668B (en) Device, method and system for updating elastic computing cloud system
JP2004213637A (en) Method and device managing thread implementation in multithread application
CN102713850A (en) Transactional updating in dynamic distributed workloads
EP1384151B1 (en) Clean thread termination
EP1876529A1 (en) Multi-processor system and program for causing computer to execute multi-processor system control method
CN100458709C (en) Method and system for interrupting blocking in server safely
US7797473B2 (en) System for executing system management interrupts and methods thereof
WO2023241307A1 (en) Method and apparatus for managing threads
US7240043B2 (en) Method of controlling storage control apparatus, storage control apparatus, and computer readable program for controlling the same
TW200813819A (en) Computer micro-jobs
JP2007141155A (en) Multi-core control method in multi-core processor
CN114115703A (en) Bare metal server online migration method and system
US8327378B1 (en) Method for gracefully stopping a multi-threaded application
KR102333693B1 (en) Method and apparatus for operating multi-processor system in electronic device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090204

Termination date: 20201011