KR19980086609A - 동시적인 프로세서 요구에 의한 데이터 자원의 액세싱을 직렬화하기 위한 컴퓨터 시스템내에서의 블로킹 심볼 제어 - Google Patents
동시적인 프로세서 요구에 의한 데이터 자원의 액세싱을 직렬화하기 위한 컴퓨터 시스템내에서의 블로킹 심볼 제어 Download PDFInfo
- Publication number
- KR19980086609A KR19980086609A KR1019980013431A KR19980013431A KR19980086609A KR 19980086609 A KR19980086609 A KR 19980086609A KR 1019980013431 A KR1019980013431 A KR 1019980013431A KR 19980013431 A KR19980013431 A KR 19980013431A KR 19980086609 A KR19980086609 A KR 19980086609A
- Authority
- KR
- South Korea
- Prior art keywords
- instruction
- lock
- resource
- processor
- plo
- 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.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
Abstract
Description
Claims (18)
- 여러 다른 프로세서(different processors)상에서의 다수 명령 실행 인스턴스(multiple instruction execution instances)에 의한 동시적인 액세스 시도(simultaneous access attempts)로부터 컴퓨터 시스템 자원의 완전성(the integrity of resources in a computer system)을 보호하기 위한 방법에 있어서,① 블록화 심볼(blocking symbol)을 컴퓨터 시스템의 컴퓨터 자원과 소프트웨어적으로 연관시키는(software associating) 단계와,② 상기 블록화 심볼을 특정 유형의 자원 로크 명령(resource lock instruction:PLO)의 피연산자(operand)로서 배치시키고(locating), PLO 명령에 대한 실행 인스턴스에 의해서 액세스되거나 변경될 연관된 자원내의 장소(places)를 특정하기 위해 각 특정 유형의 자원 로크 명령내에 다른 피연산자들을 배치하는 단계와,③ 상기 블록화 심볼과 연관된 자원에 대한 변경을 행하는 모든 프로그램 내의 상기 특정 유형의 자원 로크 명령에 대한 명령 인스턴스를-상기 명령 인스턴스는 상기 블록화 심볼을 지점함- 배타적으로 실행(exclusively executing)하여 단계와,④ 상기 PLO 명령 인스턴스에 의해 이용되는 상기 블록화 심볼과 연관된 로크 필드(lock field)의 위치를 알아내기 위해 각 특정 유형의 자원 로크 명령의 실행 동안 보호 저장장치(protected storage)를 액세싱하는 단계와,⑤ 액세스된 로크 필드의 상태를 검사하여 상기 로크 필드와 연관되어 있는 자원이 상기 프로그램에 의해 사용될 수 있음을 나타내는 이용가능한 상태에 있는지 또는 상기 로크 필드와 연관된 자원이 상기 프로그램에 의해 사용될 수 없음을 나타내는 로크된 상태에 있는지를 판단하는 단계와,⑥ 상기 ⑤의 검사 단계에서 상기 로크 필드가 이용가능한 상태로 발견되면, 상기 컴퓨터 시스템의 다른 프로세서의 동시발생 명령 실행 인스턴스에 의한 상기 자원의 어떠한 변경도 방지하기 위해 상기 로크 필드를 상기 로크된 상태로 세팅하되 상기 ⑤의 검사 단계와 단위적으로(atomically) 행하는 단계와,⑦ 상기 자원내의 어느 위치든지 배타적으로 액세싱하고, 상기 로크 필드가 상기 로크된 상태에 있는 한 상기 명령 실행 인스턴스 동안 상기 특정 유형의 자원 로크 명령에서 지정된 위치들의 내용을 처리하는 단계와,⑧ 상기 명령 실행 인스턴스 동안의 상기 처리가 완료되면 상기 로크 필드를 이용가능한 상태에 리세팅하는 단계를 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 첫 번째 항에 있어서, 상기 ⑦의 위치들을 배타적으로 액세싱하는 단계는 상기 컴퓨터 시스템의 저장장치 내에 있는 소프트웨어 자원 내의 비연속 위치들의 내용을 알아내고 처리하는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 첫 번째 항에 있어서, 로크 필드를 검사하여 상기 로크 필드가 이용가능한 상태로 발견될 때까지 상기 명령 실행 인스턴스 동안 상기 자원에 대한 어떠한 변경도 지연시키는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 첫 번째 항에 있어서, 각 프로세서에 의해 수행되는 상기 방법은, 하드웨어-마이크로코드 서브-프로세스(hardware-microcode sub-process)를 실행하는 상기 프로세서에 의해서 상기 ⑤의 로크 검사 단계를 수행하는 단계와, 상기 로크 필드가 상기 명령 실행 인스턴스 동안 상기 자원의 어떠한 변경도 지연시키기 위한 상기 로크된 상태로 발견되면 상기 로크 필드가 상기 이용가능한 상태로 발견될 때까지 상기 서브-프로세스에서 루핑(looping)하는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 세 번째 항에 있어서, 각 프로세서에 의해 수행되는 상기 방법은, 상기 로크 필드를 검사하여 상기 로크 필드가 상기 로크된 상태로 발견되면 상기 명령 실행 인스턴스를 종료하는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 세 번째 항에 있어서, 상기 ①의 연관시키는 단계는, 상기 보호 저장장치 내에서 상기 로크 필드의 위치를 알아내기 위한 어드레스를 생성하기 위해 상기 블록화 심볼에 대한 해싱 연산(hashing operation)을 수행하는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 제 6항에 있어서, 상기 ①의 연관시키는 단계는, 상기 특정 유형의 자원 로크 명령에 대한 상기 해싱 연산을 실행할 수 있는 각 프로세서에 의해 액세스가능한 위치에 해싱 마이크로코드를 배치하는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 제 7항에 있어서, 상기 ①의 연관시키는 단계는, 각 블록화 심볼을 컴퓨터 자원과 연관시키는 단계와, 각 로크 필드를 하나 이상의 블록화 심볼에 할당하는 단계와, 상기 하나 이상의 블록화 심볼중의 어느 하나의 심볼이 상기 특정 유형의 자원 로크 명령에 의해 사용될 하나의 명령 실행 인스턴스 동안 상기 하나 이상의 블록화 심볼 각각을 상기 로크 필드로 해싱하는 단계를 더 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 컴퓨터 시스템에서 다수 프로세서 상에서 실행되는 소프트웨어 프로그램의 명령 실행 인스턴스에 의해 액세스 가능한 자원의 완전성을 보호하기 위한 방법에 있어서, 각 프로세서에 의해 수행되는 상기 방법은① 소프트웨어 프로그램의 상기 명령 실행 인스턴스의 시작을 호출하기 위해 명령을 프로세서에 의해 액세싱하는 단계와,② 상기 실행 인스턴스 동안 상기 컴퓨터 시스템의 자원을 배타적으로 액세스하기 위한 특정 요구가 있는 지를 상기 명령의 피연산자코드로부터 판단하는 단계와,③ 상기 ②의 결정 단계에서 상기 명령이 블록화 심볼을 사용하고 있다고 판단된 경우에 상기 명령의 피연산자로부터 블록화 심볼을 획득하는 단계와,④ 상기 컴퓨터 시스템의 보호 저장장치내에 로크 필드의 위치를 발생시키기 위해 상기 블록화 심볼에 대한 해싱 연산을 수행하는 단계 ― 상기 로크는 상기 명령에 의해 배타적인 액세스가 요구되는 자원과 연관되어 있음, 상기 로크 필드는 상기 해싱 연산에 의해 상기 블록화 심볼과 연관되어 있음― 와,⑤ 상기 수행 단계에 의해 액세스된 상기 로크 필드가 이용가능한 상태인지 또는 로크된 상태인지를 검사하는 단계와,⑥ 상기 ⑤의 검사 단계에서 상기 로크 필드가 상기 이용가능한 상태로 발견되면 상기 로크 필드를 상기 로크된 상태로 세팅하되 상기 ⑤의 검사 단계와 단위적으로 행하는 단계 ― 상기 프로세서가 상기 로크 필드를 검사하고 세팅하는 동안 상기 컴퓨터 시스템의 모든 다른 프로세서는 상기 로크 필드의 액세싱을 시도할 수 없음― 와,⑦ 상기 프로세서가 상기 로크 필드를 세팅함으로써 의해 상기 자원에 대한 배타적 액세스를 가능케 하는 단계와,⑧ 상기 명령에 대한 기능 코드에 의해 요구되는 비연속 저장 장치 위치에 대한 모든 액세스를 상기 실행 인스턴스의 나머지 동안 상기 자원에 대해 상기 프로세서에 의해서 실행하는 단계와,⑨ 상기 로크 필드를 상기 이용가능한 상태로 리세팅하는 단계와,⑩ 다음 명령의 실행을 상기 프로세서에 의해 호출하는 단계를 포함하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 제 9항에 있어서, 상기 프로세서는 상기 ⑤의 검사 단계에서 상기 로크 필드가 상기 로크 상태로 발견되면, 상기 프로세서는 상기 로크 비트가 언로킹된 (이용가능한) 상태로 판단될 때까지 상기 검사 단계를 반복하는 단계와, 상기 검사 단계에서 상기 로크 필드가 상기 이용가능한 상태로 발견되는 경우에 상기 로크 필드를 상기 로크된 상태로 세팅하되 상기 검사 단계와 단위적으로 행하는 단계 ― 상기 프로세서가 상기 로크 필드를 검사하고 세팅하는 동안 상기 컴퓨터 시스템의 모든 다른 프로세서는 상기 로크 필드의 액세싱을 시도할 수 없음 ― 와, 상기 프로세서가 상기 로크 필드를 세팅함으로써 상기 자원에 대한 배타적 액세스를 가능케 하는 단계와, 상기 명령에 대한 기능 코드에 의해 요구되는 모든 동작을 상기 실행 인스턴스의 나머지 동안 상기 자원에 대해 상기 프로세서에 의해서 수행하는 단계와, 상기 로크 필드를 상기 이용가능한 상태로 리세팅하는 단계와, 다음 명령의 실행을 상기 프로세서에 의해 호출하는 단계를 수행하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 제 10항에 있어서, 상기 ⑤의 검사 단계에서 상기 로크 필드가 상기 로크 상태로 발견되면, 상기 프로세서는, 상기 검사 단계에서 상기 로크 비트가 상기 로크 필드와 연관된 자원이 상기 프로세서에 의해 배타적으로 액세싱될 수 없음을 나타내는 상기 로크된 상태로 판단된 경우에 상기 실행 인스턴스를 종료하는 단계를 또한 수행하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 제 11항에 있어서, 상기 소프트웨어 프로그램은 상기 실행 인스턴스의 종료 후에 다른 실행 인스턴스에 대한 명령을 다시 호출하는 단계를 수행하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 컴퓨터 시스템의 다수 프로세서 상에서 실행되는 소프트웨어 프로그램의 명령 실행함으로써 액세스가능한 자원의 완전성을 보호하기 위한 방법에 있어서,① 상기 컴퓨터 시스템 상에 로크 연산 수행(Perform Locked Operation:PLO) 명령을 포함하는 소프트웨어 프로그램을 설치하는 단계 ― 상기 PLO 명령은 상기 컴퓨터 시스템의 연관된 자원에 대한 액세스를 제어하는데 사용되는 블록화 심볼 피연산자를 포함함 ― 와,② 상기 PLO 명령의 실행에 의해서만 변경되는 각 자원 유니트에 대해 유일한 블록화 심볼을 상기 컴퓨터 시스템의 프로그래머에 의해서 할당하는 단계와,③ 상기 블록화 심볼에 할당된 상기 자원 유니트를 변경하기 위한 각 PLO 명령 내에 피연산자를 상기 소프트웨어 프로그램에 의해 제공하는 단계와,④ 상기 블록화 심볼과 연관된 상기 자원 유니트를 액세싱하기 위한 PLO 명령을 포함하는 소프트웨어 프로그램을 상기 컴퓨터 시스템의 다수의 프로세서에 의해서 실행하는 단계와,⑤ 연관된 블록화 심볼이 할당된 자원 유니트들 중의 하나의 유니트를 참조하기 위해 상기 프로세서에 의한 모든 액세스 시도를 제어하기 위한 PLO 명령을 배타적으로 사용하고, 상기 동일한 자원 유니트에 대한 액세스를 시도하는 모든 PLO 명령에 의해 상기 동일한 블록화 심볼을 사용하는 단계와,⑥ 상기 컴퓨터 시스템의 보호 저장장치 위치 내에 하나 이상의 로크 필드를 구성하는 단계 ― 상기 로크 필드는 PLO 명령을 실행하는 상기 컴퓨터 시스템의 모든 프로세서에 의해 액세스가능함 ― 와,⑦ 실행중인 PLO 명령내의 상기 블록화 심볼에 대한 로크 필드를 상기 프로세서에 의해서 획득하는 단계와,⑧ 상기 로크 필드의 상태를 검사하고, 상기 로크 필드가 이용가능한 상태로 검사된 경우에 상기 로크 필드를 로크 상태로 세팅함으로써 로크를 획득하되 상기 검사단계와 단위적으로 행하는 단계와,⑨ 상기 로크 필드가 로크된 상태에 세팅된 동안 상기 프로세서에 의해서 상기 자원을 액세싱하고 변경하는 단계와,⑩ 상기 프로세서가 상기 PLO 명령의 실행을 완료한 후에 상기 로크 필드를 이용가능한 상태로 세팅하는 단계를 포함하는 하는 컴퓨터 시스템의 자원 완전성 보호 방법.
- 컴퓨터 시스템에 저장된 데이터가 상기 컴퓨터 시스템의 다수 프로세서 상에서 실행되는 프로그램의 소프트웨어 명령 실행에 의해 액세스가능한 경우에 상기 데이터의 완전성을 보호하기 위한 방법에 있어서,① 상기 컴퓨터 시스템의 프로세서들에 의해 실행가능한 특정 명령내의 블록화 심볼을 프로그램에 의해 지정하는 단계와,② 상기 동일한 블록화 심볼을 이용하는 동시적인 특정 명령 인스턴스들에 대한, 여러 다른 프로세서에 의한 실행 시도를 직렬화함으로써, 한번에 상기 동시적인 특정 명령 인스턴스들 중에서 하나의 인스턴스만이 실행되도록 하는 단계를 포함하는 컴퓨터 시스템의 데이터 완전성 보호 방법.
- 제 14항에 있어서, 상기 직렬화된 특정 명령 인스턴스들 중의 허용된 하나를 상기 허용된 특정 명령 인스턴스에서 지정되어 있는 다수의 비연속 위치― 상기 비연속 위치는 상기 특정 명령 인스턴스에 의해 상기 블록화 심볼과 연관된 자원내에 있음 ―를 액세싱하는 상기 프로세서들중 하나의 프로세서에 의해 실행하는 단계 를 더 포함하는 컴퓨터 시스템의 데이터 완전성 보호 방법.
- 제 15항에 있어서, 상기 블록화 심볼과 상기 컴퓨터 시스템의 보호 저장장치내의 제어 필드를 연관시키는 단계와, 상기 블록화 심볼을 가진 허용된 특정 명령 인스턴스의 실행을 시작할 때에 상기 제어 필드를 상기 로크된 상태로 세팅하고, 상기 실행 인스턴스의 종료시에 상기 제어 필드를 이용가능한 상태로 리세팅하는 단계와, 상기 제어 필드가 로크된 상태로 세팅되어 있는 동안 상기 허용된 특정 명령 인스턴스가 상기 허용된 특정 명령 인스턴스의 하나 이상의 피연산자에 지정되어 있는 비연속 위치에서 자원을 배타적으로 액세스할 수 있도록 하는 단계를 더 포함하는 컴퓨터 시스템의 데이터 완전성 보호 방법.
- 제 16항에 있어서, 상기 제어 필드에 대한 제어를 얻기 위해 각 프로세서의 하드웨어-마이크로코드 내부 제어를 작동시키는 단계와, 하드웨어-시행 단위 동작(hardware-enforced atomic operation)에 의해서 상기 보호 저장장치 위치 내의 상기 제어 필드의 상태에 대한 제어를 단위적으로 얻기 위해 각 프로세서의 상기 하드웨어-마이크로코드 내부 제어를 이용하는 단계 ― 상기 하드웨어-시행 단위 동작은 특정 명령 인스턴스들을 동시에 실행하는 상기 프로세서들 중의 하나만이 한 번에 상기 제어 필드에 대한 제어를 얻을 수 있게 함 ― 와, 상기 프로세서가 허용된 특정 명령 인스턴스 내에 지정된 동작을 수행하는 동안 상기 프로세서가 상기 제어 필드에 대한 제어를 얻음으로써 상기 허용된 특정 명령 인스턴스의 실행을 완료하는 단계와 상기 허용된 특정 명령 인스턴스의 완료시까지 상기 제어 필드의 제어를 필요로 하는 그 밖의 모든 동시적인 특정 명령 인스턴스들의 모든 다른 것에 대한 실행의 완료를 지연시키는 단계를 더 포함하는 컴퓨터 시스템의 데이터 완전성 보호 방법.
- 제 15항에 있어서, 상기 제어 필드와 연관된 블록화 심볼을 가진 임의의 특정 명령 인스턴스를 실행하는 각 프로세서에 의해서 로크 프로세서에 요구하는 단계와, 다수의 프로세서가 상기 동일한 블록화 심볼을 사용하여 다수의 특정 명령 인스턴스에 대해 동시적인 요구를 하지 않는 한, 특정 명령 인스턴스에 대한 상기 허용된 지정 명령에서 특정된 위치의 자원에 대한 배타적인 액세스를 임의의 요구 프로세서에 상기 로크 프로세서에 의해서 승인하는 단계와, 상기 동일한 블록화 심볼을 사용하는 상기 다수의 프로세서중의 하나를 상기 로크 프로세서에 의해 선택하여 상기 선택된 프로세서가 그의 특정 명령 인스턴스에 대한 처리를 완료할 수 있도록 하는 단계와, 상기 선택된 프로세서가 그의 특정 명령 인스턴스를 완료할 때까지 그밖의 모든 동시적인 특정 명령 인스턴스들에 대한 실행의 완료를 지연시키는 단계를 더 포함하는 컴퓨터 시스템의 데이터 완전성 보호 방법.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/864,402 US5893157A (en) | 1997-05-28 | 1997-05-28 | Blocking symbol control in a computer system to serialize accessing a data resource by simultaneous processor requests |
| US8/864,402 | 1997-05-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR19980086609A true KR19980086609A (ko) | 1998-12-05 |
Family
ID=25343194
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1019980013431A Abandoned KR19980086609A (ko) | 1997-05-28 | 1998-04-15 | 동시적인 프로세서 요구에 의한 데이터 자원의 액세싱을 직렬화하기 위한 컴퓨터 시스템내에서의 블로킹 심볼 제어 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5893157A (ko) |
| JP (1) | JPH1115793A (ko) |
| KR (1) | KR19980086609A (ko) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101366965B1 (ko) * | 2009-04-17 | 2014-02-24 | 노키아 코포레이션 | 프로세스간 통신을 통해 자원들을 공유하는 방법, 장치 및 컴퓨터 프로그램 제품 |
Families Citing this family (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6173393B1 (en) * | 1998-03-31 | 2001-01-09 | Intel Corporation | System for writing select non-contiguous bytes of data with single instruction having operand identifying byte mask corresponding to respective blocks of packed data |
| US6223335B1 (en) * | 1998-12-09 | 2001-04-24 | Sun Microsystems, Inc. | Platform independent double compare and swap operation |
| US6976260B1 (en) | 1999-09-24 | 2005-12-13 | International Business Machines Corporation | Method and apparatus for serializing a message queue in a multiprocessing environment |
| JP2002041304A (ja) * | 2000-07-28 | 2002-02-08 | Hitachi Ltd | 論理区画の予備リソース自動付与方法及び論理区画式計算機システム |
| US7328263B1 (en) * | 2001-01-30 | 2008-02-05 | Cisco Technology, Inc. | Controlling access of concurrent users of computer resources in a distributed system using an improved semaphore counting approach |
| US7089555B2 (en) | 2001-06-27 | 2006-08-08 | International Business Machines Corporation | Ordered semaphore management subsystem |
| US7454753B2 (en) * | 2001-06-27 | 2008-11-18 | International Business Machines Corporation | Semaphore management subsystem for use with multi-thread processor systems |
| US7257815B2 (en) * | 2001-09-05 | 2007-08-14 | Microsoft Corporation | Methods and system of managing concurrent access to multiple resources |
| US7406690B2 (en) * | 2001-09-26 | 2008-07-29 | International Business Machines Corporation | Flow lookahead in an ordered semaphore management subsystem |
| US7143414B2 (en) | 2001-09-26 | 2006-11-28 | International Business Machines Corporation | Method and apparatus for locking multiple semaphores |
| US8234089B2 (en) * | 2002-11-07 | 2012-07-31 | National Instruments Corporation | Auto-scheduling of tests |
| US7103766B2 (en) * | 2002-12-20 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | System and method for making BIOS routine calls from different hardware partitions |
| US7127587B2 (en) * | 2003-12-11 | 2006-10-24 | International Business Machines Corporation | Intent seizes in a multi-processor environment |
| EP1566744A1 (en) * | 2004-02-19 | 2005-08-24 | Sap Ag | Optimising lock granularity using range locking |
| US8561071B2 (en) * | 2005-07-11 | 2013-10-15 | International Business Machines Corporation | Process instance serialization |
| US7392335B2 (en) * | 2006-02-10 | 2008-06-24 | Oracle International Corporation | Anticipatory changes to resources managed by locks |
| US7624237B2 (en) * | 2006-05-03 | 2009-11-24 | International Business Machines Corporation | Compare, swap and store facility with no external serialization |
| US7600063B2 (en) * | 2006-09-15 | 2009-10-06 | Oracle International Corporation | Techniques for improved read-write concurrency |
| JP4941103B2 (ja) * | 2007-05-25 | 2012-05-30 | トヨタ自動車株式会社 | マルチプロセッサシステム、排他制御方法、車両用電子制御ユニット |
| EP2015174B1 (en) * | 2007-06-21 | 2018-03-14 | Imsys AB | Microprogrammed processor having multiple processor cores using time-shared access to a microprogram control store |
| WO2011104823A1 (ja) | 2010-02-23 | 2011-09-01 | 富士通株式会社 | マルチコアプロセッサシステム、スレッド制御方法、およびスレッド制御プログラム |
| US8452948B2 (en) * | 2010-06-28 | 2013-05-28 | International Business Machines Corporation | Hybrid compare and swap/perform locked operation queue algorithm |
| US10394760B1 (en) * | 2015-04-16 | 2019-08-27 | Western Digital Technologies, Inc. | Browsable data backup |
| US10496607B2 (en) * | 2016-04-01 | 2019-12-03 | Tuxera Inc. | Systems and methods for enabling modifications of multiple data objects within a file system volume |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4851990A (en) * | 1987-02-09 | 1989-07-25 | Advanced Micro Devices, Inc. | High performance processor interface between a single chip processor and off chip memory means having a dedicated and shared bus structure |
| US5081572A (en) * | 1988-10-28 | 1992-01-14 | Arnold Michael E | Manipulation of time-ordered lists and instructions therefor |
| US5142676A (en) * | 1988-12-28 | 1992-08-25 | Gte Laboratories Incorporated | Separate content addressable memories for storing locked segment addresses and locking processor identifications for controlling access to shared memory |
| JP3206914B2 (ja) * | 1989-11-09 | 2001-09-10 | インターナショナル、ビジネス、マシーンズ、コーポレーション | 多重プロセッサ・システム |
| JP2575543B2 (ja) * | 1990-04-04 | 1997-01-29 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 同時アクセス管理方法 |
| US5669002A (en) * | 1990-06-28 | 1997-09-16 | Digital Equipment Corp. | Multi-processor resource locking mechanism with a lock register corresponding to each resource stored in common memory |
| JP2673390B2 (ja) * | 1991-03-13 | 1997-11-05 | 三菱電機株式会社 | マルチポートメモリ |
| US5488729A (en) * | 1991-05-15 | 1996-01-30 | Ross Technology, Inc. | Central processing unit architecture with symmetric instruction scheduling to achieve multiple instruction launch and execution |
| JPH0784851A (ja) * | 1993-09-13 | 1995-03-31 | Toshiba Corp | 共有データ管理方法 |
| JPH07262140A (ja) * | 1994-03-16 | 1995-10-13 | Nec Corp | 排他制御装置 |
| US5574922A (en) * | 1994-06-17 | 1996-11-12 | Apple Computer, Inc. | Processor with sequences of processor instructions for locked memory updates |
| US5636361A (en) * | 1994-12-22 | 1997-06-03 | International Business Machines Corporation | Multi-processor computer system having dual memory subsytems for enabling concurrent memory access thereto by more than one processor |
| US5696939A (en) * | 1995-09-29 | 1997-12-09 | Hewlett-Packard Co. | Apparatus and method using a semaphore buffer for semaphore instructions |
-
1997
- 1997-05-28 US US08/864,402 patent/US5893157A/en not_active Expired - Lifetime
-
1998
- 1998-04-15 KR KR1019980013431A patent/KR19980086609A/ko not_active Abandoned
- 1998-05-27 JP JP10146042A patent/JPH1115793A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101366965B1 (ko) * | 2009-04-17 | 2014-02-24 | 노키아 코포레이션 | 프로세스간 통신을 통해 자원들을 공유하는 방법, 장치 및 컴퓨터 프로그램 제품 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5893157A (en) | 1999-04-06 |
| JPH1115793A (ja) | 1999-01-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR19980086609A (ko) | 동시적인 프로세서 요구에 의한 데이터 자원의 액세싱을 직렬화하기 위한 컴퓨터 시스템내에서의 블로킹 심볼 제어 | |
| US5966543A (en) | Method of using collaborative spinlocks to provide exclusive access to a resource in a multiprocessor computer system | |
| JP6294586B2 (ja) | 命令スレッドを組み合わせた実行の管理システムおよび管理方法 | |
| US8739163B2 (en) | Critical path deterministic execution of multithreaded applications in a transactional memory system | |
| JP2866241B2 (ja) | コンピュータシステムおよびスケジューリング方法 | |
| US8145817B2 (en) | Reader/writer lock with reduced cache contention | |
| KR100270591B1 (ko) | 컴퓨터 시스템 내의 데이터 자원의 액세싱를 직렬화하기 위한블록화 심볼 제어에 관련된 프로세서 | |
| US20030115476A1 (en) | Hardware-enforced control of access to memory within a computer using hardware-enforced semaphores and other similar, hardware-enforced serialization and sequencing mechanisms | |
| US5499356A (en) | Method and apparatus for a multiprocessor resource lockout instruction | |
| US8140834B2 (en) | System, method and computer program product for providing a programmable quiesce filtering register | |
| JP4866864B2 (ja) | マルチ・プロセッサ環境において共有されるリソースへのアクセスを管理する方法およびプログラム | |
| US12393371B2 (en) | Process isolation for a processor-in-memory (“PIM”) device | |
| US20080276256A1 (en) | Method and System for Speeding Up Mutual Exclusion | |
| US20060212876A1 (en) | High performance synchronization of accesses by threads to shared resources | |
| US8074274B2 (en) | User-level privilege management | |
| JP2024500779A (ja) | アドレスマッピング認識型タスク処理機構 | |
| US7725643B1 (en) | Methods and systems for detecting and avoiding an address dependency between tasks | |
| US10346196B2 (en) | Techniques for enhancing progress for hardware transactional memory | |
| US9021483B2 (en) | Making hardware objects and operations thread-safe | |
| JP3598282B2 (ja) | コンピュータ、その制御方法及びその制御方法を記録した記録媒体 | |
| MacKinnon | Advanced function extended with tightly-coupled multiprocessing | |
| US7996848B1 (en) | Systems and methods for suspending and resuming threads | |
| JP2001256065A (ja) | 排他制御方法及び計算機システム | |
| Ebrahimian Amiri et al. | Designing a low-level virtual machine for implementing real-time managed languages | |
| Nishi | Process Barrier for Predictable and Repeatable Concurrent Execution |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 19980415 |
|
| A201 | Request for examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 19980929 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 19980415 Comment text: Patent Application |
|
| PG1501 | Laying open of application | ||
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20000628 |
|
| NORF | Unpaid initial registration fee | ||
| PC1904 | Unpaid initial registration fee |