DE60035324T2 - Überwachung von Rechnerbenutzung - Google Patents

Überwachung von Rechnerbenutzung Download PDF

Info

Publication number
DE60035324T2
DE60035324T2 DE60035324T DE60035324T DE60035324T2 DE 60035324 T2 DE60035324 T2 DE 60035324T2 DE 60035324 T DE60035324 T DE 60035324T DE 60035324 T DE60035324 T DE 60035324T DE 60035324 T2 DE60035324 T2 DE 60035324T2
Authority
DE
Germany
Prior art keywords
utility
window
program
application
monitoring method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60035324T
Other languages
English (en)
Other versions
DE60035324D1 (de
Inventor
Martin Dundalk McCreesh
Joseph Cabinteely Stockton
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.)
Iontas Ltd
Original Assignee
Iontas Ltd
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 Iontas Ltd filed Critical Iontas Ltd
Publication of DE60035324D1 publication Critical patent/DE60035324D1/de
Application granted granted Critical
Publication of DE60035324T2 publication Critical patent/DE60035324T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time

Description

  • EINFÜHRUNG Gebiet der Erfindung
  • Die Erfindung bezieht sich auf eine Überwachung einer Benutzung von Rechnern, wie vernetzten PCs.
  • Erörterung des Stands der Technik
  • Die Bereitstellung von Programmen zum Ausführen einer solchen Überwachung ist bekannt. Beispielsweise beschreibt die US-Patentschrift Nr. 5675510 (PC Meter L.P.) ein System, bei dem Fenstertitel benutzt werden, um einen Gebrauch zu ermitteln und um Einträge in einer Protokolldatei zu machen. Es besteht jedoch immer noch ein Bedarf nach einem System zum Erfassen von mehr Informationen für eine Benutzung bei einer Erzeugung von umfassenden Berichten, wie Berichte für Unternehmensorganisationen mit vielen Mitarbeitern, die Computer benutzen. Es besteht ferner ein Bedarf nach einer verbesserten Sicherheit bei einem Betrieb von Überwachungsprogrammen, um eine Integrität von berichteten Daten zu verbessern.
  • Die US5774718 beschreibt ein Verfahren zum Überwachen einer kumulativen CPU-Zeit und Ruhezeit für eine Mehrzahl von Prozessen, die auf einer Zeitschachtelungsbasis ausgeführt werden. Die US587296 beschreibt ein Überwachungssystem, das Events einer Anwendung und eines Betriebssystems erfasst.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß der Erfindung wird ein Computergebrauchsüberwachungsverfahren wie in Anspruch 1 dargelegt bereitgestellt.
  • Bei einem Ausführungsbeispiel zeichnet das Verfahren ein Event für jede von einem Benutzer benutzte Anwendung auf und wendet eine Produktivitätsklassifizierung für jedes Event an.
  • Bei einem Ausführungsbeispiel greift das Dienstprogramm auf eine Klassifizierungstabelle zu, in der eine Produktivitätsklassifizierung Anwendungsgruppen, Anwendungen und Fenstertext-Schlüsselwörtern zugewiesen wird.
  • Bei einem Ausführungsbeispiel versucht das Dienstprogramm, Produktivität in Folge nach Anwendungsgruppe, Anwendung und Schlüsselwörtern zu klassifizieren.
  • Bei einem Ausführungsbeispiel prüft das Dienstprogramm auf ein aktives Fenster in periodischen Rückrufintervallen und markiert einen Ruheanzeiger, wenn die Benutzeraktivität unterhalb eines Schwellenwertes liegt.
  • Bei einem Ausführungsbeispiel ermittelt das Dienstprogramm Gebrauchsdaten gemäß einer erfassten Anzahl von Aktionen von Benutzereingabegeräten wie z.B. einer Tastatur und einer Maus.
  • Bei einem Ausführungsbeispiel inkrementiert das Dienstprogramm eine Ruhezahl in periodischen Intervallen, wenn ein Eingabegerät inaktiv ist, und markiert ein Fenster als im Ruhezustand, wenn die Zahl einen Schwellenwert erreicht.
  • Bei einem Ausführungsbeispiel erfasst das Dienstprogramm eine aktive URL-Adresse, wenn die aktive Anwendung ein Browser ist.
  • Bei einem Ausführungsbeispiel umfasst das Dienstprogramm ein zweites Schutzprogramm, das das Hauptprogramm oder das erste Schutzprogramm reaktiviert, wenn eines davon zu arbeiten aufhört, und sich selbst terminiert, wenn es mit der Ausführung fertig ist.
  • Bei einem Ausführungsbeispiel schreibt das Hauptprogramm eine Alarmmeldung auf eine Protokolldatei, wenn ein Schutzprogramm terminiert wird.
  • Bei einem Ausführungsbeispiel umfasst das Dienstprogramm einen „Live"-Übertragungsmechanismus, der automatisch Event-Datensätze in Echtzeit zu einem Server überträgt.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG Kurze Beschreibung der Zeichnungen
  • Die Erfindung wird aus der folgenden Beschreibung von einigen Ausführungsbeispielen derselben, die lediglich beispielhalber angeführt sind, unter Bezugnahme auf die beigefügten Zeichnungen klarer verständlich. Es zeigen:
  • 1 ein Flussdiagramm, das einen Betrieb einer Initialisierungsroutine für ein Datensammlungsdienstprogramm der Erfindung darstellt;
  • 2 bis 8 Flussdiagramme, die einen Betrieb des Dienstprogramms darstellen;
  • 9 ein Diagramm, das einen Schutz des Dienstprogramms darstellt; und
  • 10 ein Diagramm, das eine Erfassung von Produktivitätsinformationen darstellt.
  • Beschreibung der Ausführungsbeispiele
  • Bezug nehmend auf 1 ist ein Initialisierungsprozess 1 für ein Datensammlungsdienstprogramm der Erfindung dargestellt. Das Dienstprogramm arbeitet als ein Hintergrundprozess in einem PC eines Benutzers auf eine transparente Art und Weise mit einer minimalen Wirkung auf Anwendungen, die auf dem Computer laufen.
  • Bei einem Schritt 2 wird ein inneres verstecktes Fenster erzeugt, und bei einem Schritt 3 werden Dynamische Verbindungsbibliotheken (englisch: Dynamic Linked Libraries; DLLs) für einen Betrieb des Dienstprogramms geladen. Bei einem Schritt 4 liest das Dienstprogramm Konfigurationseinstellungen aus dem Systemregister, und bei einem Schritt 5 richtet dasselbe Tastatur- und Mausanschlüsse ein. Bei einem Schritt 6 wird in einem Speicher ein „Schnappschuss"-Zeitgeber eingerichtet. Bei einem Schritt 7 wird ein Schutz-Thread gestartet. Dies ist ein unabhängiger Thread, der jede Sekunde auf das Vorhandensein eines Stoppmutex und auf das Vorhandensein eines Schutzmutex, die im Folgenden im Detail beschrieben sind, prüft. Bei einem Schritt 8 werden ausstehende Protokolldateien übertragen, und bei einem Schritt 9 wird eine Hochstart-Alarmmeldung zum Anzeigen der Startzeit aufgezeichnet.
  • In 2 ist ein Haupt-Eventprozess 20 dargestellt, und wie durch einen Entscheidungsschritt 21 angezeigt ist, sind die drei möglichen Events der Schnappschusszeitgeber-Rückruf 22, die Betriebssystemabschaltung 23 und die Aufgabenbeendigungsanfrage 30. Ein Schnappschusszeitgeber-Rückrufprozess 22 wird für den Hauptbetrieb des Dienstprogramms aktiviert. Dies ist im Folgenden im Detail beschrieben. Der Haupt-Eventprozess 20 umfasst ferner einen Betriebssystem-(WindowsTM in diesem Ausführungsbeispiel) Abschaltungsprozess 23. Derselbe umfasst bei einem Schritt 24 ein Aufzeichnen einer Alarmmeldung mit der Abschaltezeit und schreibt in einem „Letzten-Eintrag-Ausschreiben"-Prozess 64 einen Eintrag aus, um Datensätze in einem Speicher in eine Plattendatei zu sichern. Eine Betriebssystemabschaltung resultiert ferner bei einem Schritt 50 in einem Versuch des Dienstprogramms, Dateien zu einem Server zu übertragen. Bei einem Schritt 27 wird der Schutz-Thread gestoppt, und bei einem Schritt 28 beendet sich das Dienstprogramm. Der Aufgabenbeendigungsanfrage-Prozess 30 entsteht bei einem Versuch, einen Betrieb des Dienstprogramms zu stoppen. Bei einem Schritt 31 wird eine Alarmmeldung aufgezeichnet, bei einem Schritt 64 werden Speicherdatensätze in eine Datei gesichert, und bei einem Schritt 50 wird ein Dateiübertragungsversuch gemacht. Gemäß einem Entscheidungsschritt 34 wird, wenn ein Stopp-Flag eingestellt ist (das ein autorisiertes Schließen des Dienstprogramms anzeigt), bei einem Schritt 35 der Schutz-Thread gestoppt. Wenn nicht, beendet sich das Dienstprogramm bei einem Schritt 36.
  • Eine Primäroperation des Dienstprogramms ist der Rückrufprozess 22, der nun unter Bezugnahme auf 3 im Detail beschrieben ist. Dieser Prozess wird in periodischen Intervallen, die konfigurierbar sind, gestartet. Ein typisches Intervall ist 5 Sek. Bei einem Schritt 40 prüft der Schutz-Thread, ob durch das Schließprogramm des Dienstprogramms der Stoppmutex eingestellt wurde. Der Stoppmutex wird benutzt, um einem autorisierten Benutzer oder Prozess zu erlauben, das Dienstprogramm für ein Upgrade oder aus einem anderen autorisierten Grund zu terminieren. Wenn dies eingestellt ist, zeichnet das Dienstprogramm eine Alarmmeldung auf, die besagt, dass sich dasselbe geschlossen hat, und die Alarmmeldung umfasst Details des Benutzers oder Prozesses, der den Stoppmutex benutzt hat. Bei einem Schritt 50 werden die Protokolldateien übertragen, und bei einem Schritt 53 wird das Dienstprogramm geschlossen.
  • Der Schutz-Thread prüft ferner jede Sekunde auf den Schutzmutex, wie im Folgenden im Detail beschrieben ist.
  • Wenn der Stoppmutex nicht eingestellt wurde, holt das Dienstprogramm bei einem Schritt 41 das aktive Fenster und holt bei einem Schritt 42 unter Benutzung der Anschlüsse, die bei der Initialisierung eingerichtet wurden, die Tastenanschlag- und die Maus-Event-Zahl. Dies wird durch Benutzen der Funktion „SetWindowsHookEx" in WindowsTM, um jede Tastatur- und Mausaktivität zu erfassen, erreicht. Bei jedem Tastenanschlag und jeder Mausaktion wird ein Zähler inkrementiert.
  • Wie durch einen Entscheidungsschritt 43 angezeigt, wird, wenn es keine Tastatur- oder Mausaktivität gegeben hat, bei einem Schritt 44 eine Ruhezahl inkrementiert und dann bei einem Schritt 45 gegen eine Benutzereinstellung geprüft. Wenn die Zahl die Benutzereinstellung überschreitet, wird das Fenster bei einem Schritt 47 als im Ruhezustand markiert. Wenn es eine Maus- oder Tastaturaktivität gegeben hat, wird die Ruhezahl bei einem Schritt 46 zurückgesetzt.
  • Dann wird ein „Aktivfenster"-Prozess 48 ausgeführt. Wie durch den Entscheidungsschritt 49 angezeigt, wird, wenn die nächste Dateiübertragungszeit erreicht ist, der „Dateiübertragungs"-Prozess 50 implementiert. Somit zeichnet das Dienstprogramm effektiv sowohl eine Benutzeraktivität in Bezug auf Anwendungen als auch, wann das System im Ruhezustand ist, in der Form von „Ruhe-Events" auf.
  • Nun auf 4 Bezug nehmend, ist der „Aktivfenster"-Prozess 48 beschrieben. Dieser Prozess stellt sicher, dass es ein Event gibt, entweder (a) wenn eine Rahmenzeit von 15 Minuten abläuft, oder (b) wenn eine Anwendung geändert wird, je nachdem, was früher eintritt. Es gibt daher mindestens pro Rahmenperiode ein Event, und dies erlaubt Event-Datenbank-Berichtsprogrammen, Zeitlinien, die mit den Rahmen synchronisiert sind, zu benutzen.
  • Bei einem Schritt 60 erfasst das Dienstprogramm den Fenstertiteltext, um eine Anzeige dessen zu liefern, was der Benutzer tut. Bei einem Schritt 61 prüft dasselbe, ob der Titel ein allgemeiner Shell-Titel, wie „Programmmanager", ist, der ignoriert werden kann. Der aktuelle Datensatz in dem Speicher wird bei dem Ende jedes Rahmens auf Platte gesichert. Der neue Datensatz, der erzeugt wird, hat die gleichen Informationen wie der vorhergehende Datensatz, jedoch ein Dauer-Feld, das auf Null eingestellt ist. Das Dienstprogramm überwacht eine Echtzeit für einen Ablauf der aktuellen Rahmenperiode, wie bei einem Schritt 62 angezeigt. Wenn dieselbe abgelaufen ist, bestimmt das Dienstprogramm bei einem Schritt 63, ob der aktuelle Eintrag in dem vorhergehenden oder dem neuen Rahmen auftrat, und führt den „Letzten-Eintrag-Ausschreiben"-Prozess 64 aus, dem der „Neuen-Eintrag-Erzeugen"-Prozess 65 folgt. Das Dienstprogramm bestimmt bei einem Schritt 66, ob das aktuelle Fenster das gleiche wie das letzte Fenster ist, und kehrt, wenn ja, bei einem Schritt 70 zu der Rückrufroutine 22 zurück. Wenn nein, berechnet dasselbe bei einem Schritt 67 die Dauer des letzten Eintrags unter Benutzung der folgenden Zähler:
    eines Vordergrundzählers der Zeit, in der das Fenster Tastatur- oder Maus-Benutzereingaben empfangen hat,
    eines Tastenanschlagzählers und
    eines Maus-Event-Zählers.
  • Dann werden der „Letzten-Eintrag-Ausschreiben"-Prozess 64 und der „Neuen-Eintrag-Erzeugen"-Prozess 65 implementiert. Auf diese Weise gibt es ein Ausschreiben des letzten Eintrags bei entweder einer Rahmen-Zeitüberschreitung oder einem Benutzen einer neuen Anwendung, je nachdem, was früher eintritt.
  • Bezug nehmend auf 5 ist nun der „Letzten-Eintrag-Ausschreiben"-Prozess 64 beschrieben. Wie durch einen Schritt 80 angezeigt, bestimmt das Dienstprogramm, ob eine Dateiübertragung im Gang ist, und fügt, wenn ja, bei einem Schritt 89 den Eintrag zu einer temporären Liste hinzu. Wenn nein, prüft dasselbe bei einem Schritt 81, ob die temporäre Liste leer ist. Wenn dieselbe nicht leer ist, holt dasselbe bei einem Schritt 82 den Eintrag an dem Kopf der Liste, und wenn dieselbe leer ist, benutzt dasselbe den aktuellen Eintrag. Bei einem Schritt 84 prüft dasselbe, ob ein URL-Flag eingestellt wurde, das anzeigt, dass ein Browser die aktive Anwendung ist. Wenn ja, fügt dasselbe die URL-Adresse an den Fenstertext in dem Speicher an.
  • Bei einem Schritt 86 wird der Eintrag verschlüsselt, und bei einem Schritt 87 wird der Eintrag in die Protokolldatei geschrieben. Die verschlüsselten Daten sind binär mit Prüfsummen. Wie durch den Entscheidungsschritt 88 angezeigt, werden die Schritte 81 bis 87 wiederholt, bis alle Einträge ausgeschrieben sind.
  • In 6 ist der Prozess 65 zum Erzeugen eines neuen Eintrags dargestellt. Bei einem Schritt 100 wird ein Speicher zugewiesen, und bei einem Schritt 101 werden Variablen initialisiert. Die Variablen sind der Benutzername, der Rechnername, die aktuelle Zeit und der Fenstertitel. Es wird eine Fensterliste geführt, und wenn das aktuelle Fenster bereits in der Liste ist (Schritt 102), wird der Anwendungsname bei einem Schritt 110 aus der Fensterliste abgerufen. Diese Liste minimiert die Anzahl von Suchläufen, die ausgeführt werden müssen. Ein Platzieren eines Fensters in dem Hintergrund oder ein Minimieren desselben resultiert somit nicht in einer neuen Prozessbaumsuche, wenn dieses Fenster wieder aktiv wird. Wenn dasselbe nicht in der Liste ist, holt das Dienstprogramm bei einem Schritt 103 die ID der Anwendung. Wenn das Betriebssystem NTTM ist (Schritt 104), ermittelt das Dienstprogramm einfach bei einem Schritt 105 die Verhaltensstatistik für die ID. Wenn dasselbe nicht NTTM ist, durchsucht das Dienstprogramm bei einem Schritt 106 die Anwendungen unter Benutzung von Toolhelp-Routinen. Dies bringt mit sich, einen Schnappschuss aller laufenden Prozesse zu machen und jeden, der eine ".exe"-, eine „.scr"-Erweiterung oder andere ausführbare Dateinamenerweiterungen hat, nach dem einen mit einer Prozess-ID, die mit der Prozess-ID, die dem aktuellen Fenster-Handle zugeordnet ist, übereinstimmt, zu durchsuchen. Wie durch die Schritte 107 und 109 angezeigt, wird der Wert „UNKNOWN" („unbekannt") geschrieben, wenn die Anwendungsdetails nicht ermittelt werden, und werden dieselben bei einem Schritt 108 geschrieben, wenn dieselben ermittelt werden. Das Dienstprogramm bestimmt bei einem Schritt 111, ob die Anwendung ein Internet-Browser ist, und holt, wenn ja, bei einem Schritt 112 die URL-Adresse und stellt bei einem Schritt 113 ein URL-Flag ein. Der Ablauf kehrt bei einem Schritt 114 zu dem Hauptprozess zurück. Jeder Datensatz (Eintrag) umfasst den Rechnernamen, den Benutzernamen, die aktuelle Zeit (Startzeit des Events), die Rahmenstartzeit, die Zeit des Fensterschnappschusses, zusätzliche Informationen, wie einen Fenstertext, einen Anwendungsnamen, eine Event-Dauer, eine Anzahl von Tastenanschlägen, die Anzahl von Maus-Events, und, wenn zutreffend, die URL-Adresse.
  • Bezug nehmend auf 7 ist der „Protokolldatei-Übertragen"-Prozess 50 beschrieben. Bei einem Schritt 120 wird die lokale Protokolldatei geschlossen, und bei einem Schritt 121 wird dieselbe gemäß dem konfigurierten Verzeichnispfad zu dem entfernten Server kopiert. Bei einem Schritt 125 wird die Protokolldatei erneut geöffnet, wenn die Kopie, wie durch einen Schritt 122 angezeigt, nicht erfolgreich ist. Wenn dieselbe erfolgreich ist, wird die Protokolldatei bei einem Schritt 123 gelöscht und wird bei einem Schritt 124 eine neue Protokolldatei eröffnet. Durch einen Schritt 126 wird die Rückkehr zu dem Hauptprogramm angezeigt.
  • Bezug nehmend auf 8 hat das Dienstprogramm einen Hintergrund-Schutz-Thread, der auf den Stoppmutex und den Schutzmutex prüft. Wie durch den Entscheidungsschritt 131 angezeigt, wird, wenn der Stoppmutex existiert, bei einem Schritt 136 ein Stopp-Flag eingestellt und bei einem Schritt 137 der Thread durch das Stoppprogramm des Dienstprogramms auf eine ordnungsgemäße Art und Weise gestoppt. Der Thread prüft ferner (Schritt 132) auf den Schutzmutex. Wenn dieser nicht existiert, wird bei einem Schritt 133 eine Alarmmeldung erzeugt und bei einem Schritt 134 ein Schutzprogramm gestartet. Das Dienstprogramm „schläft" dann 1 Sekunde lang vor einer Rückkehr zu dem Schritt 131, d. h. der Thread prüft jede Sekunde auf jeden Mutex.
  • Genauer gesagt, der Stoppmutex wird durch ein Stoppprogramm des Dienstprogramms eröffnet, was ein autorisiertes und ordnungsgemäßes Schließen des Dienstprogramms für Zwecke wie ein Upgrade erlaubt. Dieses Programm ist passwortgeschützt.
  • Der Schutzmutex wird durch ein Schutzprogramm des Dienstprogramms eröffnet und sollte stets existieren. Das Hauptprogramm des Dienstprogramms („DCUApp") und das Schutzprogramm („DCUProt") haben jeweils einen Thread, der den Schutzmutex des anderen prüft. Das Schutzprogramm ist offen, führt jedoch keine Verarbeitungsaktivität aus. Wenn der Mutex des Hauptprogramms fehlt, wird das Hauptprogramm automatisch neu gestartet. Wenn der Mutex des Schutzprogramms fehlt, startet das Hauptprogramm automatisch das Schutzprogramm neu. Es besteht daher ein paralleler Schutz, da ein Fehlen eines Mutex eine Anzeige eines unautorisierten Versuchs, das Dienstprogramm zu schließen, ist. Das Schutzprogramm hat entweder einen Standardschutz oder erweiterte Schutzfunktionen, wie im Folgenden dargelegt ist.
  • Standardschutz (9)
  • Sollte ein Benutzer versuchen, das Dienstprogramm unter Benutzung des Taskmanagers zu stoppen, erfasst das andere Programm, das parallel läuft, dass der Mutex fehlt, und startet das entsprechende Programm neu. Sollte der Benutzer versuchen, das zweite Programm zu terminieren, dann erfasst das ursprüngliche Dienstprogramm, dass dasselbe entfernt wurde, und startet dieses zweite Programm neu.
  • Die einzige Weise, auf die ein Benutzer das Dienstprogramm terminieren kann, ist daher, in der Lage zu sein, beide Programme gleichzeitig zu terminieren, was bei Benutzung von Windows-9x-Betriebssystemen nicht möglich ist. Zusätzlich hat das zweite Dienstprogramm einen generischen Dateinamen, um innerhalb des Taskmanagers unaufällig zu sein.
  • Erweiterter Schutz
  • Wenn ein Dienstprogramm ein zweites Dienstprogramm startet, stellt das Betriebssystem Microsoft WindowsTM einen ,Prozessbaum' von einer Anwendung zu der anderen ein. Bei Windows NT/2000TM-Betriebssystemen kann ein Benutzer das Terminieren eines Prozesses und des Prozessbaums desselben angeben. Dies erlaubt eine verbotene Terminierung des Dienstprogramms durch eine Prozessbaumterminierung bei Windows NT- oder 2000TM-Betriebssystemen. Bei einem erweiterten Schutz ruft jedes Dienstprogramm eine dritte, transitorische Anwendung auf, die das terminierte Dienstprogramm ausführt. Dieses dritte Dienstprogramm terminiert sich, sobald dasselbe mit der Ausführung desselben fertig ist, und gibt daher den Prozessbaum von den zwei parallelen Anwendungen frei. Ein erweiterter Schutz macht ein verbotenes Terminieren unter Benutzung von Microsoft-9x-, NTTM- oder Windows 2000TM-Betriebssystemen unmöglich. 9 stellt die Schutzmechanismen in einer Diagrammform dar, wobei auf das Dienstprogramm als eine Datensammlungsdienstprogramm-Anwendung (englisch: Data Collection Utility Application; DCUApp) Bezug genommen ist.
  • Alarmmeldungs-Protokollmechanismus
  • Neben dem Abspeichern von Anwendungsdaten in den Protokolldateien speichert das Dienstprogramm Alarmmeldungen, die Details wie USER LOGIN (Benutzeranmeldung) und SHUTDOWN (Abschaltung) umfassen. Wichtigerweise werden Alarmmeldungen benutzt, um Versuche, das Dienstprogramm zu stoppen, zu protokollieren.
  • Da die Anwendung durch eine Registereinstellung gestartet wird, kann der Benutzer versuchen, diese zu ändern. Dies würde bedeuten, dass für diesen Benutzer keine Datensätze aufgezeichnet werden, was daher den Manager auf ein Problem aufmerksam macht. Zusätzlich würde, da das Erzeugnis ein Datenüberwacher ist, jeder Versuch, die Registereinstellungen zu manipulieren, aus den Protokolldateien ersichtlich sein, vorausgesetzt, das Schnappschussintervall wird nicht über ein vernünftiges Ausmaß erhöht.
  • Das Dienstprogramm umfasst ein Datenhochladeprogramm, das entweder als ein Windows-NTTM-Dienst oder als ein unabhängiges Programm läuft. Dasselbe muss sich in dem Rechner befinden, der die Protokolldatenbank hat. Nach einem benutzerkonfigurierbaren Zeitrahmen werden die Protokolldateien innerhalb des Zentral-Server-Verzeichnisses durch das Datenhochlade-Dienstprogramm interpretiert. Das Datenhochladeprogramm führt Folgendes aus:
    NT-Dienst-Hochladen,
    Standard-Executable-Hochladen,
    TCP/IP-Hochladen,
    Protokolleintrag-Fehlererfassung. Jeder Eintrag innerhalb einer Protokolldatei wird als hochgeladen markiert, wenn derselbe erfolgreich zu dem zentralen Datenbankspeicher hinzugefügt wird. Wenn während des Hochladens einer Protokolldatei keine Fehler auftreten, wird die Protokolldatei gelöscht, sobald alle Einträge hochgeladen wurden. Wenn bei dem Eintragen eines Eintrags in die Datenbank Fehler auftreten, wird dieser Eintrag in eine getrennte Fehlerdatei geschrieben und der nächste Protokolleintrag zu der Datenbank hinzugefügt, und
    Protokolldatei-Löschung. Sobald alle Datensätze einer Protokolldatei erfolgreich in die Datenbank importiert sind, wird die Protokolldatei gelöscht.
  • Während des Hochladens und der Erzeugung von neuen Protokolleinträgen innerhalb der Datenbank wird eine Anzahl von weiteren Klassifizierungen gemacht.
  • Gruppenidentifizierung und -zuweisung
  • Jeder Eintrag der Protokolldatei enthält einen Benutzer, einen Rechner, eine Anwendung und einen Fenstertitel, der in die Server-Datenbank eingetragen werden muss. Wenn eine Protokolldatei einen neuen Benutzer, Rechner oder eine neue Anwendung enthält, wird ein entsprechender Eintrag innerhalb des geeigneten Bereichs der Datenbank platziert. Wenn die Protokolldatei bestehende Informationen enthält, ist es lediglich erforderlich, den Bezug zu den bestehenden Informationen innerhalb der Datenbank zu speichern. Dies erlaubt ein hoch optimiertes Datenbanksystem.
  • Produktivitätszuweisung
  • Jedem protokollierten Eintrag innerhalb der Datenbank muss bei dem Platzieren desselben innerhalb der Datenbank eine Produktivitätsbeurteilung zugewiesen werden. Die Zuweisung einer Produktivitätsbeurteilung ist abhängig von dem Fenstertext, der in dem Protokoll enthalten ist, der Anwendung des Protokolleintrags, oder der Gruppe, der die Anwendung zugewiesen wurde. Die Produktivitätsbeziehung ist in 10 dargestellt.
  • Wenn der Protokolleintrag eine Anwendung enthält, die in einer Gruppe ist, die als produktiv oder unproduktiv markiert ist, dann wird die Produktivitätsbewertung für diese Gruppe dem Eintrag für dieses Protokollelement zugewiesen. Wenn die Produktivität der Anwendungsgruppe als abhängig von der Anwendung markiert ist, dann wird die Produktivität des Protokollelements auf der Basis der Produktivität der Anwendung eingestellt. Wenn die Produktivität der Anwendung auf unbekannt eingestellt ist, dann wird ein Fenstertext des Protokollelements mit einem Satz von bekannten Schlüsselwörtern verglichen. Jedes Schlüsselwort hat eine spezifizierte Produktivitätsbeurteilung. Wenn keine Schlüsselwörter übereinstimmen, dann wird die Produktivität für dieses Protokollelement auf einen unbekannten Eintrag eingestellt.
  • Hintergrundaufgabenprotokollierung
  • Das Dienstprogramm kann benutzt werden, um alle Hintergrundfenster an dem PC des Benutzers zu überwachen. Dies wird durch Benutzen der EnumWindowsTM-Funktion zum Durchsuchen aller Arbeitsflächen- bzw. Desktop-Fenster, Begrenzen auf lediglich sichtbare Fenster unter Benutzung der Is Windows Visible-Funktion und Abspeichern der Datensätze in einer inneren verbundenen Liste erreicht.
  • Hintergrundfensterinformationen können beispielsweise in Situationen nützlich sein, in denen bestimmte Benutzer eventuell versuchen, das Dienstprogramm zu überlisten, indem dieselben eine produktive Anwendung als ein kleines Fenster in dem Vordergrund aktiv halten und gleichzeitig ein nicht-produktives Element als ein größeres inaktives Fenster in dem Hintergrund lesen.
  • Anstelle des Protokolldateimechanismus kann ein Live-Übertragungsmechanismus benutzt sein, bei dem das Dienstprogramm Datensätze über eine TCP/IP-Strecke sendet und nicht in eine Protokolldatei schreibt. Falls die Strecke nicht verfügbar ist, werden die Datensätze in der Protokolldatei abgespeichert und übertragen, wenn die Strecke wieder eingerichtet ist.
  • Das Dienstprogramm umfasst ferner einen Triggered-Event-Mechanismus zum automatischen Ausführen eines Events basierend auf einer Aktivität oder einer Folge von Aktivitäten, die durch einen Benutzer ausgeführt werden, wie eine nicht-produktive Aktivität, die eine vordefinierte Periode an einem besonderen Tag überschreitet, oder ein Alarmieren eines Benutzers, wenn derselbe bei einer besonderen Aufgabe eine übermäßige Zeit aufwendet. Das Dienstprogramm identifiziert ferner Standardprofile für Benutzer und löst eine Alarmmeldung aus, wenn ein Benutzer eine vordefinierte Toleranz, die durch ein Standardprofil identifiziert ist, überschreitet.
  • Es ist erkennbar, dass die Erfindung eine Erfassung von sehr umfassenden Informationen vorsieht. Diese Informationen sind in diskreten Event-Datensätzen vorhanden, die nachgeschaltet für eine Erzeugung von Berichten einfach zu handhaben sind. Die Häufigkeit von Event-Datensätzen erlaubt ein Erzeugen von zeitbasierten Berichten auf eine einfache Art und Weise. Beispielsweise kann eine Gegenüberstellung von Produktivität und Zeit ohne weiteres aus der Datenbank grafisch dargestellt werden. Da Daten in den periodischen Rückrufprozessintervallen erfasst werden, besteht eine sehr geringe Auswirkung auf einen Betrieb des Rechners, im Gegensatz zu dem früheren Lösungsansatz eines Einfangens aller Befehle.
  • Die Erfindung ist nicht auf die beschriebenen Ausführungsbeispiele begrenzt, sondern kann im Aufbau und im Detail variiert werden.

Claims (12)

  1. Computergebrauchsüberwachungsverfahren, das von einem Dienstprogramm ausgeführt wird, das als Hintergrundprogramm für den Benutzer transparent arbeitet, wobei das Verfahren Gebrauchsdaten erfasst, die den Gebrauch des Computers anzeigen, dadurch gekennzeichnet, dass: das Dienstprogramm Echtzeit auf Ablauf einer aktuellen Rahmenzeitperiode überwacht (62) und: wenn die aktuelle Rahmenperiode abgelaufen ist, Ausschreiben (64) der aktuellen Aktivität in einen Protokolldatenbankeintrag und Erzeugen eines neuen Eintrags (65), wenn die Periode nicht abgelaufen ist, Prüfen (66), ob ein aktiver Fenstertiteltext derselbe ist, wie der eines letzten Fenstertiteltextes, und wenn nicht, Ausschreiben (64) der aktuellen Aktivität auf einen Protokolldatenbankeintrag und Erzeugen (65) eines neuen Eintrags; das Dienstprogramm einen neuen Eintrag erzeugt (65), indem es: prüft (102), ob der Name eines aktiven Fensters in einer gespeicherten Fensterliste ist, und wenn ja, Lesen (110) eines Anwendungsnamens für das Fenster aus der Fensterliste, wenn der Name des aktiven Fensters nicht in der gespeicherten Fensterliste ist, Durchsuchen aller ablaufenden Prozesse und Erfassen derjenigen Prozesse, die eine die Ausführbarkeit anzeigende Dateierweiterung haben, und Durchsuchen der genannten Prozesse nach einer Prozesskennung, die mit der des aktiven Fensterprozesses übereinstimmt, wenn eine passende Prozesskennung gefunden wird, Schreiben eines entsprechenden Anwendungsnamens auf den neuen Eintrag, und wenn keine gefunden wird, Schreiben eines Wertes auf den Eintrag, der anzeigt, dass die Anwendungsdetails nicht gefunden wurden; das Dienstprogramm ein Hauptprogramm und ein parallel ablaufendes erstes Schutzprogramm ausführt, wobei jedes der genannten Programme einen Schutzmutex und einen Thread hat, wobei jeder Thread wiederholt den Schutzmutex des anderen Programms prüft, und wenn der Mutex des Hauptprogramms fehlt, das erste Schutzprogramm das Hauptprogramm neu startet, und wenn der Mutex des ersten Schutzprogramms fehlt, das Hauptprogramm das erste Schutzprogramm neu startet; das Dienstprogramm einen Triggered-Event-Mechanismus aufweist, der eine Alarmmeldung auslöst, wenn Alarmgebrauchsbedingungen erfüllt sind, und wobei eine Alarmbedingung gemäß einem Benutzerprofil festgelegt wird; und das Dienstprogramm automatisch eine Produktivitätsklassifizierung für jede benutzte Anwendung gemäß einer Gruppe bestimmt, der eine erfasste aktive Anwendung zugewiesen wird.
  2. Computergebrauchsüberwachungsverfahren nach Anspruch 1, wobei das Dienstprogramm ein Event für jede von einem Benutzer benutzte Anwendung aufzeichnet und eine Produktivitätsklassifizierung für jedes Event anwendet.
  3. Computergebrauchsüberwachungsverfahren nach Anspruch 2, wobei das Dienstprogramm auf eine Klassifizierungstabelle zugreift, in der eine Produktivitätsklassifizierung Anwendungsgruppen, Anwendungen und Fenstertext-Schlüsselwörtern zugewiesen wird.
  4. Computergebrauchsüberwachungsverfahren nach Anspruch 3, wobei das Dienstprogramm versucht, Produktivität in Folge nach Anwendungsgruppe, Anwendung und Schlüsselwörtern zu klassifizieren.
  5. Computergebrauchsüberwachungsverfahren nach einem der vorherigen Ansprüche, wobei das Dienstprogramm auf ein aktives Fenster in periodischen Rückrufintervallen prüft (41) und einen Ruheanzeiger markiert (47), wenn die Benutzeraktivität unterhalb eines Schwellenwertes liegt.
  6. Computergebrauchsüberwachungsverfahren nach Anspruch 5, wobei das Dienstprogramm Gebrauchsdaten gemäß einer erfassten (42) Anzahl von Aktionen von Benutzereingabegeräten wie z.B. einer Tastatur und einer Maus ermittelt.
  7. Computergebrauchsüberwachungsverfahren nach Anspruch 5, wobei das Dienstprogramm eine Ruhezahl in periodischen Intervallen inkrementiert (44), wenn ein Eingabegerät inaktiv ist, und ein Fenster als im Ruhezustand markiert (47), wenn die Zahl einen Schwellenwert erreicht.
  8. Computergebrauchsüberwachungsverfahren nach einem der vorherigen Ansprüche, wobei das Dienstprogramm eine aktive URL-Adresse erfasst (112), wenn (111) die aktive Anwendung ein Browser ist.
  9. Computergebrauchsüberwachungsverfahren nach einem der vorherigen Ansprüche, wobei das Dienstprogramm ein zweites Schutzprogramm umfasst, das das Hauptprogramm oder das erste Schutzprogramm reaktiviert (140), wenn eines davon zu arbeiten aufhört, und sich selbst terminiert, wenn es mit der Ausführung fertig ist.
  10. Computergebrauchsüberwachungsverfahren nach einem der vorherigen Ansprüche, wobei das Hauptprogramm eine Alarmmeldung auf eine Protokolldatei schreibt (133), wenn ein Schutzprogramm terminiert wird.
  11. Computergebrauchsüberwachungsverfahren nach einem der vorherigen Ansprüche, wobei das Dienstprogramm einen „Live"-Übertragungsmechanismus umfasst, der automatisch Event-Datensätze in Echtzeit zu einem Server überträgt (8, 50, 60).
  12. Computerprogrammprodukt, das Software-Codeteile zum Ausführen eines Verfahrens nach einem der vorherigen Ansprüche bei Ausführung auf einem digitalen Computer umfasst.
DE60035324T 1999-10-26 2000-10-26 Überwachung von Rechnerbenutzung Expired - Lifetime DE60035324T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IE990893 1999-10-26
IE990893 1999-10-26

Publications (2)

Publication Number Publication Date
DE60035324D1 DE60035324D1 (de) 2007-08-09
DE60035324T2 true DE60035324T2 (de) 2008-02-28

Family

ID=11042151

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60035324T Expired - Lifetime DE60035324T2 (de) 1999-10-26 2000-10-26 Überwachung von Rechnerbenutzung

Country Status (5)

Country Link
US (1) US6978303B1 (de)
EP (1) EP1096382B1 (de)
AT (1) ATE365944T1 (de)
DE (1) DE60035324T2 (de)
ES (1) ES2288467T3 (de)

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2288467T3 (es) * 1999-10-26 2008-01-16 Iontas Limited Supervision de la utilizacion de ordenadores.
CA2403270C (en) * 2000-03-14 2011-05-17 Joseph Robert Marchese Digital video system using networked cameras
JP3936835B2 (ja) * 2000-09-20 2007-06-27 株式会社日立製作所 計算機ネットワーク用の端末装置および操作履歴記録方法
US6782350B1 (en) * 2001-04-27 2004-08-24 Blazent, Inc. Method and apparatus for managing resources
US20030208394A1 (en) * 2002-05-01 2003-11-06 Todd Burris Sales tracking and forecasting application tool
US20050004873A1 (en) * 2003-02-03 2005-01-06 Robin Pou Distribution and rights management of digital content
EP1643404A3 (de) * 2003-02-03 2006-04-19 Tennessee Pacific Group. L.L.C. Verteiler- und Rechtsmanagement von digitalen Inhalten
US7577997B2 (en) * 2004-06-12 2009-08-18 Microsoft Corporation Image verification
US7721340B2 (en) * 2004-06-12 2010-05-18 Microsoft Corporation Registry protection
US8620915B1 (en) 2007-03-13 2013-12-31 Google Inc. Systems and methods for promoting personalized search results based on personal information
US8078607B2 (en) * 2006-03-30 2011-12-13 Google Inc. Generating website profiles based on queries from webistes and user activities on the search results
CN100349131C (zh) * 2004-07-26 2007-11-14 中兴通讯股份有限公司 一种应用程序故障的定位方法
US7703144B2 (en) * 2005-04-12 2010-04-20 International Business Machines Corporation Method, apparatus, and program to post process applications encrypting sensitive objects that are logged
US8578500B2 (en) * 2005-05-31 2013-11-05 Kurt James Long System and method of fraud and misuse detection
US7711988B2 (en) * 2005-06-15 2010-05-04 The Board Of Trustees Of The University Of Illinois Architecture support system and method for memory monitoring
US8225231B2 (en) 2005-08-30 2012-07-17 Microsoft Corporation Aggregation of PC settings
WO2007071465A1 (en) * 2005-12-22 2007-06-28 International Business Machines Corporation A method and apparatus for populating a software catalog with automated use signature generation
US7877409B2 (en) * 2005-12-29 2011-01-25 Nextlabs, Inc. Preventing conflicts of interests between two or more groups using applications
US8752062B2 (en) * 2006-03-17 2014-06-10 Verint Americas Inc. Monitoring of computer events and steps linked by dependency relationships to generate completed processes data and determining the completed processed data meet trigger criteria
US9166883B2 (en) 2006-04-05 2015-10-20 Joseph Robert Marchese Network device detection, identification, and management
JP4859535B2 (ja) * 2006-05-30 2012-01-25 株式会社日立製作所 業務管理システム、情報システム及び業務管理方法
US8201223B2 (en) * 2006-11-03 2012-06-12 Joanne Walker Systems and methods for computer implemented treatment of behavorial disorders
US8839236B2 (en) * 2007-04-04 2014-09-16 Microsoft Corp. Virtual machine support for metered computer usage
US7996518B2 (en) * 2007-04-13 2011-08-09 Microsoft Corporation Detecting machine utilization activity
WO2009011690A2 (en) * 2007-07-12 2009-01-22 Mobile Office, Inc. Personal computer control for vehicles
US20090018731A1 (en) * 2007-07-12 2009-01-15 Mobile Office, Inc. Personal computer control for vehicles
US20090132579A1 (en) * 2007-11-21 2009-05-21 Kwang Edward M Session audit manager and method
US8850569B1 (en) * 2008-04-15 2014-09-30 Trend Micro, Inc. Instant messaging malware protection
US8411046B2 (en) 2008-10-23 2013-04-02 Microsoft Corporation Column organization of content
US8086275B2 (en) 2008-10-23 2011-12-27 Microsoft Corporation Alternative inputs of a mobile communications device
US20100205238A1 (en) * 2009-02-06 2010-08-12 International Business Machines Corporation Methods and apparatus for intelligent exploratory visualization and analysis
US8238876B2 (en) 2009-03-30 2012-08-07 Microsoft Corporation Notifications
US8175653B2 (en) 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US8836648B2 (en) 2009-05-27 2014-09-16 Microsoft Corporation Touch pull-in gesture
US8307068B2 (en) * 2009-06-17 2012-11-06 Volonics Corporation Supervised access computer network router
EP2343651A1 (de) * 2009-12-15 2011-07-13 Accenture Global Services Limited Überwachung und Verfolgung der Verwendung einer Anwendung
KR100949183B1 (ko) * 2010-01-06 2010-03-23 (주)지란지교소프트 윈도우 타이틀을 이용한 사용패턴 모니터링 방법 및 장치
WO2011091087A1 (en) * 2010-01-20 2011-07-28 Airpatrol Corporation Multi-band radio frequency detection and location system
US20120159383A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Customization of an immersive environment
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
US20120304132A1 (en) 2011-05-27 2012-11-29 Chaitanya Dev Sareen Switching back to a previously-interacted-with application
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US8687023B2 (en) 2011-08-02 2014-04-01 Microsoft Corporation Cross-slide gesture to select and rearrange
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US10353566B2 (en) 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US8922575B2 (en) 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
US9128605B2 (en) 2012-02-16 2015-09-08 Microsoft Technology Licensing, Llc Thumbnail-image selection of applications
US9723013B2 (en) * 2012-06-22 2017-08-01 Idecsi Sas Secondary asynchronous background authorization (SABA)
US10079931B2 (en) 2012-07-09 2018-09-18 Eturi Corp. Information throttle that enforces policies for workplace use of electronic devices
US9854393B2 (en) 2012-07-09 2017-12-26 Eturi Corp. Partial information throttle based on compliance with an agreement
US9887887B2 (en) 2012-07-09 2018-02-06 Eturi Corp. Information throttle based on compliance with electronic communication rules
US8966064B2 (en) 2012-07-09 2015-02-24 Parentsware, Llc Agreement compliance controlled electronic device throttle
US9847948B2 (en) 2012-07-09 2017-12-19 Eturi Corp. Schedule and location responsive agreement compliance controlled device throttle
US20140032280A1 (en) * 2012-07-26 2014-01-30 Uniloc Luxembourg, S.A. Employee performance evaluation
US9450952B2 (en) 2013-05-29 2016-09-20 Microsoft Technology Licensing, Llc Live tiles without application-code execution
US9600298B2 (en) 2013-04-29 2017-03-21 International Business Machines Corporation Active and efficient monitoring of a graphical user interface
US9749209B2 (en) * 2013-11-01 2017-08-29 The Nielsen Company (Us), Llc Methods and apparatus to credit background applications
EP3126969A4 (de) 2014-04-04 2017-04-12 Microsoft Technology Licensing, LLC Erweiterbare anwendungsdarstellung
CN105378582B (zh) 2014-04-10 2019-07-23 微软技术许可有限责任公司 计算设备的可折叠壳盖
CN105359055A (zh) 2014-04-10 2016-02-24 微软技术许可有限责任公司 计算设备的滑盖
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
WO2016065568A1 (en) 2014-10-30 2016-05-06 Microsoft Technology Licensing, Llc Multi-configuration input device
US20160285918A1 (en) * 2015-03-29 2016-09-29 Whitebox Security Ltd. System and method for classifying documents based on access
US10209851B2 (en) 2015-09-18 2019-02-19 Google Llc Management of inactive windows
US10891106B2 (en) 2015-10-13 2021-01-12 Google Llc Automatic batch voice commands
CN107291493A (zh) * 2017-05-27 2017-10-24 北京思特奇信息技术股份有限公司 一种后台业务处理框架的搭建方法和系统
US10440063B1 (en) 2018-07-10 2019-10-08 Eturi Corp. Media device content review and management
CN109446034B (zh) * 2018-10-11 2022-02-18 广州酷狗计算机科技有限公司 上报崩溃事件的方法、装置、计算机设备及存储介质
US11188437B1 (en) 2020-07-30 2021-11-30 Bank Of America Corporation Remote deployment of monitoring agents on computing systems
CN113673857A (zh) * 2021-08-13 2021-11-19 南京理工大学 一种面向数据中台的服务感知与资源调度系统及方法

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ218742A (en) * 1986-06-03 1990-09-26 Fisher & Paykel Programmed logic controller
US3668653A (en) * 1968-10-22 1972-06-06 Sundstrad Corp Control system
US3906454A (en) * 1973-05-18 1975-09-16 Bell Telephone Labor Inc Computer monitoring system
US4590550A (en) * 1983-06-29 1986-05-20 International Business Machines Corporation Internally distributed monitoring system
US4982404A (en) * 1988-10-12 1991-01-01 American Standard Inc. Method and apparatus for insuring operation of a multiple part system controller
US5148548A (en) * 1989-12-19 1992-09-15 Northern Telecom Limited Method of monitoring cellular radio channels to avoid adjacent and co-channel interference
US5226117A (en) * 1990-05-15 1993-07-06 International Business Machines Corporation Method for simultaneous update and change in parent and child windows
JPH0774984B2 (ja) * 1991-06-10 1995-08-09 インターナショナル・ビジネス・マシーンズ・コーポレイション システム資源利用率測定方法とデータ処理システム
US5237684A (en) * 1991-08-12 1993-08-17 International Business Machines Corporation Customized and versatile event monitor within event management services of a computer system
US5481667A (en) * 1992-02-13 1996-01-02 Microsoft Corporation Method and system for instructing a user of a computer system how to perform application program tasks
US5416726A (en) * 1992-10-06 1995-05-16 Microsoft Corporation Method and system for placing a computer in a reduced power state
US5862335A (en) * 1993-04-01 1999-01-19 Intel Corp. Method and apparatus for monitoring file transfers and logical connections in a computer network
US5485574A (en) * 1993-11-04 1996-01-16 Microsoft Corporation Operating system based performance monitoring of programs
JPH07319832A (ja) * 1994-05-26 1995-12-08 Hitachi Ltd サービス利用情報収集方法および装置、並びに計算機システム停止制御方法および装置
JP3588485B2 (ja) * 1994-08-26 2004-11-10 富士通株式会社 プロセススケジューリング方式
US5675752A (en) * 1994-09-15 1997-10-07 Sony Corporation Interactive applications generator for an interactive presentation environment
US5737748A (en) * 1995-03-15 1998-04-07 Texas Instruments Incorporated Microprocessor unit having a first level write-through cache memory and a smaller second-level write-back cache memory
US5717604A (en) * 1995-05-25 1998-02-10 Wiggins; Christopher Network monitoring system for tracking, billing and recovering licenses
JPH08328880A (ja) * 1995-05-31 1996-12-13 Mitsubishi Electric Corp 複数のアプリケーションプログラムを同時に実行できるオペレーティングシステムにおける計算機運転管理システム
US5675510A (en) * 1995-06-07 1997-10-07 Pc Meter L.P. Computer use meter and analyzer
US5748957A (en) * 1995-06-27 1998-05-05 Klein; Dean A. Computer system usage determination based on hard disk drive activity
US5874960A (en) * 1995-07-05 1999-02-23 Microsoft Corporation Method and system for sharing applications between computer systems
US6668244B1 (en) * 1995-07-21 2003-12-23 Quartet Technology, Inc. Method and means of voice control of a computer, including its mouse and keyboard
US5654905A (en) * 1995-09-15 1997-08-05 Ast Research, Inc. System for tracking computer usage time
US5797018A (en) * 1995-12-07 1998-08-18 Compaq Computer Corporation Apparatus and method of preventing a deadlock condition in a computer system
US6065138A (en) * 1996-03-29 2000-05-16 Magnitude Llc Computer activity monitoring system
US6279124B1 (en) * 1996-06-17 2001-08-21 Qwest Communications International Inc. Method and system for testing hardware and/or software applications
US6212573B1 (en) * 1996-06-26 2001-04-03 Sun Microsystems, Inc. Mechanism for invoking and servicing multiplexed messages with low context switching overhead
US6381632B1 (en) * 1996-09-10 2002-04-30 Youpowered, Inc. Method and apparatus for tracking network usage
US5983351A (en) * 1996-10-16 1999-11-09 Intellectual Protocols, L.L.C. Web site copyright registration system and method
US5809250A (en) * 1996-10-23 1998-09-15 Intel Corporation Methods for creating and sharing replayable modules representive of Web browsing session
US6112237A (en) * 1996-11-26 2000-08-29 Global Maintech, Inc. Electronic monitoring system and method for externally monitoring processes in a computer system
US6414594B1 (en) * 1996-12-31 2002-07-02 Honeywell International Inc. Method and apparatus for user-initiated alarms in process control system
JP3253883B2 (ja) * 1997-01-31 2002-02-04 株式会社東芝 プロセスリスタート方法及びプロセス監視装置
US6046740A (en) * 1997-02-07 2000-04-04 Seque Software, Inc. Application testing with virtual object recognition
US5949975A (en) * 1997-03-12 1999-09-07 Microsoft Corp. Method and system for negotiating capabilities when sharing an application program with multiple computer systems
US5872976A (en) * 1997-04-01 1999-02-16 Landmark Systems Corporation Client-based system for monitoring the performance of application programs
US6158044A (en) * 1997-05-21 2000-12-05 Epropose, Inc. Proposal based architecture system
US5949415A (en) * 1997-06-16 1999-09-07 Intel Corporation Method and apparatus for tracking program usage in a computer system
US5991814A (en) * 1997-07-10 1999-11-23 Alcatel Method and apparatus for controlling command line transfer to a network element
US6282701B1 (en) * 1997-07-31 2001-08-28 Mutek Solutions, Ltd. System and method for monitoring and analyzing the execution of computer programs
US6446119B1 (en) * 1997-08-07 2002-09-03 Laslo Olah System and method for monitoring computer usage
US6026427A (en) * 1997-11-21 2000-02-15 Nishihara; Kazunori Condition variable to synchronize high level communication between processing threads
US6438592B1 (en) * 1998-02-25 2002-08-20 Michael G. Killian Systems for monitoring and improving performance on the world wide web
JP4634547B2 (ja) * 1998-06-30 2011-02-16 株式会社東芝 リアルタイム情報配信方法
US6363477B1 (en) * 1998-08-28 2002-03-26 3Com Corporation Method for analyzing network application flows in an encrypted environment
US6308208B1 (en) * 1998-09-30 2001-10-23 International Business Machines Corporation Method for monitoring network distributed computing resources using distributed cellular agents
US6601058B2 (en) * 1998-10-05 2003-07-29 Michael Forster Data exploration system and method
US6351777B1 (en) * 1999-04-23 2002-02-26 The United States Of America As Represented By The Secretary Of The Navy Computer software for converting a general purpose computer network into an interactive communications system
US6691067B1 (en) * 1999-04-07 2004-02-10 Bmc Software, Inc. Enterprise management system and method which includes statistical recreation of system resource usage for more accurate monitoring, prediction, and performance workload characterization
US6222529B1 (en) * 1999-05-05 2001-04-24 Shareware, Inc. Method and apparatus for providing multiple sessions on a single user operating system
US6636908B1 (en) * 1999-06-28 2003-10-21 Sangate Systems, Inc. I/O system supporting extended functions and method therefor
ES2288467T3 (es) * 1999-10-26 2008-01-16 Iontas Limited Supervision de la utilizacion de ordenadores.
US6678824B1 (en) * 1999-11-02 2004-01-13 Agere Systems Inc. Application usage time limiter
US6732167B1 (en) * 1999-11-30 2004-05-04 Accenture L.L.P. Service request processing in a local service activation management environment
US6654036B1 (en) * 2000-06-05 2003-11-25 International Business Machines Corporation Method, article of manufacture and apparatus for controlling relative positioning of objects in a windows environment

Also Published As

Publication number Publication date
US6978303B1 (en) 2005-12-20
ATE365944T1 (de) 2007-07-15
EP1096382A2 (de) 2001-05-02
IE20000864A1 (en) 2002-05-29
EP1096382A3 (de) 2006-02-01
ES2288467T3 (es) 2008-01-16
DE60035324D1 (de) 2007-08-09
EP1096382B1 (de) 2007-06-27

Similar Documents

Publication Publication Date Title
DE60035324T2 (de) Überwachung von Rechnerbenutzung
DE69923435T2 (de) System und verfahren zur optimierung der leistungskontrolle von komplexen informationstechnologiesystemen
US8799225B2 (en) Process and system for auditing database activity
EP1097428B1 (de) System und verfahren zum prüfen von netzwerk-anwendungen
DE69911681T2 (de) Verfahren zum Verfolgen von Konfigurationsänderungen in Netzwerken von Rechnersystemen durch historische Überwachung des Konfigurationsstatus der Vorrichtungen im Netzwerk
US9053220B2 (en) Method, system, and computer program for monitoring performance of applications in a distributed environment
DE60018803T2 (de) Verfahren und apparat zur verwaltung von information der speicheraktivitäten von datenspeichersystemen
DE102005020893A1 (de) System zur adaptiven Bestimmung von Operationseigenschaften einer ausführbaren Anwendung
US20050187991A1 (en) Dynamically capturing data warehouse population activities for analysis, archival, and mining
DE69913375T2 (de) Anzeige eines fehlers in einem transaktionsverarbeitungssystem
DE10348371A1 (de) Mehrfachorganisationsdatenzugriffsüberwachungs- und -managementsystem
US20070112876A1 (en) Method and apparatus for pruning data in a data warehouse
Cisco Performance Management
Cisco Performance Management
Cisco Performance Management
Cisco Performance Management
US11561681B2 (en) System and method of smart framework for troubleshooting performance issues
DE69905999T2 (de) Aktualisieren eines zentralisierten Ereignisjournals
DE60114395T2 (de) Abfrage- und Analyseverfahren für MSTP in einem Funktelekommunikationsnetzwerk
EP3622414B1 (de) Datenbank mit feldbezogenen zeitstempeln
Kuhn et al. Troubleshooting
Pollack et al. Monitoring Indexes
IE84821B1 (en) Monitoring of computer usage
DE102022127044A1 (de) Erkennung von datenverschlüsselung
DE102020207262A1 (de) Informationsverarbeitungsprogramm, Informationsverarbeitungsvorrichtung und Informationsverarbeitungsverfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition