PL180841B1 - Sposób sterowania systemu komputerowego - Google Patents
Sposób sterowania systemu komputerowegoInfo
- Publication number
- PL180841B1 PL180841B1 PL95320609A PL32060995A PL180841B1 PL 180841 B1 PL180841 B1 PL 180841B1 PL 95320609 A PL95320609 A PL 95320609A PL 32060995 A PL32060995 A PL 32060995A PL 180841 B1 PL180841 B1 PL 180841B1
- Authority
- PL
- Poland
- Prior art keywords
- file
- request
- original
- open
- operating system
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/542—Intercept
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/953—Organization of data
- Y10S707/959—Network
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Electrical Discharge Machining, Electrochemical Machining, And Combined Machining (AREA)
- Forklifts And Lifting Vehicles (AREA)
- Control Of Eletrric Generators (AREA)
- Information Transfer Between Computers (AREA)
- Storage Device Security (AREA)
Abstract
1. Sposób sterowania systemu komputero- wego, dla przechwytywania i wykonywania zadania otwarcia pliku, który to system kompute- rowy posiada pamiec, glówny procesor wyko- nujacy program systemu operacyjnego oraz pamiec masowa do przechowywania plików, w którym za pomoca systemu operacyjnego okre- sowo wykonuje sie zadanie otwarcia pliku prze- chowywanego w pamieci masowej, znamienny tym, ze na poziomie systemu operacyjnego prze- jmuje sie zadanie otwarcia pliku, identyfikujace otwierany plik pierwotny, nastepnie z zadania wyodrebnia sie identyfikator pliku pierwotnego, wyznacza sie czy identyfikator pliku pierwotne- go powinien zostac zastapiony identyfikatorem pliku zastepczego i jesli powinien, to modyfikuje sie zadanie otwarcia i zastepuje sie identyfikator pliku pierwotnego identyfikatorem pliku zaste- pczego oraz przekazuje sie zadanie do systemu operacyjnego, za pomoca którego otwiera sie dany plik zastepczy zamiast pliku pierwotnego. F ig . 3 PL PL PL PL PL PL PL
Description
Przedmiotem wynalazku jest sposób sterowania systemu komputerowego, zwłaszcza dla realizacji dostępu do plików z poziomu systemu operacyjnego komputera. Wynalazek jest szczególnie użyteczny w przypadku sterowania dostępem do plików wykonywalnych w środowisku sieciowym, ale może zostać wykorzystany także w innych systemach.
W systemie komputerowym wymagana jest czasem zmiana jego działania w sposób niezauważalny zarówno dla użytkownika, jak również dla systemu operacyjnego działającego w systemie komputerowym.
Jedna z typowych sytuacji, w których powstaje powyższe wymaganie wynika z tendencji do przechowywania oprogramowania w sieciowym serwerze plików, a nie w niezależnych komputerach osobistych poszczególnych użytkowników. Administrator sieciowego systemu komputerowego musi zainstalować na serwerze plików jedną kopię opiogramowania, która jest dostępna dla dowolnego komputera lub stacji roboczej włączonej do sieci. To rozwiązanie zapewnia polepszoną sprawność działania systemu, na przykład w przypadku zmian ustawień programu lub podczas jego aktualizacji oraz zmniejsza czas instalacji oprogramowania (co może trwać ponad godzinę), ponieważ wystarczy zainstalować je tylko raz na każdym serwerze plików, a nie na każdej stacji roboczej.
Powyższe rozwiązanie stwarza jednak problemy związane z licencyjnymi ograniczeniami na ilość użytkowników programu. Praktycznie każdy program objęty jest umową licencyjną, pozwalającą na wykorzystywanie go na pojedynczym komputerze lub na pewnej ograniczonej ilości komputerów.
Zwykle jest niewiele, lub nawet brak technicznych ograniczeń ilości użytkowników, którzy mogąjednocześnie używać danego programu zainstalowanego na sieciowym serwerze plików. W związku z tym, aby spełnić warunki umowy licencyjnej, należy zapewnić sposób programowego monitorowania i ograniczania ilości użytkowników jednocześnie korzystających z programu, tak aby ilość ta nie wykraczała poza ustalenia umowy licencyjnej.
Na ogół programowe monitorowanie polega na przejmowaniu żądań uruchomienia danego programu i sprawdzaniu ilu użytkowników z tego programu już korzysta. Gdy osiągnie się maksymalną dozwoloną liczbę jednoczesnych użytkowników programu, to żądanie dostępu do niego zostaje odrzucone. Jednak, gdy maksymalna dozwolona ilość jednoczesnych użytkowników nie została osiągnięta, to licznik używanych kopii programu jest zwiększany o jeden, a żądanie uruchomienia programu jest spełniane. Po zakończeniu działania monitorowanego programu, fakt ten jest wykrywany, a licznik używanych kopii programu jest zmniejszany o jeden.
Takie programowe monitorowanie może zostać zrealizowane na trzy sposoby. Pierwszy z nich polega na zastosowaniu programu rezydentnego pracującego na każdej stacji roboczej w sieci komputerowej, który przejmuje żądania uruchomienia programów w sieci i pozwala na ich uruchomienie, w zależności od wartości licznika używanych kopii programu znajdującego się we wspólnym pliku w serwerze. Drugi sposób polega na zmianie nazwy pliku uruchamiającego dany program w sieci. Zamiast niego uruchamiany jest dodatkowy program uruchamiający, któ
180 841 ry sprawdza wartość licznika używanych kopii programu, znajdującego się we wspólnym pliku w serwerze i jeśli wartość tego licznika nie przekroczy maksymalnej liczby użytkowników programu, to właściwy program uruchamiany jest jako proces potomny dodatkowego programu uruchamiającego. Trzeci sposób wykorzystuje program rezydentny działający w serwerze plików, który przejmuje żądania dostępu do danego programu i zezwala na jego uruchomienie, w zależności od wartości lokalnego licznika używanych kopii danego programu. Jeśli licznik osiągnął już wartość równą maksymalnej liczbie użytkowników programu, to program rezydentny zwraca do stacji roboczej kod błędu.
Stwierdzono, że każdy z powyższych sposobów posiada pewne wady. Pierwszy nie zapewnia odpowiedniego bezpieczeństwa, gdyż można go obejść poprzez usunięcie z pamięci lub inne unieszkodliwienie programu rezydentnego pracującego na stacji roboczej. Zarówno pierwszy, jak i drugi sposób zmniejszają dostępną przestrzeń pamięci stacji roboczej, dla wszystkich programów w przypadku pierwszego sposobu i dla każdego monitorowanego programu w przypadku sposobu drugiego. Zgodnie z trzecim sposobem, w razie braku zezwolenia na uruchomienie programu, system operacyjny stacji roboczej generuje nieprzyjazny użytkownikowi błąd krytyczny systemu.
Przykłady znanych sposobów blokowania plików lub zabezpieczenia plików wykonywalnych znane sąz amerykańskich zgłoszeń patentowych US-A-5 327 536 i US-A-5 155 827. W pierwszym zgłoszeniu blokowanie plików na danym nośniku zostało zrealizowane poprzez przechowywanie zakodowanej informacji, określającej położenie plików programów na nośniku oraz analizę położenia plików przed ich uruchomieniem. Natomiast w drugim wspomnianym zgłoszeniu pliki wykonywalne usuwane są z dysku twardego, przenoszone na dyskietki i zastępowane przez pliki wsadowe, wykorzystujące znane komendy systemu MS-DOS.
Sposób sterowania systemu komputerowego, dla przechwytywania i wykonywania żądania otwarcia pliku, który to system komputerowy posiada pamięć, główny procesor wykonujący program systemu operacyjnego oraz pamięć masową do przechowywania plików, w którym za pomocą systemu operacyjnego okresowo wykonuje się żądanie otwarcia pliku przechowywanego w pamięci masowej, według wynalazku charakteryzuje się tym, że na poziomie systemu operacyjnego przejmuje się żądanie otwarcia pliku, identyfikujące otwierany plik pierwotny, następnie z żądania wyodrębnia się identyfikator pliku pierwotnego, wyznacza się czy identyfikator pliku pierwotnego powinien zostać zastąpiony identyfikatorem pliku zastępczego i jeśli powinien, to modyfikuje się żądanie otwarcia i zastępuje się identyfikator pliku pierwotnego identyfikatorem pliku zastępczego oraz przekazuje się żądanie do systemu operacyjnego, za pomocą którego otwiera się dany plik zastępczy zamiast pliku pierwotnego.
Korzystne jest, że żądanie otwarcia pliku generuje się po stronie użytkownika, a działanie według sposobu jest niezauważalne zarówno dla systemu operacyjnego, jak i użytkownika. Plik zastępczy wybiera się spośród zbioru plików, w zależności od identyfikatora pliku pierwotnego. Korzystnie, sprawdza się czy plik pierwotny jest plikiem wykonywalnym.
Korzystne jest, że plik zastępczy wybiera się tak, aby jego typ odpowiadał typowi pierwotnego pliku wykonywalnego. Dla wyznaczenia typu pierwotnego pliku wykonywalnego porównuje się przynajmniej część jego identyfikatora z określoną wcześniej listą identyfikatorów plików.
Korzystne jest, że typ pierwotnego pliku wykonywalnego wyznacza się bez wykorzystywania określonej wcześniej listy identyfikatorów plików. Typ pierwotnego pliku wykonywalnego wyznacza się wykorzystując jego nagłówek.
W odmiennym wykonaniu sposób sterowania systemu komputerowego, stanowiącego sieciowy system komputerowy mający serwer plików oraz przynajmniej jedną stację roboczą dla przechwytywania i wykonywania żądania otwarcia pliku, który to system komputerowy posiada pamięć, główny procesor wykonujący program systemu operacyjnego oraz pamięć masową do przechowywania plików, w którym za pomocą systemu operacyjnego okresowo wykonuje się żądanie otwarcia pliku przechowywanego w pamięci masowej, według wynalazku charakteryzuje się tym, że przechowuje się rekord liczby używanych w sieci kopii pliku pierwotnego, na
180 841 poziomie systemu operacyjnego przejmuje się żądanie otwarcia pliku, identyfikujące otwierany plik pierwotny, następnie z żądania wyodrębnia się identyfikator pliku pierwotnego, wyznacza się czy identyfikator pliku pierwotnego powinien zostać zastąpiony identyfikatorem pliku zastępczego i jeśli powinien, to modyfikuje się żądanie i zastępuje się identyfikator pliku pierwotnego identyfikatorem pliku zastępczego oraz przekazuje się żądanie do systemu operacyjnego, za pomocąktórego otwiera się dany plik zastępczy zamiast pliku pierwotnego, przy czym w etapie wyznaczania sprawdza się czy po uruchomieniu na żądanie kolejnej kopii programu, zapamiętana liczba używanych w sieci kopii programu przekracza wartość maksymalną.
Korzystne jest, że składające się nań kroki wykonuje się jedynie za pomocą serwera plików.
W kolejnym odmiennym wykonaniu sposób sterowania systemu komputerowego, dla przechwytywania i wykonywania żądania otwarcia pliku i redukcji liczby plików, który to system komputerowy posiada pamięć, główny procesor wykonujący program systemu operacyjnego oraz pamięć masowądo przechowywania plików, w którym za pomocąsystemu operacyjnego okresowo wykonuje się żądanie otwarcia pliku przechowywanego w pamięci masowej, według wynalazku charakteryzuje się tym, że na poziomie systemu operacyjnego przejmuje się żądanie otwarcia pliku, identyfikujące otwierany plik pierwotny, następnie z żądania wyodrębnia się identyfikator pliku pierwotnego, porównuje się identyfikator pliku pierwotnego ze zbiorem identyfikatorów plików i wyznacza się czy plik pierwotny jest plikiem monitorowanym, a jeśli tak, to sprawdza się licznik kopii pliku pierwotnego i wyznacza się maksymalną dozwoloną liczbę używanych kopii pliku pierwotnego, przy czym w przypadku osiągnięcia maksymalnej liczby używanych kopii pliku pierwotnego modyfikuje się żądanie otwarcia pliku i zastępuje się identyfikator pliku pierwotnego identyfikatorem pliku zastępczego oraz przekazuje się zmodyfikowane żądanie otwarcia pliku do systemu operacyjnego, za pomocą którego otwiera się dany plik zastępczy zamiast pliku pierwotnego.
Wynalazek w szerokim aspekcie zapewnia ulepszony, w porównaniu do dotychczas znanych, sposób dostępu do plików.
Sposób według wynalazku jest tak realizowany, że wszystkie związane z nim operacje są niezauważalne zarówno dla systemu operacyjnego, jak i użytkownika. Sposób ten znajduje zastosowanie w przejmowaniu żądań otwarcia pliku przez użytkownika, bez względu na to, czy żądanie pochodzi ze stacji roboczej, czy z niezależnego komputera. W przypadku sieciowego systemu komputerowego składającego się z serwera plików i przynajmniej jednej stacji roboczej, na sposób według wynalazku składa się przechowywanie danych dotyczących ilości używanych aktualnie kopii programu i sprawdzanie, czy identyfikator pliku pierwotnego powinien zostać zastąpiony identyfikatorem pliku zastępczego. Sprawdzenie odbywa się poprzez porównanie, czy po uruchomieniu pożądanego pliku, zapamiętana liczba używanych kopii danego pliku przekroczy ustalone ograniczenie. Tym sposobem realizuje się programowe monitorowanie po stronie serwera plików, bez dodatkowego obciążenia stacji roboczej. Dzięki takiemu rozwiązaniu można zapewnić odrzucenie żądania uruchomienia programu w sposób przyjazny dla użytkownika, lub jeśli odpowiednia liczba używanych kopii programu nie została by przekroczona, to żądanie uruchomienia programu jest akceptowane w sposób niezauważalny dla użytkownika.
W sposobie według wynalazku wybór pliku zastępczego następuje spośród wielu możliwych plików zastępczych, w zależności od identyfikatora pliku pierwotnego. Wybór ten może polegać na sprawdzeniu, czy plik pierwotny jest plikiem wykonywalnym i jeśli jest, to jakiego jest on typu. Na tej podstawie wybierany jest odpowiednie plik zastępczy. Natomiast sprawdzenie typu pliku wykonywalnego może polegać na porównaniu przynajmniej części nazwy/identyfikatora tego pliku z wyznaczoną listą nazw/identyfikatorów plików.
Przedmiot wynalazku objaśniony zostanie w przykładzie wykonania na rysunku, na którym fig. 1 przedstawia schemat blokowy typowego systemu komputerowego, fig. 2A i 2B przedstawiają schematy ilustrujące mapę pamięci na poziomie systemu operacyjnego w typowym systemie komputerowym oraz w zmodyfikowanym systemie komputerowym sterowanym zgodnie ze sposobem według wynalazku, fig. 3 przedstawia sieć działań ilustrującą
180 841 główną ideę wynalazku, a fig. 4 przedstawia sieć działań ilustrującą sposób programowego monitorowania zgodnie z wynalazkiem.
Nawiązując do fig. 1, sposób według wynalazku jest realizowany w systemie komputerowym 10, składającym się z procesora głównego CPU 12, pamięci 14 oraz pamięci masowej 16, w tym przypadku oznaczonej w postaci napędu dyskowego.
System komputerowy 10 wykonuje program systemu operacyjnego. Chociaż w opisanym przykładzie wykonania system operacyjny jest systemem DOS używanym w komputerach osobistych, zgodnych z IBM PC, to wynalazek znajduje zastosowanie w przypadku wielu innych systemów operacyjnych.
Nawiązując do fig. 2A, we wszystkich systemach operacyjnych przed użyciem dowolnego pliku przechowywanego w pamięci masowej 16, wykonywane jest odwołanie do systemu operacyjnego, w tym wykonaniu poprzez przerwanie systemowe 21h, w którym żąda się otwarcia pliku o danej nazwie zawartej w odwołaniu. W trakcie operacji otwierania pliku, na podstawie jego nazwy system operacyjny przydziela mu “uchwyt” będący zwykle numerem, który jest zwracany do procesu żądającego otwarcia pliku. Uchwyt jednoznacznie identyfikuje otwarty plik. Podczas pierwszego otwarcia pliku system operacyjny wykonuje różnorakie działania, takie jak lokalizacja położenia pliku w pamięci masowej 16. Dzięki użyciu uchwytu pliku, kolejne odwołania do tego pliku nie zajmują dużo czasu, gdyż unika się powtarzania działań wykonywanych podczas otwierania pliku. Wszystkie niezbędne informacje dotyczące pliku przechowywane są w tablicy, do której można się odwołać poprzez uchwyt. Gdy otwarty plik nie jest dłużej wykorzystywany przez proces, to jest on zamykany, co powoduje wymazanie zapisu w tablicy plików, odpowiadającemu danemu uchwytowi.
Na figurze 2B przedstawiono sytuację występującą w przypadku systemu MS-DOS, gdzie żądania otwarcia pliku sąprzejmowane poprzez zmianę wektora przerwania systemowego 21 h, który to wektor wskazuje na nowy kod obsługi przerwania. W dalszej kolejności wykonywany jest skok do pierwotnego kodu, który powinien wykonać się po pojawieniu się przerwania 21h, co pokazują strzałki z lewej strony fig. 2B.
Podstawowe operacje wykonywane przez nowy program obsługi przerwania pokazane są na fig. 3. Na początku następuje sprawdzenie, czy przerwanie zostało wywołane w celu otwarcia pliku. Jeśli me, to wykonywany jest skok do pierwotnego programu obsługi przerwania. Jeżeli jednak wystąpiło żądanie otwarcia pliku - krok 20, to pobierana jest nazwa otwieranego pliku krok 22, poprzez odczytanie ciągu znaków, wskazywanego przez parę rejestrów DS:DX. Ciąg ten zawiera nazwę otwieranego pliku. W następnej kolejności następuje sprawdzenie, czy dany plik powinien zostać zastąpiony innym - krok 24. Operacja ta zależy od konkretnego zastosowania sposobu, co zostanie objaśnione na kilku przykładach opisanych poniżej.
W przypadku, gdy plik powinien zostać zastąpiony innym, nazwa/identyfikator tego pliku jest zastępowana nazwą/identyfikatorem pliku zastępczego poprzez zmianę zawartości pary rejestrów DS:DX, które powinny wskazywać na ciąg znaków zawierający nazwę/identyfikator pliku zastępczego. Po wykonaniu zamiany wykonywany jest pierwotny program obsługi przerwania - krok 26. W przypadku, gdy okaże się, że dany plik nie musi być zastępowany innym, wykonywany jest bezpośredni skok do pierwotnego programu obsługi przerwania, bez wykonywania operacji zastępowania nazwy/identyfikatora pliku - krok 28.
Zamiana programu odbywa się w sposób niezauważalny zarówno dla żądającego dostępu do pliku procesu, jak i dla systemu operacyjnego. Proces żądający dostępu do pliku otrzymuje oczekiwany uchwyt do pliku, choć naprawdę uchwyt ten odnosi się do pliku zastępczego. Podobnie system operacyjny nie może wykryć, że nazwa/identyfikator otwieranego pliku zmieniła się od momentu pojawienia się żądania otwarcia tego pliku przez proces. System operacyjny otrzymuje więc zwykłe żądanie otwarcia pliku.
Jeżeli pierwotny plik jest plikiem wykonywalnym, to najlepiej aby plik zastępczy był plikiem wykonywalnym tego samego typu. Może to być istotne, gdyż proces żądający otwarcia pliku wykonywalnego prawdopodobnie będzie go chciał uruchomić. Jeśli więc plik zastępczy nie jest plikiem wykonywalnym, lub jest plikiem wykonywalnym innego typu, na przykład może
180 841 być przeznaczony do wykonania na innym typie komputera, to mogą pojawić się nieprzewidziane skutki zamiany nazwy/identyfikatora pliku.
Jeśli przyjmie się, że mogą pojawić się pliki wykonywalne kilku określonych typów, to typ pierwotnego pliku wykonywalnego może zostać łatwo ustalony. W środowisku MS-DOS istnieje pięć typów plików wykonywalnych: DOS COM, DOS ΕΧΕ, Windows ΕΧΕ, OS/2 ΕΧΕ oraz Windows NT ΕΧΕ.
Programy typu COM zostają rozpoznane przynajmniej na podstawie rozszerzenia nazwy/identyfikatora pliku, która w ich przypadku ma postać “.COM”. Wszystkie pozostałe pliki wykonywalne posiadają co prawda rozszerzenie “.ΕΧΕ”, ale posiadają również nagłówek, który jednoznacznie identyfikuje typ każdego z nich. Wszystkie pliki typu ΕΧΕ oprócz plików DOS ΕΧΕ posiadająskładający się z segmentów nagłówek, który zawiera pewne charakterystyczne bajty jednoznacznie identyfikujące typ pliku. Plik typu DOS ΕΧΕ zostaje rozpoznany po tym, że posiada rozszerzenie “.ΕΧΕ” i jego nagłówek nie jest podzielony na segmenty. Dlatego też typ pliku zostaje wyznaczony na podstawie jego rozszerzenia, zawartości nagłówka oraz danych dotyczących istnienia segmentów nagłówka.
Aby wczytać zawartość pliku wykonywalnego do pamięci i wyznaczyć rozmiar jego kodu, systemy operacyjne zawsze muszą wcześniej otworzyć ten plik. W związku z tym program zastępczy nie musi mieć takiego samego rozmiaru jak program pierwotny, choć nie powinien być większej długości, niż program pierwotny, aby mieć pewność, że się on uruchomi.
Na figurze 4 przedstawiono korzystny przykład wykonania wynalazku w przypadku programowego monitorowania.
Sprawdzenie, czy pozwolić na uruchomienie pliku, odbywa się w serwerze plików, za pomocą odpowiedniego programu sterującego. Zgodnie z fig. 4 w serwerze plików odbywa przejęcie żądania stacji roboczej otwarcia pliku - krok 30, a następnie wyznaczana jest nazwa/identyfikator otwieranego pliku - krok 32. W celu sprawdzenia, czy plik powinien być monitorowany, nazwa/identyfikator porównywany jest z listą nazw/identyfikatorów - krok 34. Jeśli plik nie jest monitorowany, to żądanie jest realizowane w sposób konwencjonalny - krok 36. Jeżeli jednak plik jest monitorowany, to następuje sprawdzenie, czy licznik używanych kopii programu osiągnął maksymalną dozwoloną wartość - krok 38. Jeśli wartość maksymalna nie została osiągnięta, to licznik zostaje zwiększony o jeden - krok 39, a żądanie otwarcia pliku jest realizowane w sposób konwencjonalny - krok 36.
W przypadku, gdy wartość maksymalna licznika używanych kopii programu została osiągnięta, to żądanie stacji roboczej nie może zostać spełnione. W tym celu, w kroku 40, określa się typ pliku wykonywalnego, przy czym w zwykłym środowisku MS-DOS wystarczy rozróżniać na przykład pomiędzy programami przeznaczonymi dla DOS i Windows. Po wyznaczeniu typu pliku wykonywalnego próbuje się znaleźć odpowiedni plik zastępczy - krok 42. Jeśli plik zastępczy jest dostępny, to nazwa/identyfikator żądanego pliku zastępowana jest nazwą/identyfikatorem odpowiedniego pliku zastępczego - krok 44 i żądanie otwarcia pliku jest dalej realizowane w sposób konwencjonalny - krok 36. Jeśli odpowiedni plik zastępczy nie zostanie znaleziony, to stacja robocza otrzymuje odpowiedni kod błędu - krok 46.
Opisując dokładniej, jeśli należy odrzucić żądanie uruchomienia programu, to program sterujący w serwerze plików wyznacza najpierw typ pliku wykonywalnego, a czyni to albo poprzez odwołanie się do wcześniej zdefiniowanej tablicy nazw/identyfikatorów plików, albo poprzez dynamiczne sprawdzanie nazw/identyfikatora pliku, rozszerzenia nazwy/identyfikatora pliku, katalogu, atrybutów lub nagłówka pliku. W praktyce, dzięki zastosowaniu powyższego sposobu, można rozróżnić większość typów plików wykonywalnych przechowywanych w serwerach plików sieci lokalnych LAN, włączając pliki przeznaczone dla systemów operacyjnych DOS, Windows, Windows NT, OS/2 i Macintosh.
Po zidentyfikowaniu typu pliku wykonywalnego, program sterujący zamienia nazwę/identyfikator żądanego pliku na nazwę/identyfikator pliku zastępczego takiego samego typu. Następnie żądanie otwarcia pliku jest wykonywane.
180 841
Po zastąpieniu pliku żądanego plikiem zastępczym i po otwarciu tego pliku przez stację roboczą uruchomiony zostaje program zastępczy. Ani stacja robocza, ani system operacyjny nie odnotują żadnej zmiany. Natomiast program zastępczy może wyświetlić na monitorze stacji roboczej odpowiedni komunikat informujący użytkownika, że dany program jest używany przez maksymalną dozwoloną liczbę użytkowników i nie może zostać uruchomiony. Program zastępczy może także przedstawić możliwość ręcznego lub automatycznego powtarzania procesu uruchomienia żądanego programu.
Ponieważ program zastępczy może określić swoją nazwę i położenie na podstawie informacji uzyskanych z systemu operacyjnego, to znaczy nazwę pierwotnie używaną w celu otwarcia pliku, więc może on również wyświetlić na monitorze nazwę programu pierwotnego i spróbować go uruchomić w łańcuchu, to znaczy zakończyć swoje działanie i uruchomić inny program - program pierwotny. Jeśli program pierwotny jest już dostępny, to jest uruchamiany, a jeśli nie jest, to ponownie uruchamiany jest program zastępczy.
Nie jest konieczne, aby przygotować program zastępczy dla każdego możliwego typu pliku pierwotnego, gdyż w najgorszym przypadku braku odpowiedniego programu zastępczego lub niemożliwości ustalenia typu pliku wykonywalnego odrzucenie żądania otwarcia pliku zakończy się zwróceniem kodu błędu.
Inny przykład wykonania wynalazku pozwala administratorowi systemu sieciowego wysłać wiadomość do dowolnego użytkownika sieci używającego dany program, poprzez zastąpienie tego programu programem zastępczym wyświetlającym odpowiedni komunikat, a następnie uruchamiającym program pierwotny. Sposób ten wykazuje przewagę nad zwykłymi programami do przesyłania wiadomości, które są ograniczane do wysyłania komunikatów do poszczególnych grup użytkowników lub użytkowników wyszczególnionych, a nie do tych, używających konkretnego programu.
Przy wykorzystaniu sposobu według wynalazku, wiadomość jest wysyłana tylko wtedy, gdy uruchamiany jest odpowiadający jej program. Typowa wiadomość może wyglądać tak: “Pliki arkusza kalkulacyjnego zawierające dane sprzedaży zostały przeniesione do katalogu x”. W ten sposób wiadomość wyświetlana jest tylko zainteresowanym użytkownikom w czasie, gdy jest to rzeczywiście potrzebne.
Kolejny przykład wykonania wynalazku dotyczy sytuacji, gdy użytkownik rozpoczyna pracę w systemie sieciowym, kiedy to można wykonać jawnie lub w sposób ukryty różne operacje związane z użytkownikiem lub systemem komputerowym. Program startowy (login) jest zwykle przechowywany w serwerze plików i jako taki, może zostać zastąpiony programem zastępczym, podobnie jak w przypadku programowego monitorowania. Program zastępczy może zostać przystosowany do automatycznego uaktualniania oprogramowania stacji roboczej, na przykład sterowników sieciowych, po czym może wykonać program startowy. W ten sposób administrator może uaktualniać pliki w stacji roboczej bez konieczności ręcznej obsługi każdej stacji i bez udziału użytkownika. Poza tym program sterujący może wyznaczyć fizyczny adres stacji roboczej, co pozwala na wykonywanie różnych operacji na różnych stacjach roboczych.
180 841
180 841
PRlEjąClE ŻĄDANIA OTHMClAr PUKU
180 841 /fpzEjĘUE ζΡΧ/30 (MNfA (MARCIA ) k PLIKU J
W ZNACZENIE KAZWY PUKU
NIE
TAK
PUK
PONIWROnany 3
3α
ZWIĘKSZENIE LICZNIKA UŻYWANYCH KOPII
HARKJSC
TAK _L
WYZNACZENIE TYPU PUKU WYKONYWALNE' GO
NIE
ZAPt/AMA MW ŻĄDANEGO PUKU NAUKA PUKU •36
180 841
POCZĄTEK PROGPAHU __ 08S±l/& PPZBiMNIA 2ih
operacyjny DOS
Fig.2A.
Departament Wydawnictw UP RP. Nakład 70 egz. Cena 4,00 zł.
Claims (11)
- Zastrzeżenia patentowe1. Sposób sterowania systemu komputerowego, dla przechwytywania i wykonywania żądania otwarcia pliku, który to system komputerowy posiada pamięć, główny procesor wykonujący program systemu operacyjnego oraz pamięć masową do przechowywania plików, w którym za pomocą systemu operacyjnego okresowo wykonuje się żądanie otwarcia pliku przechowywanego w pamięci masowej, znamienny tym, że na poziomie systemu operacyjnego przejmuje się żądanie otwarcia pliku, identyfikujące otwierany plik pierwotny, następnie z żądania wyodrębnia się identyfikator pliku pierwotnego, wyznacza się czy identyfikator pliku pierwotnego powinien zostać zastąpiony identyfikatorem pliku zastępczego i jeśli powinien, to modyfikuje się żądanie otwarcia i zastępuje się identyfikator pliku pierwotnego identyfikatorem pliku zastępczego oraz przekazuje się żądanie do systemu operacyjnego, za pomocą którego otwiera się dany plik zastępczy zamiast pliku pierwotnego.
- 2. Sposób według zastrz. 1, znamienny tym, że żądanie otwarcia pliku generuje się po stronie użytkownika, a działanie według sposobu jest niezauważalne zarówno dla systemu operacyjnego, jak i użytkownika.
- 3. Sposób według zastrz. 1, znamienny tym, że plik zastępczy wybiera się spośród zbioru plików, w zależności od identyfikatora pliku pierwotnego.
- 4. Sposób według zastrz. 1, znamienny tym, że sprawdza się czy plik pierwotny jest plikiem wykonywalnym.
- 5. Sposób według zastrz. 3, znamienny tym, że plik zastępczy wybiera się tak, aby jego typ odpowiadał typowi pierwotnego pliku wykonywalnego.
- 6. Sposób według zastrz. 5, znamienny tym, że dla wyznaczenia typu pierwotnego pliku wykonywalnego porównuje się przynajmniej część jego identyfikatora z określoną wcześniej listą identyfikatorów phków.
- 7. Sposób według zastrz. 5, znamienny tym, że typ pierwotnego pliku wykonywalnego wyznacza się bez wykorzystywania określonej wcześniej listy identyfikatorów plików.
- 8. Sposób według zastrz. 7, znamienny tym, że typ pierwotnego pliku wykonywalnego wyznacza się wykorzystując jego nagłówek.
- 9. Sposób sterowania systemu komputerowego, stanowiącego sieciowy system komputerowy mający serwer plików oraz przynajmniej jedną stację roboczą dla przechwytywania i wykonywania żądania otwarcia pliku, który to system komputerowy posiada pamięć, główny procesor wykonujący program systemu operacyjnego oraz pamięć masową do przechowywania plików, w którym za pomocą systemu operacyjnego okresowo wykonuje się żądanie otwarcia pliku przechowywanego w pamięci masowej, znamienny tym, że przechowuje się rekord liczby używanych w sieci kopii pliku pierwotnego, na poziomie systemu operacyjnego przejmuje się żądanie otwarcia pliku, identyfikujące otwierany plik pierwotny, następnie z żądania wyodrębnia się identyfikator pliku pierwotnego, wyznacza się czy identyfikator pliku pierwotnego powinien zostać zastąpiony identyfikatorem pliku zastępczego i jeśli powinien, to modyfikuje się żądanie i zastępuje się identyfikator pliku pierwotnego identyfikatorem pliku zastępczego oraz przekazuje się żądanie do systemu operacyjnego, za pomocą którego otwiera się dany plik zastępczy zamiast pliku pierwotnego, przy czym w etapie wyznaczania sprawdza się czy po uruchomieniu na żądanie kolejnej kopii programu, zapamiętana liczba używanych w sieci kopii programu przekracza wartość maksymalną.
- 10. Sposób według zastrz. 9, znamienny tym, że składające się nań kroki wykonuje się jedynie za pomocą serwera plików.
- 11. Sposób sterowania systemu komputerowego, dla przechwytywania i wykonywania żądania otwarcia pliku i redukcji liczby plików, który to system komputerowy posiada pamięć, główny procesor wykonujący program systemu operacyjnego oraz pamięć masową do przecho-180 841 wywania plików, w którym za pomocą systemu operacyjnego okresowo wykonuje się żądanie otwarcia pliku przechowywanego w pamięci masowej, znamienny tym, że na poziomie systemu operacyjnego przejmuje się żądanie otwarcia pliku, identyfikujące otwierany plik pierwotny, następnie z żądania wyodrębnia się identyfikator pliku pierwotnego, porównuje się identyfikator pliku pierwotnego ze zbiorem identyfikatorów plików i wyznacza się czy plik pierwotny jest plikiem monitorowanym, a jeśli tak, to sprawdza się licznik kopii pliku pierwotnego i wyznacza się maksymalną dozwoloną liczbę używanych kopii pliku pierwotnego, przy czym w przypadku osiągnięcia maksymalnej liczby używanych kopii pliku pierwotnego modyfikuje się żądanie otwarcia pliku i zastępuje się identyfikator pliku pierwotnego identyfikatorem pliku zastępczego oraz przekazuje się zmodyfikowane żądanie otwarcia pliku do systemu operacyjnego, za pomocą którego otwiera się dany plik zastępczy zamiast pliku pierwotnego.* * *
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/304,098 US5701463A (en) | 1994-09-09 | 1994-09-09 | Method of replacing the identity of a file with another as part of a file open request in a computer system |
PCT/GB1995/002106 WO1996007961A1 (en) | 1994-09-09 | 1995-09-06 | Method of operating a computer system |
Publications (2)
Publication Number | Publication Date |
---|---|
PL320609A1 PL320609A1 (en) | 1997-10-13 |
PL180841B1 true PL180841B1 (pl) | 2001-04-30 |
Family
ID=23175046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PL95320609A PL180841B1 (pl) | 1994-09-09 | 1995-09-06 | Sposób sterowania systemu komputerowego |
Country Status (18)
Country | Link |
---|---|
US (1) | US5701463A (pl) |
EP (1) | EP0779999A1 (pl) |
JP (1) | JPH10512981A (pl) |
KR (1) | KR100370820B1 (pl) |
CN (1) | CN1096014C (pl) |
AU (1) | AU698180B2 (pl) |
BG (1) | BG63374B1 (pl) |
BR (1) | BR9508903A (pl) |
CA (1) | CA2199520C (pl) |
CZ (1) | CZ289053B6 (pl) |
FI (1) | FI971583A (pl) |
HU (1) | HU220825B1 (pl) |
IS (1) | IS4435A (pl) |
NO (1) | NO314863B1 (pl) |
NZ (1) | NZ292238A (pl) |
PL (1) | PL180841B1 (pl) |
RU (1) | RU2163726C2 (pl) |
WO (1) | WO1996007961A1 (pl) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08123681A (ja) * | 1994-10-26 | 1996-05-17 | Canon Inc | 管理システム及び端末装置 |
US20080141033A1 (en) * | 1995-02-13 | 2008-06-12 | Intertrust Technologies Corporation | Trusted and secure techniques, systems and methods for item delivery and execution |
US7143290B1 (en) | 1995-02-13 | 2006-11-28 | Intertrust Technologies Corporation | Trusted and secure techniques, systems and methods for item delivery and execution |
US6226678B1 (en) * | 1995-09-25 | 2001-05-01 | Netspeak Corporation | Method and apparatus for dynamically defining data communication utilities |
US5894554A (en) * | 1996-04-23 | 1999-04-13 | Infospinner, Inc. | System for managing dynamic web page generation requests by intercepting request at web server and routing to page server thereby releasing web server to process other requests |
US5754763A (en) * | 1996-10-01 | 1998-05-19 | International Business Machines Corporation | Software auditing mechanism for a distributed computer enterprise environment |
KR20000052740A (ko) * | 1996-10-23 | 2000-08-25 | 에스디지아이 홀딩스 인코포레이티드 | 척수간극기 |
US5919257A (en) * | 1997-08-08 | 1999-07-06 | Novell, Inc. | Networked workstation intrusion detection system |
US6070174A (en) | 1997-09-30 | 2000-05-30 | Infraworks Corporation | Method and apparatus for real-time secure file deletion |
US5991778A (en) * | 1997-09-30 | 1999-11-23 | Stratfor Systems, Inc. | Method and apparatus for real-time secure file deletion |
US6151708A (en) * | 1997-12-19 | 2000-11-21 | Microsoft Corporation | Determining program update availability via set intersection over a sub-optical pathway |
IL123512A0 (en) * | 1998-03-02 | 1999-03-12 | Security 7 Software Ltd | Method and agent for the protection against hostile resource use access |
US6728964B1 (en) * | 1998-06-13 | 2004-04-27 | Intel Corporation | Monitoring function |
US6356863B1 (en) | 1998-09-08 | 2002-03-12 | Metaphorics Llc | Virtual network file server |
US6324546B1 (en) * | 1998-10-12 | 2001-11-27 | Microsoft Corporation | Automatic logging of application program launches |
US6263409B1 (en) * | 1998-12-22 | 2001-07-17 | Unisys Corporation | Data processing system and method for substituting one type of request for another for increased performance when processing back-to-back requests of certain types |
US6826574B1 (en) * | 1999-08-27 | 2004-11-30 | Gateway, Inc. | Automatic profiler |
AU2001285441A1 (en) * | 2000-08-31 | 2002-03-13 | Curl Corporation | Hybrid privilege enforcement in a restricted execution environment |
JP2003044155A (ja) * | 2001-07-30 | 2003-02-14 | Hitachi-Lg Data Storage Inc | ソフトウェアのインストール方法及びファームウェアのアップデート方法及びそれらに用いる記録再生装置及び記録媒体 |
US7328225B1 (en) * | 2002-03-27 | 2008-02-05 | Swsoft Holdings, Ltd. | System, method and computer program product for multi-level file-sharing by concurrent users |
US7222135B2 (en) * | 2003-12-29 | 2007-05-22 | Intel Corporation | Method, system, and program for managing data migration |
US7761853B2 (en) * | 2005-02-25 | 2010-07-20 | Kyocera Corporation | Portable terminal device, method for restoring program, method for terminating program, and computer program therefor |
JP4440825B2 (ja) * | 2005-05-17 | 2010-03-24 | 株式会社バンダイナムコゲームス | ゲームプログラム記録媒体 |
US7895651B2 (en) | 2005-07-29 | 2011-02-22 | Bit 9, Inc. | Content tracking in a network security system |
US8984636B2 (en) | 2005-07-29 | 2015-03-17 | Bit9, Inc. | Content extractor and analysis system |
US8272058B2 (en) | 2005-07-29 | 2012-09-18 | Bit 9, Inc. | Centralized timed analysis in a network security system |
US9942271B2 (en) * | 2005-12-29 | 2018-04-10 | Nextlabs, Inc. | Information management system with two or more interactive enforcement points |
GB2443005A (en) * | 2006-07-19 | 2008-04-23 | Chronicle Solutions | Analysing network traffic by decoding a wide variety of protocols (or object types) of each packet |
KR100856245B1 (ko) * | 2006-12-26 | 2008-09-03 | 삼성전자주식회사 | 파일 시스템 장치 및 그 파일 시스템의 파일 저장 및 파일 탐색 방법 |
US10540651B1 (en) * | 2007-07-31 | 2020-01-21 | Intuit Inc. | Technique for restricting access to information |
JP2009175790A (ja) * | 2008-01-21 | 2009-08-06 | Nec Corp | コンテンツ資産管理システム、方法および制御プログラム |
US10268775B2 (en) * | 2012-09-17 | 2019-04-23 | Nokia Technologies Oy | Method and apparatus for accessing and displaying private user information |
US9053121B2 (en) | 2013-01-10 | 2015-06-09 | International Business Machines Corporation | Real-time identification of data candidates for classification based compression |
US9564918B2 (en) | 2013-01-10 | 2017-02-07 | International Business Machines Corporation | Real-time reduction of CPU overhead for data compression |
US9792350B2 (en) * | 2013-01-10 | 2017-10-17 | International Business Machines Corporation | Real-time classification of data into data compression domains |
US20140201681A1 (en) * | 2013-01-16 | 2014-07-17 | Lookout, Inc. | Method and system for managing and displaying activity icons on a mobile device |
RU2543556C2 (ru) * | 2013-04-30 | 2015-03-10 | Закрытое акционерное общество "Научно-производственное предприятие "Информационные технологии в бизнесе" | Система контроля доступа к файлам на основе их ручной и автоматической разметки |
CN108959297B (zh) * | 2017-05-19 | 2021-09-28 | 海马云(天津)信息技术有限公司 | 文件系统返回指定标识的方法、装置及电子设备 |
US11328089B2 (en) * | 2019-09-20 | 2022-05-10 | International Business Machines Corporation | Built-in legal framework file management |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4757533A (en) * | 1985-09-11 | 1988-07-12 | Computer Security Corporation | Security system for microcomputers |
US4825354A (en) * | 1985-11-12 | 1989-04-25 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of file access in a distributed processing computer network |
JPS63655A (ja) * | 1986-06-20 | 1988-01-05 | Fujitsu Ltd | 計算機ネツトワ−クにおける共有デ−タの更新方法 |
US4780821A (en) * | 1986-07-29 | 1988-10-25 | International Business Machines Corp. | Method for multiple programs management within a network having a server computer and a plurality of remote computers |
US5008820A (en) * | 1987-03-30 | 1991-04-16 | International Business Machines Corporation | Method of rapidly opening disk files identified by path names |
US5109515A (en) * | 1987-09-28 | 1992-04-28 | At&T Bell Laboratories | User and application program transparent resource sharing multiple computer interface architecture with kernel process level transfer of user requested services |
US5390297A (en) * | 1987-11-10 | 1995-02-14 | Auto-Trol Technology Corporation | System for controlling the number of concurrent copies of a program in a network based on the number of available licenses |
CA1323448C (en) * | 1989-02-24 | 1993-10-19 | Terrence C. Miller | Method and apparatus for translucent file system |
US5155827A (en) * | 1989-03-17 | 1992-10-13 | Ghering Boyd W | Method for inhibiting an executable program in a disk operating system by replacing the program with an unexecutable program |
US5261051A (en) * | 1989-08-14 | 1993-11-09 | Microsoft Corporation | Method and system for open file caching in a networked computer system |
CA2067633C (en) * | 1991-07-24 | 1996-10-01 | Eric Jonathan Bauer | Method and apparatus for accessing a computer-based file system |
US5257381A (en) * | 1992-02-28 | 1993-10-26 | Intel Corporation | Method of intercepting a global function of a network operating system and calling a monitoring function |
GB2270581A (en) * | 1992-09-15 | 1994-03-16 | Ibm | Computer workstation |
US5327563A (en) * | 1992-11-13 | 1994-07-05 | Hewlett-Packard | Method for locking software files to a specific storage device |
US6317742B1 (en) * | 1997-01-09 | 2001-11-13 | Sun Microsystems, Inc. | Method and apparatus for controlling software access to system resources |
-
1994
- 1994-09-09 US US08/304,098 patent/US5701463A/en not_active Expired - Lifetime
-
1995
- 1995-09-06 CN CN95195560A patent/CN1096014C/zh not_active Expired - Fee Related
- 1995-09-06 BR BR9508903A patent/BR9508903A/pt not_active IP Right Cessation
- 1995-09-06 NZ NZ292238A patent/NZ292238A/xx unknown
- 1995-09-06 CZ CZ1997701A patent/CZ289053B6/cs not_active IP Right Cessation
- 1995-09-06 CA CA002199520A patent/CA2199520C/en not_active Expired - Fee Related
- 1995-09-06 KR KR1019970701523A patent/KR100370820B1/ko not_active IP Right Cessation
- 1995-09-06 AU AU33963/95A patent/AU698180B2/en not_active Ceased
- 1995-09-06 WO PCT/GB1995/002106 patent/WO1996007961A1/en active IP Right Grant
- 1995-09-06 EP EP95930650A patent/EP0779999A1/en not_active Withdrawn
- 1995-09-06 PL PL95320609A patent/PL180841B1/pl not_active IP Right Cessation
- 1995-09-06 RU RU97105825/09A patent/RU2163726C2/ru not_active IP Right Cessation
- 1995-09-06 JP JP8509310A patent/JPH10512981A/ja active Pending
- 1995-09-06 HU HU9702179A patent/HU220825B1/hu not_active IP Right Cessation
-
1997
- 1997-03-05 BG BG101285A patent/BG63374B1/bg unknown
- 1997-03-06 IS IS4435A patent/IS4435A/is unknown
- 1997-03-07 NO NO19971065A patent/NO314863B1/no unknown
- 1997-04-15 FI FI971583A patent/FI971583A/fi active IP Right Revival
Also Published As
Publication number | Publication date |
---|---|
BG101285A (en) | 1997-10-31 |
FI971583A0 (fi) | 1997-04-15 |
WO1996007961A1 (en) | 1996-03-14 |
NO971065D0 (no) | 1997-03-07 |
CN1166213A (zh) | 1997-11-26 |
NO314863B1 (no) | 2003-06-02 |
RU2163726C2 (ru) | 2001-02-27 |
HUT77156A (hu) | 1998-03-02 |
KR100370820B1 (ko) | 2003-04-08 |
AU3396395A (en) | 1996-03-27 |
NZ292238A (en) | 1997-08-22 |
EP0779999A1 (en) | 1997-06-25 |
CA2199520A1 (en) | 1996-03-14 |
NO971065L (no) | 1997-05-07 |
BG63374B1 (bg) | 2001-11-30 |
AU698180B2 (en) | 1998-10-29 |
US5701463A (en) | 1997-12-23 |
MX9701777A (es) | 1997-10-31 |
BR9508903A (pt) | 1998-01-13 |
CZ9700701A3 (en) | 2001-06-13 |
PL320609A1 (en) | 1997-10-13 |
FI971583A (fi) | 1997-04-15 |
CZ289053B6 (cs) | 2001-10-17 |
CN1096014C (zh) | 2002-12-11 |
IS4435A (is) | 1997-03-06 |
HU220825B1 (hu) | 2002-05-28 |
CA2199520C (en) | 2006-05-30 |
JPH10512981A (ja) | 1998-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
PL180841B1 (pl) | Sposób sterowania systemu komputerowego | |
CA2465880C (en) | Operating system abstraction and protection layer | |
US9195823B1 (en) | System and method for intercepting process creation events | |
US6209101B1 (en) | Adaptive security system having a hierarchy of security servers | |
US6434744B1 (en) | System and method for patching an installed application program | |
US7451482B2 (en) | Protected execution environments within a computer system | |
US7380267B2 (en) | Policy setting support tool | |
US6324546B1 (en) | Automatic logging of application program launches | |
US6618735B1 (en) | System and method for protecting shared system files | |
US6360364B1 (en) | System and method for installing an application on a portable computer | |
US20050091214A1 (en) | Internal object protection from application programs | |
US20050125687A1 (en) | Security-related programming interface | |
US20050081053A1 (en) | Systems and methods for efficient computer virus detection | |
US20040060046A1 (en) | Computing apparatus with automatic integrity reference generation and maintenance | |
US20050172286A1 (en) | Hosted code runtime protection | |
US6418484B1 (en) | Method of remotely executing computer processes | |
EP1361496B1 (en) | Alteration of executable code module load locations | |
US7694098B2 (en) | System and methods for avoiding base address collisions | |
MXPA97001777A (en) | Method for operating a comp system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Decisions on the lapse of the protection rights |
Effective date: 20060906 |