← Back to Patent Explorer
US5566337A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for distributing events in an operating system

Assignee: Apple Inc
•
Filing: 1994-05-13
•
Granted: 1996-10-15
•
Expires: 2014-05-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In a computer including an operating system, an event producer for generating an event and detecting that an event has occurred in the computer and an event consumer which need to be informed when events occur in the computer, a system for distributing events including a store for storing a specific set of events of which the at least one event consumer is to be informed, an event manager control unit for receiving the event from the event producer, comparing the received event to the stored set of events, and distributing an appropriate event to an appropriate event consumer, and a distributor for receiving the event from the control unit and directing the control unit to distribute an appropriate event to an appropriate event consumer.

Inventors

  • 👤 Steven J. Szymanski
  • 👤 Thomas E. Saulpaugh
  • 👤 William J. Keenan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 23:04
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/54; G06F9/542

Claims Analysis

Total Claims: 27
Claim 1
Independent Claim 125 words
In a computer including at least one event producer for detecting that an event has occurred in the computer and generating an event and at least one event consumer which needs to be informed when events occur in the computer, a system for distributing events comprising: storing means for storing a specific set of events of which said at least one event consumer is to be informed; event manager control means for receiving the event from the event producer, comparing the received event to the stored set of events, and distributing an appropriate event to an appropriate event consumer; and distributor means for receiving the event from the control means and directing said control means to distribute an appropriate event to an appropriate event consumer.
Claim 2
Dependent Claim 125 words
In a computer including at least one event producer for detecting that an event has occurred in the computer and generating an event and at least one event consumer which needs to be informed when events occur in the computer, a system for distributing events comprising: storing means for storing a specific set of events of which said at least one event consumer is to be informed; event manager control means for receiving the event from the event producer, comparing the received event to the stored set of events, and distributing an appropriate event to an appropriate event consumer; and distributor means for receiving the event from the control means and directing said control means to distribute an appropriate event to an appropriate event consumer.
Claim 3
Dependent Claim 23 words
The system according to claim 1, wherein said distributor means comprises a distributor module for each kind of event possible in the computer.
Claim 4
Dependent Claim 95 words
The system according to claim 1, wherein a plurality of event consumers are included in the computer and the plurality of consumers comprise: broadcast consumers having no relationship with other consumers, the broadcast consumers operating independently of other consumers and of the order in which consumers are informed of the event; and sequential consumers having relationships with other consumers, the sequential consumers requiring that no other consumer be told about an event while they themselves are processing the event and having an ability to influence when they receive the event relative to the other consumers.
Claim 5
Dependent Claim 91 words
The system according to claim 3, wherein said distributor means comprises: means for determining if the event is to be sent to broadcast consumers with a signal indicating that the distributor means maintains a right to modify the event based on subsequent events until the broadcast consumers receive the event; and means, responsive to a positive determination by said means for determining, for directing said control means to distribute the event to the appropriate broadcast consumers with a signal indicating that the distributor means maintains the right to modify the event.
Claim 6
Dependent Claim 223 words
The system according to claim 3, wherein said distributor means comprises: first means for determining if the event is to be sent to broadcast consumers with a signal indicating that the distributor means maintains a right to modify the event; second means, responsive to a positive determination by said first means for determining, for determining if the event is to be passed to all broadcast consumers; means, responsive to a positive determination by said second means for determining, for directing said control means to distribute the event to all broadcast consumers with a signal indicating that the distributor means maintains the right to modify the event; means, responsive to a negative determination by said second means for determining, for directing said control means to distribute the event to select broadcast consumers with a signal indicating that the distributor means maintains the right to modify the event; third means, responsive to a negative determination by said first means for determining, for determining if the event is to be sent to all broadcast consumers; means, responsive to a positive determination by said third means for determining, for directing said control means to distribute the event to all broadcast consumers; and means, responsive to a negative determination by said third means for determining, for directing said control means to distribute the event to select broadcast consumers.
Claim 7
Dependent Claim 43 words
The system according to claim 3, wherein said storing means comprises: a subscription matrix for storing subscriptions to events in which the broadcast consumers are interested; and a sequential consumer database for storing entries to events in which the sequential consumers are interested.
Claim 8
Dependent Claim 45 words
The system according to claim 3, wherein said storing means comprises an event queue corresponding to each of the broadcast consumers for receiving distributed events from said control means and for storing the distributed events until the events are consumed by the corresponding broadcast consumer.
Claim 9
Dependent Claim 32 words
The system according to claim 3, wherein said control means comprises means for passing an event to the sequential consumers in succession in accordance with the entries in the sequential consumer database.
Claim 10
Dependent Claim 28 words
The system according to claim 8, wherein said control means comprises means for prohibiting passing of an event upon receiving an event handled message from a sequential consumer.
Claim 11
Dependent Claim 160 words
A computer system comprising: event producers for detecting that an event has occurred in the computer, generating an event, and generating a description of the event; event consumers which need to be informed when events occur in the computer, said event consumers comprising a first and a second class of consumers; storing means for storing a specific set of events of which the event consumers are to be informed; event manager control means for receiving the event from the event producers and comparing the received event to the stored set of events; distributor means, responsive to said event control means, for deciding if an event should be passed to an event consumer; said event manager control means comprising: first means for sending an event to appropriate event consumers of a first class in accordance with the stored set of events, and second means for sending the event to appropriate event consumers of a second class responsive to said distributor means.
Claim 12
Dependent Claim 160 words
A computer system comprising: event producers for detecting that an event has occurred in the computer, generating an event, and generating a description of the event; event consumers which need to be informed when events occur in the computer, said event consumers comprising a first and a second class of consumers; storing means for storing a specific set of events of which the event consumers are to be informed; event manager control means for receiving the event from the event producers and comparing the received event to the stored set of events; distributor means, responsive to said event control means, for deciding if an event should be passed to an event consumer; said event manager control means comprising: first means for sending an event to appropriate event consumers of a first class in accordance with the stored set of events, and second means for sending the event to appropriate event consumers of a second class responsive to said distributor means.
Claim 13
Dependent Claim 23 words
The system according to claim 10, wherein said distributor means comprises a distributor module for each kind of event possible in the computer.
Claim 14
Dependent Claim 90 words
The system according to claim 10, wherein said first class of consumers comprise sequential consumers having relationships with other consumers, the sequential consumers requiring that no other consumer be told about an event while they themselves are processing it, and having an ability to influence when they receive the event relative to the other consumers; and said second class of consumers comprise broadcast consumers having no relationship with other consumers, the broadcast consumers operating independently of other consumers and of the order in which consumers are informed of the event.
Claim 15
Dependent Claim 91 words
The system according to claim 12, wherein said distributor means comprises: means for determining if the event is to be sent to broadcast consumers with a signal indicating that the distributor means maintains a right to modify the event based on subsequent events until the broadcast consumers receive the event; and means, responsive to a positive determination by said means for determining, for directing said control means to distribute the event to the appropriate broadcast consumers with a signal indicating that the distributor means maintains the right to modify the event.
Claim 16
Dependent Claim 43 words
The system according to claim 12, wherein said storing means comprises: a subscription matrix for storing subscriptions to events in which the broadcast consumers are interested; and a sequential consumer database for storing entries to events in which the sequential consumers are interested.
Claim 17
Dependent Claim 45 words
The system according to claim 12, wherein said storing means comprises an event queue corresponding to each of the broadcast consumers for receiving distributed events from said control means and for storing the distributed events until the events are consumed by the corresponding broadcast consumer.
Claim 18
Dependent Claim 32 words
The system according to claim 12, wherein said control means comprises means for passing an event to the sequential consumers in succession in accordance with the entries in a sequential consumer database.
Claim 19
Dependent Claim 28 words
The system according to claim 16, wherein said control means comprises means for prohibiting passing of an event upon receiving an event handled message from a sequential consumer.
Claim 20
Independent Claim 109 words
A method for distributing events occurring in a computer, said method comprising the steps of: determining that an event has been detected by an event producer in the computer; storing, in a storing means, a specific set of events of which an event consumer is to be informed; receiving the event in an event control means from the event producer; comparing the received event to the stored set of events; receiving the event in a distributor means from the control means; directing the control means to distribute an appropriate event to an appropriate event consumer; and distributing, via the control means, an appropriate event to an appropriate event consumer.
Claim 21
Independent Claim 109 words
A method for distributing events occurring in a computer, said method comprising the steps of: determining that an event has been detected by an event producer in the computer; storing, in a storing means, a specific set of events of which an event consumer is to be informed; receiving the event in an event control means from the event producer; comparing the received event to the stored set of events; receiving the event in a distributor means from the control means; directing the control means to distribute an appropriate event to an appropriate event consumer; and distributing, via the control means, an appropriate event to an appropriate event consumer.
Claim 22
Dependent Claim 71 words
The method according to claim 18, wherein the event consumer comprises a plurality of consumers including broadcast consumers which operate independently from one another and of the order in which consumers are informed of events and sequential consumers which require that no other consumer be told about an event while they themselves are processing it and have an ability to influence when they receive the event relative to the other consumers.
Claim 23
Dependent Claim 67 words
The method according to claim 19, wherein said step of distributing comprises the steps of: determining if the event is to be sent to broadcast consumers with a right to modify the event based on subsequent events until the broadcasts consumers receive the event; and distributing the event to the appropriate broadcast consumers with the right to modify responsive to a positive determination by said step determining.
Claim 24
Dependent Claim 47 words
The method according to claim 19, wherein said step of storing comprises the steps of: storing, in a subscription matrix, subscriptions to events in which the broadcast consumers am interested; and storing, in a sequential consumer database, entries to events in which the sequential consumers are interested.
Claim 25
Dependent Claim 42 words
The method according to claim 19, further comprising the steps of: receiving distributed events in an event queue corresponding to a broadcast consumer; and storing the distributed events in the event queue until the events are consumed by the corresponding broadcast consumer.
Claim 26
Dependent Claim 42 words
The method according to claim 19, wherein the step of distributing comprises the step of passing an event to the sequential consumers in succession upon receiving a continue message from a sequential consumer indicating that it has completed processing of the event.
Claim 27
Dependent Claim 31 words
The method according to claim 23, wherein the step of distributing further comprises the step of prohibiting passing of an event upon receiving an event handled message from a sequential consumer.

References Cited (Backward Citations)

WO1991003017A1 Cited
US5155842A Cited
US5291608A Cited
EP0528222A2 Cited
US5237684A Cited
US5305454A Cited
US5355484A Cited
US5321837A Cited
US5430875A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-10-15 2000-04-15 2000-10-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-10-15 2004-04-15 2004-10-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-10-15 2008-04-15 2008-10-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag