KR20060043259A - 정보 처리 장치, 네트워크 시스템 상황 제시 방법 및 컴퓨터 프로그램 - Google Patents

정보 처리 장치, 네트워크 시스템 상황 제시 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20060043259A
KR20060043259A KR1020050016711A KR20050016711A KR20060043259A KR 20060043259 A KR20060043259 A KR 20060043259A KR 1020050016711 A KR1020050016711 A KR 1020050016711A KR 20050016711 A KR20050016711 A KR 20050016711A KR 20060043259 A KR20060043259 A KR 20060043259A
Authority
KR
South Korea
Prior art keywords
information processing
information
processing apparatus
subprocessor
network
Prior art date
Application number
KR1020050016711A
Other languages
English (en)
Inventor
유끼요시 히로세
마사아끼 이소자끼
Original Assignee
소니 가부시끼 가이샤
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 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20060043259A publication Critical patent/KR20060043259A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60CVEHICLE TYRES; TYRE INFLATION; TYRE CHANGING; CONNECTING VALVES TO INFLATABLE ELASTIC BODIES IN GENERAL; DEVICES OR ARRANGEMENTS RELATED TO TYRES
    • B60C11/00Tyre tread bands; Tread patterns; Anti-skid inserts
    • B60C11/0041Tyre tread bands; Tread patterns; Anti-skid inserts comprising different tread rubber layers
    • B60C11/005Tyre tread bands; Tread patterns; Anti-skid inserts comprising different tread rubber layers with cap and base layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60CVEHICLE TYRES; TYRE INFLATION; TYRE CHANGING; CONNECTING VALVES TO INFLATABLE ELASTIC BODIES IN GENERAL; DEVICES OR ARRANGEMENTS RELATED TO TYRES
    • B60C11/00Tyre tread bands; Tread patterns; Anti-skid inserts
    • B60C11/0008Tyre tread bands; Tread patterns; Anti-skid inserts characterised by the tread rubber
    • B60C2011/0016Physical properties or dimensions

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mechanical Engineering (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은, 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것이나 연계 동작중인 것 등을, 시스템의 외관 등으로부터 사용자가 용이하면서도 확실하게 알 수 있도록 한다. 정보 처리 장치(1, 2, 4)에 액정 표시부(42-1, 42-2, 63)를 설치하고, 정보 처리 장치(3)에 LED(48)를 설치한다. 정보 처리 장치(1, 3, 4)가 네트워크(9)에 접속되어 있는 상태에서 정보 처리 장치(2)가 네트워크(9)에 접속되면, 마스터 장치로 설정되어 있는 정보 처리 장치(1)가 정보 처리 장치(2)를 포함하는 각 정보 처리 장치에 관한 정보를 수집하고, 각 정보 처리 장치에 대한 점멸 표시용 정보를 생성하여. 액정 표시부(42-1, 42-2, 63) 및 LED(48)를 점멸 표시시킨다. 정보 처리 장치(1, 3, 4)가 네트워크(9)에 접속되어 있는 상태에서 정보 처리 장치(4)가 네트워크(9)로부터 절단된 경우에는, 액정 표시부(42-1) 및 LED(48)를 점멸 표시시킨다.
정보 처리 장치, 네트워크 시스템, 마스터/슬레이브 장치, 정보 처리 컨트롤러, 그리드 컴퓨팅, 복수 프로세서

Description

정보 처리 장치, 네트워크 시스템 상황 제시 방법 및 컴퓨터 프로그램{INFORMATION PROCESSING DEVICE, NETWORK SYSTEM CONDITION PRESENTATION METHOD AND COMPUTER PROGRAM}
도 1은 본 발명의 네트워크 시스템의 일례를 도시하는 도면.
도 2는 본 발명의 정보 처리 장치가 구비하는 정보 처리 컨트롤러의 일례의 설명에 제공하는 도면.
도 3은 소프트웨어 셀의 일례를 나타내는 도면.
도 4는 소프트웨어 셀의 데이터 영역의 예를 나타내는 도면.
도 5는 복수의 정보 처리 장치가 가상적인 1대의 정보 처리 장치로서 동작하는 모습을 도시하는 도면.
도 6은 정보 처리 장치의 스프트웨어 구성의 일례를 도시하는 도면.
도 7은 4대의 정보 처리 장치가 가상적인 1대의 정보 처리 장치로서 동작하는 모습을 도시하는 도면.
도 8은 도 7의 시스템에서의 분산 처리의 예를 나타내는 도면
도 9는 각 정보 처리 장치 및 시스템의 구체적인 예를 도시하는 도면.
도 10은 도 9 중의 하드 디스크 레코더의 하드웨어 구성을 도시하는 도면.
도 11은 도 9 중의 텔레비젼 수신 장치의 하드웨어 구성을 도시하는 도면.
도 12는 도 9 중의 포터블 CD 플레이어의 하드웨어 구성을 도시하는 도면.
도 13은 도 9의 시스템의 외관 구성을 도시하는 도면.
도 14는 네트워크 시스템의 상황을 제시하는 경우의 정보 처리 장치의 소프트웨어 구성의 일례를 도시하는 도면.
도 15는 제시를 위한 장치 정보의 일례를 나타내는 도면.
도 16은 제시용 정보로서의 점멸 표시용 정보의 일례를 나타내는 도면.
도 17은 각종의 점멸 형태를 나타내는 도면.
도 18은 제시를 위한 처리의 일례를 나타내는 도면.
도 19는 제시를 위한 커맨드의 일례를 나타내는 도면.
도 20은 제시로서의 표시의 일례를 도시하는 도면.
도 21은 제시로서의 표시의 다른 예를 도시하는 도면.
도 22는 본 발명의 네드워크 시스템의 다른 예를 도시하는 도면.
도 23은 본 발명의 정보 처리 장치가 구비하는 정보 처리 컨트롤러의 다른 예의 설명에 제공하는 도면.
도 24는 DMAC의 내부 구조를 도시하는 도면.
도 25는 정보 처리 장치내의 커맨드/리스판스 구조를 나타내는 도면.
도 26은 서브 프로세서로부터 메인 메모리에의 액세스시의 순서를 나타내는 도면.
도 27은 워크 메모리의 내부 구조를 도시하는 도면.
도 28은 서브 프로세서의 내부 구조를 도시하는 도면.
도 29는 컨트롤 레지스터의 내부 구조를 도시하는 도면.
도 30은 복수의 정보 처리 장치가 가상적인 1대의 정보 처리 장치로서 동작하는 모습을 도시하는 도면.
도 31은 4대의 정보 처리 장치가 가상적인 1대의 정보 처리 장치로서 동작하는 모습을 도시하는 도면.
도 32는 도 31의 시스템에서의 분산 처리의 예를 나타내는 도면.
도 33은 각 정보 처리 장치 및 시스템의 다른 구체적인 예를 도시하는 도면.
도 34는 도 33 중의 하드 디스크 레코더의 하드웨어 구성을 도시하는 도면.
도 35는 도 33 중의 텔레비젼 수신 장치의 하드웨어 구성을 도시하는 도면.
도 36은 도 33 중의 포터블 CD 플레이어의 하드웨어 구성을 도시하는 도면.
도 37은 도 33의 시스템 외관 구성을 도시하는 도면.
도 38은 네트워크 시스템의 상황을 제시하는 경우의 정보 처리 장치의 소프트웨어 구성의 일례를 도시하는 도면.
도 39는 제시를 위한 처리의 일례를 나타내는 도면.
도 40은 제시로서의 표시의 일례를 도시하는 도면.
도 41은 제시로서의 표시의 다른 예를 도시하는 도면.
<도면의 주요 부분에 대한 부호의 설명>
1, 2 : 정보 처리 장치(하드 디스크 레코더)
3 : 정보 처리 장치(텔레비젼 수신 장치)
4 : 정보 처리 장치(포터블 CD 플레이어)
9 : 네트워크
42-1, 42-2, 63 : 액정 표시부
45 : 영상 표시부
46, 47 : 스피커
48 : LED
[특허 문헌 1] 일본 특허공개 2002-342165호 공보
[특허 문헌 2] 일본 특허공개 2002-351850호 공보
[특허 문헌 3] 일본 특허공개 2002-358289호 공보
[특허 문헌 4] 일본 특허공개 2002-366533호 공보
[특허 문헌 5] 일본 특허공개 2002-366534호 공보
[특허 문헌 6] 미국 특허 6,587,906
[특허 문헌 7] 미국 특허 6,667,920
[특허 문헌 8] 미국 특허 6,728,845
[특허 문헌 9] 미국 특허공개 2004-0039895
[특허 문헌 10] 미국 특허공개 2004-0054880
[특허 문헌 11] 미국 특허공개 2004-0098496
본 발명은 네트워크에 접속되는 정보 처리 장치, 네트워크 시스템의 상황을 제시(呈示)하는 방법 및 네트워크 시스템의 상황을 제시하기 위한 컴퓨터 프로그램에 관한 것이다.
최근, 그리드 컴퓨팅이 주목받고 있다. 그리드 컴퓨팅이란, 네트워크에 접속된 복수의 정보 처리 장치를 협조 동작시켜, 높은 연산 성능을 실현하는 기술이다.
예를 들면, 특허 문헌 1(일본 특허공개 2002-342165호 공보), 특허 문헌 2(일본 특허공개 2002-351850호 공보), 특허 문헌 3(일본 특허공개 2002-358289호 공보), 특허 문헌 4(일본 특허공개 2002-366533호 공보) 및 특허 문헌 5(일본 특허공개 2002-366534호 공보)에는 균일한 모듈러 구조, 공통의 컴퓨팅·모듈 및 균일한 소프트웨어 셀을 이용함으로써, 고속 처리용 컴퓨터·아키텍처를 실현하는 것이 개시되어 있다.
또한, 특허 문헌 6(미국 특허 6,587,906), 특허 문헌 7(미국 특허 6,667,9 20), 특허 문헌 8(미국 특허 6,728.845), 특허 문헌 9(미국 특허공개 2004-0039895), 특허 문헌 10(미국 특허공개 2004-0054880) 및 특허 문헌 11(미국 특허공개 2004-009849)에는 정보 처리 장치내에 복수개 존재하는 프로세서를 독립·병렬로 동작시킴으로써, 처리를 고속화시키는 것이 개시되어 있다.
그러나, 복수의 정보 처리 장치가 네트워크를 통해 접속되어 네트워크 시스템을 구성하고, 혹은, 또한 가상적인 1대의 정보 처리 장치로서 일정의 처리를 분 산적으로 실행하는 등, 연계하여 동작하는 경우, 사용자는 시스템의 외관 등으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것이나, 연계 동작중인 것 등을, 용이하게 알 수 없다.
그래서, 본 발명은 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것이나 연계 동작중인 것 등을, 시스템의 외관으로부터 사용자가 용이하면서도 확실하게 알 수 있도록 한 것이다.
본 발명의 정보 처리 장치는,
네트워크에 접속되어 네트워크 시스템을 구성하는 정보 처리 장치로서,
발광 수단, 표시 수단 또는 음성 출력 수단으로 이루어지는 제시 수단과,
상기 네트워크 시스템의 상황을 검출하는 검출 수단과,
이 검출 수단의 검출 결과를 기초로 제시용 정보를 생성하고, 그 제시용 정보에 의해 상기 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 제어 수단을 구비하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치는,
네트워크에 접속되어 네트워크 시스템을 구성하는 정보 처리 장치로서,
상기 네트워크 시스템의 상황을 검출하는 검출 수단과,
이 검출 수단의 검출 결과를 기초로 제시용 정보를 생성하고, 그 제시용 정보를 상기 네트워크에 접속되어 있는 다른 정보 처리 장치에 송신하여, 그 제시용 정보에 의해 당해 다른 정보 처리 장치가 구비하는 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 제어 수단을 구비하는 것을 특징으로 한다.
상기 구성의 본 발명의 정보 처리 장치에서는, 제시 수단이 발광 수단 또는 표시 수단인 경우에는, 네트워크 시스템의 상황에 따라 그 발광 수단 또는 표시 수단을 점멸 또는 점등시킴으로써, 제시 수단이 음성 출력 수단인 경우에는 네트워크 시스템의 상황에 따라 그 음성 출력 수단으로부터 음성 아나운스를 출력시킴으로써, 각각 복수의 정보 처리 장치가 네트워크를 구성하고 있는 것이나 연계 동작중인 것 등을 시스템의 외관 등으로부터 사용자가 용이하면서도 확실하게 알 수가 있다.
[1. 네트워크 시스템 및 정보 처리 장치의 제1 기본적 구성]
도 1은 본 발명의 네트워크 시스템의 일례를 도시하며, 네트워크(9)를 통해 복수의 정보 처리 장치(1, 2, 3, 4)가 접속된 것이다.
(1-1. 정보 처리 장치 및 정보 처리 컨트롤러)
정보 처리 장치(1, 2, 3, 4)는 각각 후술하는 바와 같은 각종의 AV(Audio and Visual) 기기나 포터블 기기이다.
정보 처리 장치(1)에 대해 도시하면, 정보 처리 장치(1)는 컴퓨터 기능부로서 정보 처리 컨트롤러(11)를 구비한다. 정보 처리 컨트롤러(11)는 메인 프로세서(21-1), 서브 프로세서(23-1, 23-2, 23-3), DMAC(Direct Memory Access Controller)(25-1) 및 DC(Disc Controller)(27-1)를 갖는다.
메인 프로세서(21-1)는 서브 프로세서(23-1, 23-2, 23-3)에 의한 서브 프로세서 프로그램의 실행(데이터 처리)의 스케줄 관리와 정보 처리 컨트롤러(11)(정보 처리 장치(1))의 전반적인 관리를 행한다. 단, 메인 프로세서(21-1)내에서 관리를 위한 프로그램 이외의 프로그램이 동작하도록 구성하는 것도 가능하다. 이 경우에는, 메인 프로세서(21-1)는 서브 프로세서로서도 기능하게 된다. 메인 프로세서(21-1)는 LS(Local Storage)(22-1)를 갖는다.
서브 프로세서는 1개여도 무방하나, 바람직하게는 복수로 한다. 이 예는 복수의 경우이다.
각 서브 프로세서(23-1, 23-2, 23-3)는 메인 프로세서(21-1)의 제어에 의해 병렬적이면서도 독립적으로, 서브 프로세서 프로그램을 실행하여 데이터를 처리한다. 또한, 경우에 따라서 메인 프로세서(21-1)내의 프로그램이 서브 프로세서(23-1, 23-2 또는 23-3)내의 서브 프로세서 프로그램과 연계하여 동작하도록 구성할 수도 있다. 후술하는 기능 프로그램도 메인 프로세서(21-1)내에서 동작하는 프로그램이다. 각 서브 프로세서(23-1, 23-2, 23-3)도 LS(Local Storage)(24-1, 24-2, 24-3)를 갖는다.
DMAC(25-1)는 정보 처리 컨트롤러(11)에 접속된 DRAM(Dynamic RAM) 등으로 이루어지는 메인 메모리(26-1)에 저장되어 있는 프로그램 및 데이터에 액세스하는 것이며, DC(27-1)는 정보 처리 컨트롤러(11)에 접속된 외부 기록부(28-1, 28-2)에 액세스하는 것이다.
외부 기록부(28-1, 28-2)는 고정 디스크(하드 디스크)라도 되고, 리무버블 디스크라도 되고, 또한, M0, CD±RW, DVD±RW 등의 광 디스크, 메모리 디스크, SRAM(Static RAM), R0M 등, 각종의 것을 이용할 수가 있다. 따라서, DC(27-1)는 디스크 컨트롤러라 부르지만, 외부 기록부 컨트롤러이다.
도 1의 예와 같이, 정보 처리 컨트롤러(11)에 대해 외부 기록부(28)를 복수 접속할 수 있도록, 정보 처리 컨트롤러(11)를 구성할 수 있다.
메인 프로세서(21-1), 각 서브 프로세서(23-1, 23-2, 23-3), DMAC(25-1) 및 DC(27-1)는 버스(29-1)에 의해 접속된다.
정보 처리 컨트롤러(11)에는 당해의 정보 처리 컨트롤러(11)를 구비하는 정보 처리 장치(1)를 네트워크 전체를 통해 일의적으로 의식할 수 있는 식별자가 정보 처리 장치 ID로서 할당된다.
메인 프로세서(21-1) 및 각 서브 프로세서(23-1, 23-2, 23-3)에 대해서도 마찬가지로, 각각을 특정할 수 있는 식별자가 메인 프로세서 ID 및 서브 프로세서 ID로서 할당된다.
정보 처리 컨트롤러(11)는 원칩 IC(집적 회로)로서 구성하는 것이 바람직하다.
다른 정보 처리 장치(2, 3, 4)도 마찬가지로 구성된다. 여기에서 모번호가 동일한 유니트는 브랜치 번호가 상이하여도, 특별히 한정이 없는 한 같은 기능을 하는 것으로 한다. 또한, 이하의 설명에 있어서 브랜치 번호가 생략되어 있는 경우에는, 브랜치 번호의 틀림에 의한 차이를 일으키지 않는 것으로 한다.
(1-2. 각 서브 프로세서로부터 메인 메모리에의 액세스)
상술한 바와 같이, 1개의 정보 처리 컨트롤러내의 각 서브 프로세서(23)는 독립적으로 서브 프로세서 프로그램을 실행하여 데이터를 처리하지만, 상이한 서브 프로세서가 메인 메모리(26)내의 동일 영역에 대해 동시에 판독 또는 기입을 행한 경우에는, 데이터의 부정합을 일으킬 수 있다. 따라서, 서브 프로세서(23)로부터 메인 메모리(26)로의 액세스는, 이하와 같은 순서에 의해 행한다.
도 2a에 나타낸 바와 같이, 메인 메모리(26)는 어드레스 지정 가능한 복수의 메모리 로케이션(O∼M)에 의해 구성된다. 각 메모리 로케이션에 대해서는 데이터의 상태를 나타내는 정보를 저장하기 위한 추가 세그먼트(0∼M)가 배정된다. 추가 세그먼트는 F/E 비트, 서브 프로세서 ID 및 LS 어드레스(Local Storage Address)를 포함하는 것이다. 또한, 각 메모리 로케이션에는 후술하는 액세스 키(O∼M)도 배정된다. F/E 비트는 이하와 같이 정의된다.
F/E 비트=0은 서브 프로세서(23)에 의해 판독되고 있는 처리중인 데이터 또는 빈 상태이기 때문에, 최신 데이터가 아닌 무효 데이터로서 판독 불가인 것을 나타낸다. 또한, F/E 비트=O은 당해 메모리 로케이션에 데이터 기입 가능한 것을 나타내며, 기입후에 1로 설정된다.
F/E 비트=1은 당해 메모리 로케이션의 데이터가 서브 프로세서(23)에 의해 판독되고 있지 않고, 미처리의 최신 데이터인 것을 나타낸다. 당해 메모리 로케이션 데이터는 판독 가능으로서, 서브 프로세서(23)에 의해 판독된 후에 0으로 설정된다. 또한, F/E 비트=1은 당해 메모리 로케이션이 데이터 기입 불가인 것을 나타낸다.
또한, 상기 F/E 비트=0(판독 불가/기입 가능)의 상태에 있어서, 당해 메모리 로케이션에 대해 판독 예약을 설정하는 것은 가능하다. F/E 비트=0의 메모리 로케 이션에 대해 판독 예약을 행하는 경우에는, 서브 프로세서(23)는 판독 예약을 행하는 메모리 로케이션의 추가 세그먼트에, 판독 예약 정보로서 당해 서브 프로세서(23)의 서브 프로세서 ID 및 LS 어드레스를 기입한다.
그 후, 데이터 기입측의 서브 프로세서(23)에 의해, 판독 예약된 메모리 로케이션에 데이터가 기입되어, F/E 비트=1(판독 가능/기입 불가)로 설정되었을 때, 미리 판독 예약 정보로서 추가 세그먼트에 기입된 서브 프로세서 ID 및 LS 어드레스로 판독된다.
복수의 서브 프로세서에 의해 데이터를 다단계로 처리할 필요가 있는 경우, 이와 같이 각 메모리 로케이션의 데이터 판독/기입을 제어함으로써, 이전 단계의 처리를 행하는 서브 프로세서(23)가 처리필의 데이터를 메인 메모리(26)내의 소정 어드레스에 기입한 후에 바로, 다음 단계의 처리를 행하는 다른 서브 프로세서(23)가 이전 처리 후의 데이터를 판독하는 것이 가능해진다.
도 2b에 나타낸 바와 같이, 각 서브 프로세서(23)내의 LS(24)도 어드레스 지정 가능한 복수의 메모리 로케이션(O∼L)에 의해 구성된다. 각 메모리 로케이션에 대해서는, 마찬가지로 추가 세그먼트(0∼L)가 배정된다. 추가 세그먼트는 비지 비트를 포함한다.
서브 프로세서(23)가 메인 메모리(26)내의 데이터를 자신의 LS(24)의 메모리 로케이션에 판독할 때에는, 판독할 곳의 메모리 로케이션에 대응하는 비지 비트를 1로 설정하여 예약한다. 비지 비트가 1인 메모리 로케이션에는, 다른 데이터는 저장할 수 없다. LS(24)의 메모리 로케이션에 판독한 후, 비지 비트는 0으로 되어, 임의의 목적으로 사용할 수 있게 된다.
도 2a에 나타낸 바와 같이 각 정보 처리 컨트롤러에 접속된 메인 메모리(26)에는 복수의 샌드 박스가 더 포함된다. 샌드 박스는 메인 메모리(26)내의 영역을 획정하는 것으로서, 각 샌드 박스는 각 서브 프로세서(23)에 할당되어, 그 서브 프로세서가 배타적으로 사용할 수가 있다. 즉, 각각의 서브 프로세서(23)는 자신에게 할당된 샌드 박스를 사용할 수 있지만, 이 영역을 넘어서 데이터의 액세스를 행할 수는 없다.
메인 메모리(26)는 복수의 메모리 로케이션(0∼M)으로 구성되지만, 샌드 박스는 이들 메모리 로케이션의 집합이다. 즉, 1개의 샌드 박스는 1개 또는 복수의 메모리 로케이션으로 구성된다.
또한, 메인 메모리(26)의 배타적인 제어를 실현하기 위해, 도 2c에 나타낸 바와 같은 키 관리 테이블이 이용된다. 키 관리 테이블은 정보 처리 컨트롤러내의 SRAM과 같은 비교적 고속의 메모리에 저장되어, DMAC(25)와 관련지워진다.
키 관리 테이블내에는 정보 처리 컨트롤러내의 서브 프로세서의 수와 같은 수의 엔트리가 존재하고, 각 엔트리에는 서브 프로세서 ID 및 그에 대응하는 서브 프로세서 키 및 키 마스크가 관련지워져 저장된다.
서브 프로세서(23)가 메인 메모리(26)를 사용할 때의 프로세스는, 이하와 같다. 우선, 서브 프로세서(23)는 DMAC(25)에 판독 또는 기입의 커맨드를 송신한다. 이 커맨드에는 자신의 서브 프로세서 ID와 액세스 요구처인 메인 메모리(26)의 어드레스가 포함된다.
DMAC(25)는 이 커맨드를 실행하기 전에, 키 관리 테이블을 참조하여 액세스 요구원의 서브 프로세서(23)의 서브 프로세서 키를 조사한다. 다음으로, DMAC(25)는 조사한 액세스 요구원의 서브 프로세서 키와, 액세스 요구처인 메인 메모리(26)내의 도 2a에 나타낸 메모리 로케이션에 배정된 액세스 키를 비교하여, 2개의 키가 일치한 경우에만 상기의 커맨드를 실행한다.
도 2c에 나타낸 키 관리 테이블상의 키 마스크는 그 임의의 비트가 1로 됨으로써, 그 키 마스크에 관련지워진 서브 프로세서 키의 대응하는 비트가 O 또는 1로 될 수가 있다.
예를 들면, 서브 프로세서 키가 1010이라고 한다. 통상, 이 서브 프로세서 키에 의해 1010의 액세스 키를 갖는 샌드 박스로의 액세스만이 가능하게 된다. 그러나, 이 서브 프로세서 키와 관련지워진 키 마스크가 0001로 설정되어 있는 경우에는, 키 마스크의 비트가 1로 설정된 자리만에 대해 서브 프로세서 키와 액세스 키의 일치 판정이 마스크되고, 이 서브 프로세서 키 1010에 의해, 액세스 키가 1010 또는 1011 중의 하나인 액세스 키를 갖는 샌드 박스로의 액세스가 가능해진다.
이상과 같이 하여, 메인 메모리(26)의 샌드 박스의 배타성이 실현된다. 즉, 1개의 정보 처리 컨트롤러내의 복수의 서브 프로세서에 의해 데이터를 다단계로 처리할 필요가 있는 경우, 이상과 같이 구성함으로써, 이전 단계의 처리를 행하는 서브 프로세서와 다음 단계의 처리를 행하는 서브 프로세서만이 메인 메모리(26)의 소정 어드레스에 액세스할 수 있게 되어, 데이터를 보호할 수 있다.
예를 들면, 이하와 같이 사용하는 것을 생각할 수 있다. 우선, 정보 처리 장치의 기동 직후에 있어서는, 키 마스크의 값은 모두 제로이다. 메인 프로세서내의 프로그램이 실행되어, 서브 프로세서내의 서브 프로세서 프로그램과 연계 동작하는 것으로 한다. 제1 서브 프로세서에 의해 실행된 처리 결과 데이터를 일단, 메인 메모리(26)에 저장하고, 제2 서브 프로세서로 송신하고 싶을 때에는, 해당하는 메인 메모리 영역은 당연히 어느 쪽의 서브 프로세서로부터도 액세스 가능할 필요가 있다. 그러한 경우에, 메인 프로세서내의 프로그램은 키 마스크의 값을 적절히 변경하여 복수의 서브 프로세서로부터 액세스할 수 있는 메인 메모리 영역을 설치함으로써, 서브 프로세서에 의한 다단계적인 처리를 가능하게 한다.
보다 구체적으로는, 다른 정보 처리 장치로부터의 데이터→제1 서브 프로세서에 의한 처리→제1 메인 메모리 영역→제2 서브 프로세서에 의한 처리→제2 메인 메모리 영역이라는 순서로 다단계 처리가 행해질 때에는,
제1 서브 프로세서의 서브 프로세서 키: 0100,
제1 메인 메모리 영역의 액세스 키: 0100,
제2 서브 프로세서의 서브 프로세서 키: 0101,
제2 메인 메모리 영역의 액세스 키: 0101,
과 같은 설정인 채라면, 제2 서브 프로세서는 제1 메인 메모리 영역에 액세스할 수가 없다. 따라서, 제2 서브 프로세서의 키 마스크를 O001로 함으로써, 제2 서브 프로세서에 의한 제1 메인 메모리 영역으로의 액세스를 가능하게 할 수가 있다.
(1-3. 소프트웨어 셀의 생성 및 구성)
도 1의 네트워크 시스템에서는 정보 처리 장치(1, 2, 3, 4) 사이에서의 분산 처리를 위해, 정보 처리 장치(1, 2, 3, 4) 사이에서 소프트웨어 셀이 전송된다. 즉, 어느 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(21)는 커맨드, 프로그램 및 데이터를 포함하는 소프트웨어 셀을 생성하여, 네트워크(9)를 통해 다른 정보 처리 장치에 송신함으로써, 처리를 분산할 수가 있다.
도 3에 소프트웨어 셀의 구성의 일례를 나타낸다. 이 예의 소프트웨어 셀은 전체적으로, 송신원 ID, 송신처 ID, 리스판스처 ID, 셀 인터페이스, DMA 커맨드, 프로그램 및 데이터에 의해 구성된다.
송신원 ID에는 소프트웨어 셀의 송신원인 정보 처리 장치의 네트워크 어드레스 및 정보 처리 장치 ID, 또한, 그 정보 처리 장치내의 정보 처리 컨트롤러가 구비하는 메인 프로세서(21) 및 각 서브 프로세서(23)의 식별자(메인 프로세서 ID 및 서브 프로세서 ID)가 포함된다.
송신처 ID 및 리스판스처 ID에는, 각각, 소프트웨어 셀의 송신처인 정보 처리 장치 및 소프트웨어 셀의 실행 결과의 리스판스처인 정보 처리 장치에 대한, 동일한 정보가 포함된다.
셀 인터페이스는 소프트웨어 셀의 이용에 필요한 정보이며, 글로벌 ID, 필요한 서브 프로세서의 정보, 샌드 박스 사이즈 및 전회의 소프트웨어 셀 ID로 구성된다.
글로벌 ID는 네트워크 전체를 통해 당해의 소프트웨어 셀을 일의적으로 식별하는 것이며, 송신원 ID 및 소프트웨어 셀의 작성 또는 송신의 일시(일자 및 시각) 에 기초하여 작성된다.
필요한 서브 프로세서의 정보는 당해 소프트웨어 셀의 실행에 필요한 서브 프로세서의 수가 설정된다. 샌드 박스 사이즈는 당해 소프트웨어 셀의 실행에 필요한 메인 메모리(26)내 및 서브 프로세서(23)의 LS(24)내의 메모리량이 설정된다.
전회의 소프트웨어 셀 ID는 스트리밍 데이터 등의 시퀀셜한 실행을 요구하는 1그룹의 소프트웨어 셀내의, 전회의 소프트웨어 셀의 식별자이다.
소프트웨어 셀의 실행 섹션은 DMA 커맨드, 프로그램 및 데이터로 구성된다. DMA 커맨드에는 프로그램의 기동에 필요한 일련의 DMA 커맨드가 포함되고, 프로그램에는 서브 프로세서(23)에 의해 실행되는 서브 프로세서 프로그램이 포함된다. 여기에서의 데이터는 이 서브 프로세서 프로그램을 포함하는 프로그램에 의해 처리되는 데이터이다.
또한, DMA 커맨드에는 로드 커맨드, 퀵 커맨드, 기능 프로그램 실행 커맨드, 스테이터스 요구 커맨드 및 스테이터스 회신 커맨드가 포함된다.
로드 커맨드는 메인 메모리(26)내의 정보를 서브 프로세서(23)내의 LS(24)로 로드하는 커맨드으로서, 로드 커맨드 자체 외에 메인 메모리 어드레스, 서브 프로세서 ID 및 LS 어드레스를 포함한다. 메인 메모리 어드레스는 정보의 로드원인 메인 메모리(26)내의 소정 영역의 어드레스를 나타낸다. 서브 프로세서 ID 및 LS 어드레스는 정보의 로드처인 서브 프로세서(23)의 식별자 및 LS(24)의 어드레스를 나타낸다.
퀵 커맨드는 서브 프로세서 프로그램의 실행을 개시하는 커맨드으로서, 퀵 커맨드 자체 외에 서브 프로세서 ID 및 프로그램 카운터를 포함한다. 서브 프로세서 ID는 퀵 대상의 서브 프로세서(23)를 식별하고, 프로그램 카운터는 서브 프로세서 프로그램 실행용 프로그램 카운터를 위한 어드레스를 부여한다.
기능 프로그램 실행 커맨드는, 후술하는 바와 같이, 어느 정보 처리 장치가 다른 정보 처리 장치에 대해 기능 프로그램의 실행을 요구하는 커맨드가다. 기능 프로그램 실행 커맨드를 수신한 정보 처리 장치내의 정보 처리 컨트롤러는, 후술하는 기능 프로그램 ID에 의해 기동할 기능 프로그램을 식별한다.
스테이터스 요구 커맨드는 송신처 ID로 가리키는 정보 처리 장치의 현재의 동작 상태(상황)에 관한 장치 정보를, 리스판스처 ID로 가리키는 정보 처리 장치앞으로 송신하는 것을 요구하는 커맨드가다. 기능 프로그램에 대해서는 후술하지만, 도 6에 도시하는 정보 처리 장치의 메인 메모리(26)가 기억하는 소프트웨어의 구성도에 있어서 기능 프로그램에 카테고라이즈되는 프로그램이다. 기능 프로그램은 메인 메모리(26)에 로드되어 메인 프로세서(21)에 의해 실행된다.
스테이터스 회신 커맨드는 상기 스테이터스 요구 커맨드를 수신한 정보 처리 장치가, 자신의 장치 정보를 당해 스테이터스 요구 커맨드에 포함되는 리스판스처 ID로 가리키는 정보 처리 장치에 리스판스하는 커맨드가다. 스테이터스 회신 커맨드는 실행 섹션의 데이터 영역에 장치 정보를 저장한다.
도 4에 DMA 커맨드가 스테이터스 회신 커맨드인 경우에서의 소프트웨어 셀의 데이터 영역의 구조를 나타낸다.
정보 처리 장치 ID는 정보 처리 컨트롤러를 구비하는 정보 처리 장치를 식별 하기 위한 식별자로서, 스테이터스 회신 커맨드를 송신하는 정보 처리 장치의 ID를 나타낸다. 정보 처리 장치 ID는 전원 투입시, 그 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(21)에 의해, 전원 투입시의 일시, 정보 처리 장치의 네트워크 어드레스 및 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 서브 프로세서(23)의 수 등에 기초하여 생성된다.
정보 처리 장치 종별 ID에는 당해의 정보 처리 장치의 특징을 나타내는 값이 포함된다. 정보 처리 장치의 특징이란, 예를 들면, 후술하는 하드 디스크 레코더, 텔레비젼 수신 장치, 포터블 CD(Compact Disc) 플레이어 등이다. 또한, 정보 처리 장치 종별 ID는 영상 음성 기록, 영상 음성 재생 등, 정보 처리 장치의 기능을 나타내는 것이라도 된다. 정보 처리 장치의 특징이나 기능을 나타내는 값은 미리 결정되어 있는 것으로 하고, 정보 처리 장치 종별 ID를 판독함으로써, 당해 정보 처리 장치의 특징이나 기능을 파악하는 것이 가능하다.
MS(Master/Slave) 스테이터스는, 후술하는 바와 같이 정보 처리 장치가 마스터 장치 또는 슬레이브 장치 중 어느 것으로 동작하고 있는지를 나타내는 것으로, 이것이 0으로 설정되어 있는 경우에는 마스터 장치로서 동작하고 있는 것을 나타내며, 1로 설정되어 있는 경우에는 슬레이브 장치로서 동작하고 있는 것을 나타낸다.
메인 프로세서 동작 주파수는 정보 처리 컨트롤러내의 메인 프로세서(21)의 동작 주파수를 나타낸다. 메인 프로세서 사용율은 메인 프로세서(21)에서 현재 동작하고 있는 모든 프로그램에 대한 메인 프로세서(21)에서의 사용율을 나타낸다. 메인 프로세서 사용율은 대상 메인 프로세서 처리 능력에 대한 사용중의 처리 능력 의 비율을 나타낸 값으로, 예를 들면 프로세서 처리 능력 평가를 위한 단위인 MIPS를 단위로서 산출, 또는 단위 시간당의 프로세서 사용 시간에 기초하여 산출된다. 후술하는 서브 프로세서 사용율에 대해서도 마찬가지이다.
서브 프로세서수는 당해의 정보 처리 컨트롤러가 구비하는 서브 프로세서(23)의 수를 나타낸다. 서브 프로세서 ID는 당해의 정보 처리 컨트롤러내의 각 서브 프로세서(23)를 식별하기 위한 식별자이다.
서브 프로세서 스테이터스는 각 서브 프로세서(23)의 상태를 나타내는 것으로 unused, reserved, busy 등의 상태가 있다. unused는 당해의 서브 프로세서가 현재 사용되고 있지 않으며 사용의 예약도 되어 있지 않은 것을 나타낸다. reserved는 현재는 사용되고 있지 않지만, 사용이 예약되어 있는 상태를 나타낸다. busy는 현재 사용중인 것을 나타낸다.
서브 프로세서 사용율은 당해의 서브 프로세서에서 현재 실행하고 있는, 또는 당해의 서브 프로세서에 실행이 예약되어 있는 서브 프로세서 프로그램에 대한, 당해 서브 프로세서에서의 사용율을 나타낸다. 즉, 서브 프로세서 사용율은 서브 프로세서 스테이터스가 busy인 경우에는 현재의 사용율을 나타내고, 서브 프로세서 스테이터스가 reserved인 경우에는 나중에 사용될 예정의 추정 사용율을 나타낸다.
서브 프로세서 ID, 서브 프로세서 스테이터스 및 서브 프로세서 사용율은 1개의 서브 프로세서(23)에 대해 1세트 설정되어, 1개의 정보 처리 컨트롤러내의 서브 프로세서(23)의 수의 세트수만큼 설정된다.
메인 메모리 총용량 및 메인 메모리 사용량은, 각각, 당해의 정보 처리 컨트 롤러에 접속되어 있는 메인 메모리(26)의 총용량 및 현재 사용중의 용량을 나타낸다.
외부 기록부수는 당해의 정보 처리 컨트롤러에 접속되어 있는 외부 기록부(28)의 수를 나타낸다. 외부 기록부 ID는 당해 정보 처리 컨트롤러에 접속되어 있는 외부 기록부(28)를 일의적으로 식별하는 정보이다. 외부 기록부 종목 ID는 당해의 외부 기록부의 종류(예를 들면, 하드 디스크, CD±RW, DVD±RW, 메모리 디스크, SRAM, ROM 등)를 나타낸다.
외부 기록부 총용량 및 외부 기록부 사용량은, 각각, 외부 기록부 ID에 의해 식별되는 외부 기록부(28)의 총용량 및 현재 사용중의 용량을 나타낸다.
외부 기록부 ID, 외부 기록부 종별 ID, 외부 기록부 총용량 및 외부 기록부 사용량은 1개의 외부 기록부(28)에 대해 1세트 설정되어, 당해의 정보 처리 컨트롤러에 접속되어 있는 외부 기록부(28)의 수의 세트수만큼 설정된다. 즉, 1개의 정보 처리 컨트롤러에 복수의 외부 기록부가 접속되어 있는 경우, 각각의 외부 기록부에는 상이한 외부 기록부 ID가 할당되고, 외부 기록부 종별 ID, 외부 기록부 총용량 및 외부 기록부 사용량도 개별적으로 관리된다.
(1-4. 소프트웨어 셀의 실행)
어느 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(21)는, 이상과 같은 구성의 소프트웨어 셀을 생성하여, 네트워크(9)를 통해 다른 정보 처리 장치 및 당해 장치내의 정보 처리 컨트롤러에 송신한다. 송신원의 정보 처리 장치, 송신처의 정보 처리 장치, 리스판스처의 정보 처리 장치 및 각 장치내의 정 보 처리 컨트롤러는, 각각, 상기의 송신원 ID, 송신처 ID 및 리스판스처 ID에 의해 식별된다.
소프트웨어 셀을 수신한 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(21)는 그 소프트웨어 셀을 메인 메모리(26)에 저장한다. 또한, 송신처의 메인 프로세서(21)는 소프트웨어 셀을 판독하여, 거기에 포함되는 DMA 커맨드를 처리한다.
구체적으로, 송신처의 메인 프로세서(21)는, 우선, 로드 커맨드를 실행한다. 이에 따라, 로드 커맨드에서 지시된 메인 메모리 어드레스로부터, 로드 커맨드에 포함되는 서브 프로세서 ID 및 LS 어드레스에서 특정되는 서브 프로세서내의 LS(24)의 소정 영역으로, 정보가 로드된다. 여기에서 로드되는 정보는 수신한 소프트웨어 셀에 포함되는 서브 프로세서 프로그램 또는 데이터, 혹은 그 밖의 지시된 데이터이다.
다음으로, 메인 프로세서(21)는 퀵 커맨드를 이에 포함되는 서브 프로세서 ID로 지시된 서브 프로세서에, 마찬가지로 퀵 커맨드에 포함되는 서브 프로그램 카운터와 함께 송신한다.
지시된 서브 프로세서는 그 퀵 커맨드 및 프로그램 카운터에 따라, 서브 프로세서 프로그램을 실행한다. 그리고, 실행 결과를 메인 메모리(26)에 저장한 후, 실행을 완료한 것을 메인 프로세서(21)에 통지한다.
또, 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 있어서 소프트웨어 셀을 실행하는 프로세서는 서브 프로세서(23)로 한정되는 것이 아니라, 메인 프로 세서(21)가 소프트웨어 셀에 포함되는 기능 프로그램 등의 메인 메모리용 프로그램을 실행하도록 지정하는 것도 가능하다.
이 경우에는, 송신원의 정보 처리 장치는 송신처의 정보 처리 장치앞으로 서브 프로세서 프로그램 대신에, 메인 메모리용 프로그램 및 메인 메모리용 프로그램에 의해 처리되는 데이터를 포함하고 DMA 커맨드가 로드 커맨드인 소프트웨어 셀을 송신하여, 메인 메모리(26)에 메인 메모리용 프로그램 및 그에 따라 처리되는 데이터를 기억시킨다.
다음으로, 송신원의 정보 처리 장치는 송신처의 정보 처리 장치앞으로 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 대한 메인 프로세서 ID, 메인 메모리 어드레스, 메인 메모리용 프로그램을 식별하기 위한 후술하는 기능 프로그램 ID 등의 식별자, 및 프로그램 카운터를 포함하고 DMA 커맨드가 퀵 커맨드 또는 기능 프로그램 실행 커맨드인 소프트웨어 셀을 송신하여, 메인 프로세서(21)에 당해 메인 메모리용 프로그램을 실행시킨다.
이상과 같이, 본 발명의 네트워크 시스템에서는, 송신원의 정보 처리 장치는 서브 프로세서 프로그램 또는 메인 메모리용 프로그램을 소프트웨어 셀에 의해 송신처의 정보 처리 장치에 송신할 뿐만 아니라, 당해 서브 프로세서 프로그램을 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 서브 프로세서(23)에 로드시켜, 당해 서브 프로세서 프로그램 또는 당해 메인 메모리용 프로그램을 송신처의 정보 처리 장치에 실행시킬 수가 있다.
송신처의 정보 처리 장치내의 정보 처리 컨트롤러에서는, 수신한 소프트웨어 셀에 포함되는 프로그램이 서브 프로세서 프로그램인 경우에는, 당해 서브 프로세서 프로그램을 지정된 서브 프로세서에 로드시킨다. 그리고, 소프트웨어 셀에 포함되는 서브 프로세서 프로그램 또는 메인 메모리용 프로그램을 실행시킨다.
따라서, 사용자가 송신처의 정보 처리 장치를 조작하지 않아도 자동적으로, 당해 서브 프로세서 프로그램 또는 당해 메인 메모리용 프로그램을 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 실행시킬 수가 있다.
이와 같이 하여 정보 처리 장치는, 자장치내의 정보 처리 컨트롤러가 서브 프로세서 프로그램 또는 기능 프로그램 등의 메인 메모리용 프로그램을 갖고 있지 않은 경우에는, 네트워크에 접속된 다른 정보 처리 장치로부터 그것들을 취득할 수가 있다. 또한, 각 서브 프로세서와 메인 메모리 사이에서는 DMA 방식에 의해 데이터가 전송되고, 또한 상술한 샌드 박스를 사용함으로써, 1개의 정보 처리 컨트롤러내에서 데이터를 다단계로 처리할 필요가 있는 경우에서도, 고속이면서 고시큐리티로 처리를 실행할 수 있다.
[2. 정보 처리 장치간의 분산 처리의 제1 예]
소프트웨어 셀의 사용에 의한 분산 처리의 결과, 도 5의 상단에 도시한 바와 같이 네트워크(9)에 접속되어 있는 복수의 정보 처리 장치(1, 2, 3, 4)는, 도 5의 하단에 도시한 바와 같이, 가상적인 1대의 정보 처리 장치(7)로서 동작한다. 단, 그것을 위해서는 이하와 같은 구성에 의해, 이하와 같은 처리가 실행될 필요가 있다.
(2-1. 시스템의 소프트웨어 구성과 프로그램의 로드)
도 6에 개개의 정보 처리 컨트롤러의 메인 메모리(26)가 기억하는 소프트웨어의 구성을 도시한다. 이들의 소프트웨어(프로그램)는 정보 처리 장치에 전원이 투입되기 전에 있어서는, 당해의 정보 처리 컨트롤러에 접속되는 외부 기록부(28)에 기록되어 있는 것이다.
각 프로그램은 기능 또는 특징에 의해, 제어 프로그램, 기능 프로그램 및 디바이스 드라이버에 카테고라이즈된다.
제어 프로그램은 각 정보 처리 컨트롤러가 동일한 것을 구비하고, 각 정보 처리 컨드롤러의 메인 프로세서(21)가 실행하는 것으로, 후술하는 MS(Master/Slave)매니져 및 능력 교환 프로그램을 포함한다.
기능 프로그램은 메인 프로세서(21)가 실행하는 것으로, 기록용, 재생용, 소재 검색용 등, 정보 처리 컨트롤러마다 정보 처리 장치에 부합하는 것이 갖추어진다.
디바이스 드라이버는 정보 처리 컨트롤러(정보 처리 장치)의 입출력(송수신)용으로, 방송 수신, 모니터 출력, 비트 스트림 입출력, 네트워크 입출력 등 정보 처리 컨트롤러마다 정보 처리 장치에 부합하는 것이 갖추어진다.
케이블의 플러그 등에 의해 정보 처리 장치가 물리적으로 네트워크(9)에 접속된 상태로, 정보 처리 장치에 주전원이 투입되어 정보 처리 장치가 전기적·기능적으로도 네트워크(9)에 접속되면, 그 정보 처리 장치의 정보 처리 컨트롤러의 메인 프로세서(21)는 제어 프로그램에 속하는 각 프로그램 및 디바이스 드라이버에 속하는 각 프로그램을, 메인 메모리(26)에 로드한다.
로드 순서로서는, 메인 프로세서(21)는 우선, DC(27)에 판독 커맨드를 실행시킴으로써, 외부 기록부(28)로부터 프로그램을 판독하고, 다음으로, DMAC(25)에 기입 커맨드를 실행시킴으로써, 그 프로그램을 메인 메모리(26)에 기입한다.
기능 프로그램에 속하는 각 프로그램에 대해서는, 필요할 때에 필요한 프로그램만을 로드하도록 구성하여도 되고, 또는, 다른 카테고리에 속하는 프로그램과 마찬가지로, 주전원 투입 직후에 각 프로그램을 로드하도록 구성하여도 된다.
기능 프로그램에 속하는 각 프로그램은, 네트워크에 접속된 모든 정보 처리 장치의 외부 기록부(28)에 기록되어 있을 필요는 없고, 어느 1개의 정보 처리 장치의 외부 기록부(28)에 기록되어 있으면, 전술의 방법에 의해 다른 정보 처리 장치로부터 로드할 수 있으므로, 결과적으로 도 5의 하단에 도시하는 바와 같이, 가상적인 1대의 정보 처리 장치(7)로서 기능 프로그램을 실행할 수 있다.
또한, 전술한 바와 같이, 메인 프로세서(21)에 의해 처리되는 기능 프로그램은, 서브 프로세서(23)에 의해 처리되는 서브 프로세서 프로그램과 연계 동작하는 경우가 있다. 따라서, 메인 프로세서(21)가 외부 기록부(28)로부터 기능 프로그램을 판독하여 메인 메모리(26)에 기입할 때에, 대상이 되는 기능 프로그램과 연계 동작하는 서브 프로세서 프로그램이 존재하는 경우에는, 당해 서브 프로세서 프로그램도 아울러 동일한 메인 메모리(26)에 기입한다. 이 경우, 연계 동작하는 서브 프로세서 프로그램은 1개인 경우도 있지만, 복수개인 것도 있을 수 있다. 복수개인 경우에는, 모든 연계 동작하는 서브 프로세서 프로그램을 메인 메모리(26)에 기입한다.
메인 메모리(26)에 기입된 서브 프로세서 프로그램은, 그 후, 서브 프로세서(23)내의 LS(24)에 기입되어, 메인 프로세서(21)에 의해 처리되는 기능 프로그램과 연계 동작한다.
도 3의 소프트웨어 셀에 나타낸 바와 같이, 기능 프로그램에는 프로그램마다 프로그램을 일의적으로 식별할 수 있는 식별자가, 기능 프로그램 ID로서 할당된다. 기능 프로그램 ID는 기능 프로그램의 작성의 단계에서, 작성 일시나 정보 처리 장치 ID 등으로부터 결정된다.
서브 프로세서 프로그램에도 서브 프로세서 프로그램 ID가 할당되어, 이에 따라 서브 프로세서 프로그램을 일의적으로 식별 가능하다. 할당되는 서브 프로세서 프로그램 ID는 연계 동작의 상대가 되는 기능 프로그램의 기능 프로그램 ID와 관련성이 있는 식별자, 예를 들면 기능 프로그램 ID를 모번호로 한 다음 가장 끝에 브랜치 번호를 부가시킨 식별자라도 되지만, 연계 동작의 상대가 되는 기능 프로그램의 기능 프로그램 ID와는 관련성이 없는 식별자라도 된다.
어느 것으로 하여도, 기능 프로그램과 서브 프로세서 프로그램이 연계 동작하는 경우에는, 양자 모두 상대의 식별자인 프로그램 ID를 자프로그램내에 기억하여 둘 필요가 있다. 기능 프로그램이 복수개의 서브 프로세서 프로그램과 연계 동작하는 경우에도, 당해 기능 프로그램은 그 복수개의 서브 프로세서 프로그램의 서브 프로세서 프로그램 ID를 모두 기억해 둔다.
메인 프로세서(21)는 자신이 동작하는 정보 처리 장치의 장치 정보(장치의 종별, 능력, 동작 상태, 장치가 갖는 자원 등의 장치에 관한 정보)를 저장하기 위 한 영역을 메인 메모리(26)에 확보하여, 당해 정보를 자장치의 장치 정보 테이블로서 기록한다. 여기에서의 장치 정보는, 구체적으로는, 도 4에 나타낸 정보 처리 장치 ID 이하의 각 정보이다.
(2-2. 시스템에서의 마스터/슬레이브의 결정)
상술한 네트워크 시스템에서는 어느 정보 처리 장치로의 주전원 투입시, 그 정보 처리 장치의 정보 처리 컨트롤러의 메인 프로세서(21)는 마스터/슬레이브 매니저(이하, MS 매니저)를 메인 메모리(26)에 로드하여 실행한다.
MS 매니저는 자신이 동작하는 정보 처리 장치가 네트워크(9)에 접속되어 있는 것을 검지하면, 동일한 네트워크(9)에 접속되어 있는 다른 정보 처리 장치의 존재를 확인한다. 여기에서의 「접속」 또는 「존재」는 상술한 바와 같이, 정보 처리 장치가 물리적으로 네트워크(9)에 접속되어 있을 뿐만 아니라, 전기적·기능적으로도 네트워크에 접속되어 있는 것을 나타낸다.
이하에서는, 자신이 동작하는 정보 처리 장치를 자장치, 다른 정보 처리 장치를 타장치라 한다. 당해 장치도 당해 정보 처리 장치를 가리키는 것으로 한다.
MS 매니저가 동일한 네트워크(9)에 접속되어 있는 다른 정보 처리 장치의 존재를 확인하는 방법을, 이하에 나타낸다.
MS 매니저는 DMA 커맨드가 스테이터스 요구 커맨드가며, 송신원 ID 및 리스판스처 ID가 당해 정보 처리 장치에서, 송신처 ID를 특정하지 않는 소프트웨어 셀을 생성하여 당해 정보 처리 장치가 접속된 네트워크상에 송신하고, 네트워크 접속 확인용 타이머를 설정한다. 타이머의 타임 아웃 시간은, 예를 들면 10분으로 한 다.
당해 네트워크 시스템상에 다른 정보 처리 장치가 접속되어 있는 경우, 그 외 장치는, 상기 스테이터스 요구 커맨드의 소프트웨어 셀를 수신하고, 상기 리스판스처 ID로 특정되는 스테이터스 요구 커맨드를 발행한 정보 처리 장치에 대해, DMA 커맨드가 스테이터스 회신 커맨드가면서 데이터로서 자신(그 외 장치)의 장치 정보를 포함하는 소프트웨어 셀을 송신한다. 이 스테이터스 회신 커맨드의 소프트웨어 셀에는, 적어도 당해 타장치를 특정하는 정보(정보 처리 장치 ID, 메인 프로세서에 관한 정보, 서브 프로세서에 관한 정보 등) 및 당해 타장치의 MS 스테이터스가 포함된다.
스테이터스 요구 커맨드를 발행한 정보 처리 장치의 MS 매니저는, 상기 네트워크 접속 확인용의 타이머가 타임 아웃할 때까지, 당해 네트워크상의 타장치로부터 송신되는 스테이터스 회신 커맨드의 소프트웨어 셀의 수신을 감시한다. 그 결과, MS 스테이터스=0(마스터 장치)을 나타내는 스테이터스 회신 커맨드가 수신된 경우에는, 자장치의 장치 정보 테이블에서의 MS 스테이터스를 1로 설정한다. 이에 따라, 당해 장치는 슬레이브 장치로 된다.
한편, 상기 네트워크 접속 확인용의 타이머가 타임 아웃할 때까지의 사이에 스테이터스 회신 커맨드가 전혀 수신되지 않은 경우, 또는 MS 스테이터스=0(마스터 장치)을 나타내는 스테이터스 회신 커맨드가 수신되지 않은 경우에는, 자장치의 장치 정보 테이블에서의 MS 스테이터스를 0으로 설정한다. 이에 따라, 당해 장치는 마스터 장치로 된다.
즉, 어느 장치도 네트워크(9)에 접속되어 있지 않은 상태, 또는 네트워크(9)상에 마스터 장치가 존재하지 않는 상태에 있어서, 새로운 정보 처리 장치가 네트워크(9)에 접속되면, 당해 장치는 자동적으로 마스터 장치로서 설정된다. 한편, 네트워크(9)에 이미 마스터 장치가 존재하는 상태에 있어서, 새로운 정보 처리 장치가 네트워크(9)에 접속되면, 당해 장치는 자동적으로 슬레이브 장치로서 설정된다.
마스터 장치 및 슬레이브 장치의 어느 것에 대해서도, MS 매니저는 정기적으로 스테이터스 요구 커맨드를 네트워크(9)상의 타장치에 송신하여 스테이터스 정보를 조회함으로써, 타장치의 상황을 감시한다. 그 결과, 네트워크(9)에 접속되어 있는 정보 처리 장치의 주전원이 차단, 또는 네트워크(9)로부터 정보 처리 장치가 분리됨으로써, 이미 판정용으로 설정된 소정 기간내에 특정의 타장치로부터 스테이터스 회신 커맨드가 회신되지 않은 경우나, 네트워크(9)에 새로운 정보 처리 장치가 접속된 경우 등, 네트워크(9)의 접속 상태에 변화가 있었던 경우에는, 그 정보를 후술하는 능력 교환 프로그램에 통지한다.
(2-3. 능력 교환에 의한 장치 정보의 취득)
메인 프로세서(21)는 MS 매니저로부터 네트워크(9)상의 타장치의 조회 및 자장치의 MS 스테이터스의 설정 완료의 통지를 받으면, 능력 교환 프로그램을 실행한다.
능력 교환 프로그램은 자장치가 마스터 장치인 경우에는, 네트워크(9)에 접속되어 있는 모든 타장치의 장치 정보, 즉, 각 슬레이브 장치의 장치 정보를 취득 한다.
타장치의 장치 정보의 취득은, 상술한 바와 같이, DMA 커맨드가 스테이터스 요구 커맨드인 소프트웨어 셀을 생성하여 타장치에 송신하고, 그 후, DMA 커맨드가 스테이터스 회신 커맨드가면서 데이터로서 타장치의 장치 정보를 포함하는 소프트웨어 셀을 타장치로부터 수신함으로서 가능하다.
능력 교환 프로그램은 마스터 장치인 자장치의 장치 정보 테이블과 마찬가지로, 네트워크(9)에 접속되어 있는 모든 타장치(각 슬레이브 장치)의 장치 정보를 저장하기 위한 영역을 자장치의 메인 메모리(26)에 확보하고, 이들 정보를 타장치(슬레이브 장치)의 장치 정보 테이블로서 기록한다.
즉, 마스터 장치의 메인 메모리(26)에는 자장치를 포함하는 네트워크(9)에 접속되어 있는 모든 정보 처리 장치의 장치 정보가 장치 정보 테이블로서 기록된다.
한편, 능력 교환 프로그램은 자장치가 슬레이브 장치인 경우에는, 네트워크(9)에 접속되어 있는 모든 타장치의 장치 정보, 즉 마스터 장치 및 자장치 이외의 각 슬레이브 장치의 장치 정보를 취득하고, 이들 장치 정보에 포함되는 정보 처리 장치 ID 및 MS 스테이터스를 자장치의 메인 메모리(26)에 기록한다.
즉, 슬레이브 장치의 메인 메모리(26)에는, 자장치의 장치 정보가 장치 정보 테이블로서 기록될 뿐만 아니라, 자장치 이외의 네트워크(9)에 접속되어 있는 마스터 장치 및 각 슬레이브 장치에 대한 정보 처리 장치 ID 및 MS 스테이터스가 별도의 장치 정보 테이블로서 기록된다.
또한, 마스터 장치 및 슬레이브 장치의 어느 것에 대해서도, 능력 교환 프로그램은 상기한 바와 같이 MS 매니저로부터, 새롭게 네트워크(9)에 정보 처리 장치가 접속된 것이 통지되었을 때에는, 그 정보 처리 장치의 장치 정보를 취득하여 상술한 바와 같이 메인 메모리(26)에 기록한다.
또, MS 매니저 및 능력 교환 프로그램은, 메인 프로세서(21)에서 실행되는 것에 한정되지 않고, 어느 하나의 서브 프로세서(23)에서 실행되어도 된다. 또한, MS 매니저 및 능력 교환 프로그램은 정보 처리 장치의 주전원이 투입되고 있는 동안에는 상시 동작하는 상주 프로그램인 것이 바람직하다.
(2-4. 정보 처리 장치가 네트워크로부터 절단된 경우)
마스터 장치 및 슬레이브 장치의 어느 것에 대해서도, 능력 교환 프로그램은 상기한 바와 같이 MS 매니저로부터 네트워크(9)에 접속되어 있는 정보 처리 장치의 주전원이 차단, 또는 네트워크(9)로부터 정보 처리 장치가 분리된 것이 통지되었을 때에는, 그 정보 처리 장치의 장치 정보 테이블을 자장치의 메인 메모리로부터 삭제한다.
또한, 이와 같이 네트워크(9)로부터 절단된 정보 처리 장치가 마스터 장치인 경우에는, 이하와 같은 방법에 의해 새롭게 마스터 장치가 결정된다.
구체적으로, 예를 들면, 네트워크(9)로부터 절단되어 있지 않은 정보 처리 장치는, 각각, 자장치 및 타장치의 정보 처리 장치 ID를 수치로 치환하고, 자장치의 정보 처리 장치 ID를 타장치의 정보 처리 장치 ID와 비교하여, 자장치의 정보 처리 장치 ID가 네트워크(9)로부터 절단되어 있지 않은 정보 처리 장치 중에서 최 소인 경우, 그 슬레이브 장치는 마스터 장치로 이행하고, MS 스테이터스를 O으로 설정하여 마스터 장치로 하고, 상술한 바와 같이, 네트워크(9)에 접속되어 있는 모든 타장치(각 슬레이브 장치)의 장치 정보를 취득하여, 메인 메모리(26)에 기록한다.
(2-5. 장치 정보에 기초하는 정보 처리 장치간의 분산 처리)
도 5의 하단에 도시한 바와 같이 네트워크(9)에 접속되어 있는 복수의 정보 처리 장치(1, 2, 3, 4)를 가상적인 1대의 정보 처리 장치(7)로서 동작시키기 위해서는, 마스터 장치가 사용자의 조작 및 슬레이브 장치의 동작 상태 등을 파악할 필요가 있다.
도 7에 4대의 정보 처리 장치가 가상적인 1대의 정보 처리 장치(7)로서 동작하는 모습을 도시한다. 정보 처리 장치(1)가 마스터 장치, 정보 처리 장치(2, 3, 4)가 슬레이브 장치(A, B, C)로서 동작하고 있는 것으로 한다
사용자가 네트워크에 접속되어 있는 정보 처리 장치를 조작한 경우, 조작 대상이 마스터 장치(1)이면 그 조작 정보는 마스터 장치(1)에 있어서 직접 파악되고, 조작 대상이 슬레이브 장치이면 그 조작 정보는 조작된 슬레이브 장치로부터 마스터 장치(1)로 송신된다. 즉, 사용자의 조작 대상이 마스터 장치(1)와 슬레이브 장치의 어느 것인가에 관계없이, 그 조작 정보는 항상 마스터 장치(1)에 있어서 파악된다. 조작 정보의 송신은, 예를 들면, DMA 커맨드가 조작 정보 송신 커맨드인 소프트웨어 셀에 의해 행해진다.
그리고, 마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로 세서(21-1)는, 그 조작 정보에 따라 실행하는 기능 프로그램을 선택한다. 그 때, 필요하다면 마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는, 상기의 방법에 의해 자장치의 외부 기록부(28-1 또는 28-2)로부터 메인 메모리(26-1)에 기능 프로그램을 로드하지만, 다른 정보 처리 장치(슬레이브 장치)가 마스터 장치(1)에 기능 프로그램을 송신하여도 된다.
기능 프로그램에는, 그 실행 단위마다 필요하게 되는, 도 4에 나타낸 각 정보로서 표시되는 정보 처리 장치 종별 ID, 메인 프로세서 또는 서브 프로세서의 처리 능력, 메인 메모리 사용량, 외부 기록부에 관한 조건 등의 장치에 관한 요구 스펙이 규정되어 있다.
마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 각 기능 프로그램에 대해 필요하게 되는 상기 요구 스펙을 판독한다. 또한, 미리 능력 교환 프로그램에 의해 메인 메모리(26-1)에 기록된 장치 정보 테이블을 참조하여, 각 정보 처리 장치의 장치 정보를 판독한다. 여기에서의 장치 정보는, 도 4에 나타낸 정보 처리 장치 ID 이하의 각 정보를 나타내며, 메인 프로세서, 서브 프로세서, 메인 메모리 및 외부 기록부에 관한 정보이다.
마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 네트워크(9)상에 접속된 각 정보 처리 장치의 상기 장치 정보와 기능 프로그램 실행에 필요하게 되는 상기 요구 스펙을 순차적으로 비교한다.
그리고, 예를 들면, 기능 프로그램이 녹화 기능을 필요로 하는 경우에는, 정보 처리 장치 종별 ID에 기초하여 녹화 기능을 갖는 정보 처리 장치만을 특정하여 추출한다. 또한, 기능 프로그램을 실행하기 위해 필요한 메인 프로세서 또는 서브 프로세서의 처리 능력, 메인 메모리 사용량, 외부 기록부에 관한 조건을 확보할 수 있는 슬레이브 장치를, 실행 요구 후보 장치로서 특정한다. 복수의 실행 요구 후보 장치가 특정된 경우에는, 그 중 1개를 선택한다.
실행 요구하는 슬레이브 장치가 특정되면, 마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는, 그 특정된 슬레이브 장치에 대해 자장치내의 정보 처리 컨트롤러(11)에 포함되는 메인 메모리(26-1)에 기록되어 있는 당해 슬레이브 장치의 장치 정보 테이블을 갱신한다.
또한, 마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는, DMA 커맨드가 기능 프로그램 실행 커맨드인 소프트웨어 셀을 생성하고, 당해 소프트웨어 셀의 셀 인터페이스에 당해 기능 프로그램에 관한 필요한 서브 프로세서의 정보 및 샌드 박스 사이즈(도 3 참조)를 설정하여, 상기 실행 요구되는 슬레이브 장치에 대해 송신한다.
기능 프로그램의 실행을 요구받은 슬레이브 장치는, 그 기능 프로그램을 실행할 뿐만 아니라, 자장치의 장치 정보 테이블을 갱신한다. 그 때, 필요하다면, 슬레이브 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(21)는, 상기의 방법에 의해, 자장치의 외부 기록부(28)로부터 메인 메모리(26)에 기능 프로그램 및 당해 기능 프로그램과 연계 동작하는 서브 프로세서 프로그램을 로드한다.
기능 프로그램의 실행을 요구받은 슬레이브 장치의 외부 기록부(28)에, 필요한 기능 프로그램 또는 당해 기능 프로그램과 연계 동작하는 서브 프로세서 프로그 램이 기록되어 있지 않은 경우에는, 다른 정보 처리 장치가 당해 기능 프로그램 또는 서브 프로세서 프로그램을 그 기능 프로그램 실행 요구처 슬레이브 장치에 송신하도록, 시스템을 구성하면 된다.
서브 프로세서 프로그램에 대해서는, 상기의 로드 커맨드 및 퀵 커맨드를 이용하여 다른 정보 처리 장치에 실행시킬 수도 있다.
기능 프로그램의 실행 종료후, 기능 프로그램을 실행한 슬레이브 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(21)는 종료 통지를 마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)에 송신할 뿐만 아니라, 자장치의 장치 정보 테이블을 갱신한다. 마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 그 종료 통지를 수신하여, 기능 프로그램을 실행한 슬레이브 장치의 장치 정보 테이블을 갱신한다.
마스터 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 자장치 및 타장치의 장치 정보 테이블의 참조 결과로부터, 당해의 기능 프로그램을 실행할 수 있는 정보 처리 장치로서 자신을 선택하는 경우도 있을 수 있다. 그 경우에는, 마스터 장치(1)가 당해의 기능 프로그램을 실행한다.
도 7의 예에서, 사용자가 슬레이브 장치(A)(정보 처리 장치(2))를 조작하고, 당해 조합에 따른 기능 프로그램을 별도의 슬레이브 장치(B)(정보 처리 장치(3))가 실행하는 경우에 대해, 도 8에 이상의 분산 처리의 예를 나타낸다.
도 8의 예에서는, 사용자가 슬레이브 장치(A)를 조작함으로써, 슬레이브 장치(A)를 포함하는 네트워크 시스템 전체의 분산 처리가 개시하여, 우선, 슬레이브 장치(A)는 단계 81에서 그 조작 정보를 마스터 장치(1)에 송신한다.
마스터 장치(1)는 단계 72에서, 그 조작 정보를 수신하고, 단계 73으로 더 진행하여, 자장치의 메인 메모리(26-1)에 기록되어 있는 자장치 및 타장치의 장치 정보 테이블로부터 각 정보 처리 장치의 동작 상태 등을 조사하고, 수신한 조작 정보에 부합한 기능 프로그램을 실행할 수 있는 정보 처리 장치를 선택한다. 이 예는, 슬레이브 장치(B)가 선택되는 경우이다.
다음으로, 마스터 장치(1)는 단계 74에서, 그 선택한 슬레이브 장치(B)에 대해 기능 프로그램의 실행을 요구한다.
슬레이브 장치(B)는 단계 95에서, 그 실행 요구를 수신하고, 단계 96으로 더 진행하여, 실행 요구된 기능 프로그램을 실행한다.
이상과 같이, 사용자는 1대의 정보 처리 장치만을 조작함으로써, 다른 정보 처리 장치를 조작하는 일 없이, 복수의 정보 처리 장치(1, 2, 3, 4)를 가상적인 1대의 정보 처리 장치(7)로서 동작시킬 수가 있다.
(2-6. 각 정보 처리 장치 및 시스템의 구체예)
네트워크(9)를 통해 서로 접속되는 정보 처리 장치(1, 2, 3, 4)는 기본적으로 상기와 같은 정보 처리 컨트롤러(11, 12, 13, 14)에 의해 정보 처리를 행하는 것이라면 어떠한 것이라도 되지만, 도 9에 그 일례를 도시한다.
이 예에서는, 정보 처리 컨트롤러(11)를 구비하는 정보 처리 장치(1)는 하드 디스크 레코더이며, 도 10에 도시하는 바와 같이, 하드웨어 구성으로서는 도 1에 도시한 외부 기록부(28-1)로서 하드 디스크를 내장하고, 도 1에 도시한 외부 기록 부(28-2)로서 DVD±R/RW, CD±R/RW, Blu-ray Disc(등록 상표) 등의 광 디스크를 장착할 수 있을 뿐만 아니라, 정보 처리 컨트롤러(11)의 버스(29-1)에 접속된 버스(31-1)에 방송 수신부(32-1), 영상 입력부(33-1), 음성 입력부(34-1), 영상 출력부(35-1), 음성 출력부(36-1), 조작 패널부(37-1), 리모콘(원격 조작) 수광부(38-1), 네트워크 접속부(39-1) 및 표시 구동부(41-1)가 접속되고, 표시 구동부(41-1)에 액정 표시부(42-1)가 접속된 것이다.
방송 수신부(32-1), 영상 입력부(33-1) 및 음성 입력부(34-1)는 방송 신호를 수신 또는 정보 처리 장치(1)의 외부로부터 영상 신호 및 음성 신호를 입력하고, 각각 소정 포맷의 디지털 데이터로 변환하여, 정보 처리 컨트롤러(11)에서의 처리를 위해 버스(31-1)로 송출하는 것이며, 영상 출력부(35-1) 및 음성 출력부(36-1)는 정보 처리 컨트롤러(11)로부터 버스(31-1)로 송출된 영상 데이터 및 음성 데이터를 처리하고, 디지털 데이터인 채로 또는 아날로그 신호로 변환하여, 정보 처리 장치(1)의 외부로 송출하는 것이고, 리모콘 수광부(38-1)는 리모콘 송신기(43-1)로부터의 리모콘 적외선 신호를 수신하는 것이다.
또한, 액정 표시부(42-1)는 하드 디스크 레코더인 정보 처리 장치(1)의 조작 상황 등을 표시할 뿐만 아니라, 후술하는 바와 같이 네트워크(9)의 접속 상황이나 네트워크 시스템 전체의 상태를 표시하는 것이다.
도 9의 예의, 정보 처리 컨트롤러(12)를 구비하는 정보 처리 장치(2)도 하드 디스크 레코더이며, 도 10에 있어서 괄호내에 참조 번호를 부여하여 나타낸 바와 같이 정보 처리 장치(1)와 마찬가지로 구성된 것이다.
각각 하드 디스크 레코더인 정보 처리 장치(1, 2)의 소프트웨어 구성으로서는, 제어 프로그램으로서 도 6에 도시한 바와 같이, MS 매니저 및 능력 교환 프로그램을 구비하고, 기능 프로그램으로서 영상 음성 기록, 영상 음성 재생, 소재 검색, 방송 녹화 예약 등을 위한 프로그램을 구비하며, 디바이스 드라이버로서 방송 수신, 영상 입력, 음성 입력, 영상 출력, 음성 출력, 외부 기록부 입출력, 네트워크 입출력 등을 위한 프로그램을 구비한다.
도 9의 예의 정보 처리 컨트롤러(13)를 구비하는 정보 처리 장치(3)는 텔레비젼 수신 장치로, 도 11에 도시하는 바와 같이 하드웨어 구성으로서는, 도 1에 도시한 외부 기록부(28-5)로서 메모리 카드 디스크를 장착할 뿐만 아니라, 정보 처리 컨트롤러(13)의 버스(29-3)에 접속된 버스(51)에 방송 수신부(52), 영상 출력부(53), 음성 출력부(54), 조작 패널부(55), 리모콘 수광부(56), 네트워크 접속부(57) 및 LED(발광 다이오드) 구동부(58)가 접속되고, 영상 출력부(53)에 액정 디스플레이나 플라스마 디스플레이 등의 영상 표시부(45)가 접속되며, 음성 출력부(54)에 좌우의 스피커(46, 47)가 접속되며, LED 구동부(58)에 LED(48)가 접속된 것이다.
방송 수신부(52)는 방송 신호를 수신하고, 그 영상 신호 및 음성 신호를 각각 소정 포맷의 디지털 데이터로 변환하여, 정보 처리 컨트롤러(13)에서의 처리를 위해 버스(51)로 송출하는 것이며, 영상 출력부(53)는 정보 처리 컨트롤러(13)로부터 버스(51)로 송출된 영상 데이터를 처리하여 영상 표시부(45)로 출력하는 것이며, 음성 출력부(54)는 정보 처리 컨트롤러(13)로부터 버스(51)로 송출된 음성 데 이터를 처리하여 스피커(46, 47)에 출력하는 것이며, 리모콘 수광부(56)는 리모콘 송신기(59)로부터의 리모콘 적외선 신호를 수신하는 것이다.
또한, LED(48)는 후술하는 바와 같이 네트워크(9)의 접속 상황이나 네트워크 시스템 전체의 상태를 표시하는 것이다.
또, 도 1에서는 내부를 생략한 정보 처리 컨트롤러(13)는 메인 프로세서(21-3), 서브 프로세서(23-7, 23-8, 23-9), DMAC(Direct Memory Access Controller)(25-3), DC(Disc Controller)(27-3) 및 버스(29-3)를 구비하며, 그 메인 프로세서(21-3)는 LS(Local Storage)(22-3)를 갖고, 각 서브 프로세서(23-7, 23-8, 23-9)는 LS(Local Storage)(24-7, 24-8, 24-9)를 갖는다.
텔레비젼 수신 장치인 정보 처리 장치(3)의 소프트웨어 구성으로서는, 제어 프로그램으로서 도 6에 도시한 바와 같이 MS 매니저 및 능력 교환 프로그램을 구비하고, 기능 프로그램으로서 영상 음성 처리 등의 프로그램을 구비하며, 디바이스 드라이버로서 방송 수신, 영상 출력, 음성 출력, 네트워크 입출력 등을 위한 프로그램을 구비한다.
도 9의 예의, 정보 처리 컨트롤러(14)를 구비하는 정보 처리 장치(4)는 포터블 CD 플레이어이며, 도 12에 도시하는 바와 같이, 하드웨어 구성으로서는, 도 1에 도시한 외부 기록부(28-6)로서 CD(Compact Disc)를 장착할 수 있을 뿐만 아니라, 정보 처리 컨트롤러(14)의 버스(29-4)에 접속된 버스(61)에 표시 구동부(62), 음성 출력부(64), 조작 버튼부(65) 및 네트워크 접속부(66)가 접속되고, 표시 구동부(62)에 액정 표시부(63)가 접속된 것이다.
액정 표시부(63)는 포터블 CD 플레이어인 정보 처리 장치(4)의 선곡 조작용으로 곡명 등을 표시할 뿐만 아니라, 후술하는 바와 같이 네트워크(9)의 접속 상황이나 네트워크 시스템 전체의 상태를 표시하는 것이다.
또, 도 1에서는 내부를 생략한 정보 처리 컨트롤러(14)는 메인 프로세서(21-4), 서브 프로세서(23-10, 23-11, 23-12), DMAC(Direct Memory Access Controller)(25-4), DC(Disc Controller)(27-4) 및 버스(29-4)를 구비하며, 그 메인 프로세서(21-4)는 LS(Local Storage)(22-4)를 갖고, 각 서브 프로세서(23-10, 23-11, 23-12)는 LS(Local Storage)(24-10, 24-11, 24-12)를 갖는다.
포터블 CD 플레이어인 정보 처리 장치(4)의 소프트웨어 구성으로서는, 제어 프로그램으로서 도 6에 도시한 바와 같이, MS 매니저 및 능력 교환 프로그램을 구비하고, 기능 프로그램으로서 음악 재생 등을 위한 프로그램을 구비하며, 디바이스 드라이버로서 음성 출력, CD 제어, 네트워크 입출력 등을 위한 프로그램을 구비한다.
이상과 같은 도 9의 예의 네트워크 시스템은, 외관상은, 도 13과 같이 구성된다.
각각 하드 디스크 레코더인 정보 처리 장치(1, 2)에는 정면부에 상기의 액정 표시부(42-1, 42-2)가 설치되고, 텔레비젼 수신 장치인 정보 처리 장치(3)에는 영상 표시부(45)의 좌우에 스피커(46, 47)가 설치되며, 스피커(46, 47)의 주변에 상기의 LED(48)가 설치되며, 포터블 CD 플레이어인 정보 처리 장치(4)에는 상기의 액정 표시부(63)가 설치된다. LED(48)는, 후술하는 바와 같이 복수의 LED로 이루어 지는 것이다.
이와 같은 도 9∼도 13의 예의 시스템에 있어서, 정보 처리 장치(1, 3, 4)가 네트워크(9)에 접속되어, 정보 처리 장치(1)가 마스터 장치(MS 스테이터스=0)로 설정되고, 정보 처리 장치(3, 4)가 슬레이브 장치(MS 스테이터스=1)로 설정되어 있는 것으로 한다.
이 상태에서, 새롭게 정보 처리 장치(2)가 네트워크(9)에 접속되면, 상기한 방법에 의해, 정보 처리 장치(2)내의 정보 처리 컨트롤러(12)에 포함되는 메인 프로세서(21-2)에서 실행되는 MS 매니저는 다른 정보 처리 장치(1, 3, 4)에 MS 스테이터스를 조회하고, 정보 처리 장치(1)가 이미 마스터 장치로서 존재하는 것을 인식하여, 자장치(정보 처리 장치(2))를 슬레이브 장치(MS 스테이터스=1)로 설정한다. 또한, 마스터 장치로 설정되어 있는 정보 처리 장치(1)는 새롭게 추가된 정보 처리 장치(2)를 포함하는 각 정보 처리 장치의 장치 정보를 수집하여, 메인 메모리(26-1)내의 장치 정보 테이블을 갱신한다.
이러한 상태에서, 사용자에 의해 슬레이브 장치인 정보 처리 장치(텔레비젼 수신 장치)(3)에서 2시간의 방송 프로그램의 녹화 예약의 조작이 행해진 경우를 나타낸다.
이 경우, 슬레이브 장치인 정보 처리 장치(3)는 사용자로부터 녹화 개시 시각, 녹화 종료 시각, 녹화 대상 방송 채널, 녹화 품질 등의 정보를 포함하는 녹화 예약 정보의 입력을 접수하고, 당해 녹화 예약 정보 및 DMA 커맨드으로서의 녹화 예약 커맨드를 포함하는 소프트웨어 셀을 생성하여, 마스터 장치인 정보 처리 장치 (하드 디스크 레코더)(1)로 송신한다.
DMA 커맨드가 녹화 예약 커맨드인 소프트웨어 셀을 수신한 정보 처리 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 녹화 예약 커맨드를 판독할 뿐만 아니라, 메인 메모리(26-1)내의 장치 정보 테이블을 참조하여, 당해 녹화 예약 커맨드를 실행 가능한 정보 처리 장치를 특정한다.
우선, 메인 프로세서(21-1)는 장치 정보 테이블에 포함되는 각 정보 처리 장치(1, 2, 3, 4)의 정보 처리 장치 종별 ID를 판독하여, 녹화 예약 커맨드에 대응하는 기능 프로그램을 실행 가능한 정보 처리 장치를 추출한다. 여기에서는, 녹화 기능을 나타내는 정보 처리 장치 종별 ID를 갖는 정보 처리 장치(1, 2)가 후보 장치로서 특정되고, 정보 처리 장치(3, 4)는 후보 장치로부터 제외된다.
다음으로, 마스터 장치인 정보 처리 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 장치 정보 테이블을 참조하여, 정보 처리 장치(1, 2)의 메인 프로세서 또는 서브 프로세서의 처리 능력, 메인 메모리에 관한 정보 등의 장치에 관한 정보를 판독하고, 정보 처리 장치(1, 2)가 녹화 예약 커맨드에 대응하는 기능 프로그램의 실행에 필요한 요구 스펙을 만족하는지의 여부를 판단한다. 여기에서는, 정보 처리 장치(1, 2)가 모두 녹화 예약 커맨드에 대응하는 기능 프로그램의 실행에 필요한 요구 스펙을 만족하는 것으로 한다.
또한, 메인 프로세서(21-1)는 장치 정보 테이블을 참조하여, 정보 처리 장치(1, 2)의 외부 기록부에 관한 정보를 판독하여, 외부 기록부의 빈 용량이 당해 녹화 예약 커맨드의 실행에 필요한 용량을 만족하는지의 여부를 판단한다. 정보 처 리 장치(1, 2)는 하드 디스크 레코터이므로, 각각 하드 디스크(28-1, 28-3)의 총용량과 사용량의 차분이, 각각의 빈 용량에 상당한다.
이 경우, 정보 처리 장치(1)의 하드 디스크(28-1)의 빈 용량이 녹화 시간으로 환산하여 10분이고, 정보 처리 장치(2)의 하드 디스크(28-3)의 빈 용량이 녹화 시간으로 환산하여 20분이라고 한다.
이 때, 마스터 장치인 정보 처리 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는, 당해 녹화 예약 커맨드의 실행에 필요한 2시간분의 빈 용량을 확보할 수 있는 정보 처리 장치를 실행 요구처 슬레이브 장치로서 특정한다.
그 결과, 정보 처리 장치(2)만이 실행 요구처 슬레이브 장치로서 선택되고, 마스터 장치인 정보 처리 장치(1)내의 정보 처리 컨트롤러(11)에 포함되는 메인 프로세서(21-1)는 사용자에 의해 조작된 정보 처리 장치(3)로부터 송신된 녹화 예약 정보를 포함하는 당해 녹화 예약 커맨드를 정보 처리 장치(2)에 송신하여, 상기 2시간의 방송 프로그램의 녹화 예약의 실행을 요구한다.
정보 처리 장치(2)내의 정보 처리 컨트롤러(12)에 포함되는 메인 프로세서(21-2)는 당해 녹화 예약 커맨드를 해석하여, 녹화에 필요한 기능 프로그램을 외부 기록부인 하드 디스크(28-3)로부터 메인 메모리(26-2)에 로드하고, 녹화 예약 정보에 따라 녹화를 실행한다. 그 결과, 녹화 예약된 2시간의 방송 프로그램의 영상 음성 데이터가 정보 처리 장치(2)의 하드 디스크(28-3)에 기록된다.
이와 같이, 도 9∼도 13의 예의 네트워크 시스템에 있어서도, 사용자는 1대 의 정보 처리 장치만을 조작함으로써, 다른 정보 처리 장치를 조작하는 일 없이, 복수의 정보 처리 장치(1, 2, 3, 4)를 가상적인 1대의 정보 처리 장치(7)로서 동작시킬 수 있다.
[3. 네트워크 시스템의 상황의 제시 1]
상술한 시스템에서는, 사용자는 시스템의 외관 등으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것이나, 연계 동작중인 것 등을 용이하게 알 수 없다.
따라서, 본 발명에서는 이하에 나타내는 바와 같이, 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것이나, 연계 동작중인 것 등을 시스템의 외관 등으로부터 사용자가 용이하면서도 확실하게 알 수 있도록 한다.
(3-1. 시스템 구성)
도 9∼도 13의 예의 시스템에서는, 도 13에 도시하는 바와 같이, 각각 하드 디스크 레코더인 정보 처리 장치(1, 2)에는 액정 표시부(42-1, 42-2)를 설치하고, 텔레비젼 수신 장치인 정보 처리 장치(3)에는 LED(48)를 설치하며, 포터블 CD 플레이어인 정보 처리 장치(4)에는 액정 표시부(63)를 설치한다. LED(48)로써는, 예를 들면, 녹색 LED, 적색 LED 및 청색 LED를 스피커(46, 47)의 주변에 복수 배치한다.
또한, 각 정보 처리 장치(1, 2, 3, 4)는 각각 일시(일자 및 시각)를 계측하는 기능을 구비할 뿐만 아니라, 네트워크(9)를 통해 접속된 정보 처리 장치의 사이에서는, 마스터 장치로 설정되어 있는 정보 처리 장치에 의해 각각의 일시가 일치하도록 제어되는 것으로 한다.
정보 처리 장치(1, 2, 3, 4)의 소프트웨어 구성으로서는, 도 14에 도시하는 바와 같이, 제어 프로그램으로서 도 6에 도시한 MS 매니저 및 능력 교환 프로그램 외에 접속 매니저를 준비하고, 기능 프로그램 및 디바이스 드라이브로서 상술한 바와 같이 각 정보 처리 장치에 부합하는 것을 준비한다.
접속 매니저는 MS 매니저에 의한 MS 스테이터스(마스터 장치에서는 O, 슬레이브 장치에서는 1) 설정후의 능력 교환 프로그램에 의한 능력 교환(마스터 장치 및 슬레이브 장치에서의 자장치 및 타장치의 장치 정보의 취득)후, 기동시키는 것으로, 능력 교환에 의해 얻어진 장치 정보를 기초로 제시용 정보로서 점멸 표시용 정보를 생성하고, 그 점멸 표시용 정보에 의해 각 정보 처리 장치의 제시용의 발광 표시부, 즉 도 9∼도 13의 예에서는 정보 처리 장치(1, 2)의 액정 표시부(42-1, 42-2), 정보 처리 장치(3)의 LED(48) 및 정보 처리 장치(4)의 액정 표시부(63)를 점멸 표시시켜, 네트워크(9)의 접속 상황이나 네트워크 시스템 전체의 상태를 사용자에게 제시하는 것이다.
접속 상황 등의 제시용의 장치 정보는, 예를 들면 도 15에 나타내는 바와 같이, 도 4에 나타낸 정보 처리 장치 ID 이하의 각 정보로부터 서브 프로세서수나 서브 프로세서 스테이터스 등의 서브 프로세서에 관한 정보를 제외하고, 필요에 따라 이것에 특기 상세 정보를 더한 것이다.
특기 상세 정보는 네트워크(9)에 접속되어 있는 정보 처리 장치의 대수를 나타내는 정보나, 2대 이상의 정보 처리 장치가 네트워크(9)에 접속되어 있는 경우에, 그 복수의 정보 처리 장치가 연계 동작중인 것을 나타내는 정보 등으로서, 도 15에 나타내는 장치 정보 이외의 장치 정보로부터 생성한다.
이 제시용 장치 정보로부터 생성하는 점멸 표시용 정보는, 예를 들면 도 16에 나타내는 바와 같이, 점멸 개시 일시, 점멸 종료 일시, 표시색, 점멸 주기, 점멸 시간 비율, 광량 변화, 점멸 위상 및 확장 정보로 이루어지는 것으로 한다.
점멸 개시 일시 및 점멸 종료 일시는, 도 17에 나타내는 바와 같은 시각 ts로부터 시각 te까지 사이의 기간, 점멸 표시하는 것을 지시하는 것이다. 단, 점멸 종료 일시 대신에 점멸 개시 일시로부터 10초간과 같이, 점멸 기간의 시간폭을 지시하도록 하여도 된다.
표시색(점등색)은 제1에 녹색, 제2에 적색, 제3에 청색과 같이, 복수의 색으로부터 후술하는 바와 같이 1개를 선택하여 지정한다.
점멸 주기는, 도 17에 나타내는 바와 같이 1회의 점등 시간과 1회의 소등 시간의 합으로, 제1에 1.0초, 제2에 0.5초와 같이 복수 가지로부터, 후술하는 바와 같이 1개를 선택하여 지정한다.
점멸 시간 비율은 1회의 점등 시간과 1회의 소등 시간과의 비율로, 제1에 50:50, 제2에 30:70과 같이 복수 가지로부터, 후술하는 바와 같이 1개를 선택하여 지정한다.
광량 변화는 점등 시간내에서 점등 광량을 변화시킬지의 여부를 나타내는 것으로, 제1에는, 도 17에 있어서 즉시 모드나 위상 시프트 모드로서 나타내는 바와 같이, 점등 광량이 일정한 광량 일정 모드로 하고, 제2에는, 도 17에 있어서 광량 변화 모드로서 나타내는 바와 같이, 1점멸 주기내에서 광량이 최대치에서 제로까지 점감한 후, 제로에서 최대치까지 점증하는 광량 변화 모드로 하여, 이들 광량 일정 모드 및 광량 변화 모드 중에서, 후술하는 바와 같이 1개를 선택하여 지정한다.
단, 도 17에 나타내는 바와 같은 광량 변화 모드에서는, 실제상, 광량 제로의 소등 시간이 일순으로 되어, 상기의 점멸 시간 비율은 50:50과 같은 비율은 되지 않지만, 광량 변화 모드에서는 광량이 최대치에서 제로까지 점감하는 기간을 소등 기간, 광량이 제로에서 최대치까지 점증하는 기간을 점등 기간이라 하고, 또는, 광량이 최대치의 1/2 이상인 기간을 점등 기간, 광량이 최대치의 1/2 미만인 기간을 소등 기간으로 하여, 점멸 시간 비율을 정의할 뿐만 아니라, 예를 들면 그 점멸 시간 비율을 50:50으로 고정한다.
도 16의 점멸 표시용 정보 중의 점멸 위상은, 상기한 바와 같이 지정한 점멸 개시 일시로부터 즉시 점멸 표시할지, 어느 시간 늦추어 점멸 표시할지를 지시하는 것으로, 예를 들면, 도 17에 나타내는 바와 같은, 즉시 모드(지연 시간은 제로), 제1 위상 시프트 모드(D1)(지연 시간은 1점멸 주기의 1/4 시간(d1)), 제2 위상 시프트 모드(D2)(지연 시간은 1점멸 주기의 1/2 시간(d2)) 및 제3 위상 시프트 모드(D3)(지연 시간은 1점멸 주기의 3/4 시간(d3))중에서, 후술하는 바와 같이 각 정보 처리 장치에 대해 선택한다.
점멸 표시용 정보 중의 확장 정보는,
(u) 네트워크(9)에 접속되어 있는 정보 처리 장치의 대수에 따라 도 17의 시각 ts로부터 시각 te까지의 점멸 기간내의 점멸 횟수를 지시하고,
(v) 표시색으로서 미리 사용자가 지정한 복수색, 또는 접속 매니저가 랜덤하 게 선택한 복수색을 사용하여, 사용자가 지정한 색 순서 또는 접속 매니저가 랜덤하게 결정한 색 순서로 점멸 표시하는 것을 지시하는,
등이다.
상술한 시스템에서는, 점멸 표시의 표시색에 대해 사용자가 미리,
(a) 특정의 1색을 지정하는,
(b) 1색을 지정하지만, 색의 선택은 시스템(접속 매니저)에 맡긴다,
(c) 특정의 복수색을 지정하고, 색 순서도 지정하는,
(d) 특정의 복수색을 지정하지만, 색 순서의 결정은 시스템에 맡긴다,
(e) 2색 이상의 색수를 지정하지만, 색의 선택 및 색 순서의 결정은 시스템에 맡긴다,
라고 하는 설정을 선택적으로 행할 수 있도록, 시스템을 구성한다.
(a) 또는 (b)의 경우에는, 접속 매니저는 도 16의 점멸 표시용 정보 중의 표시색으로서 사용자가 지정한 특정의 색, 또는 자신이 랜덤하게 선택한 색을 기술하지만, (c), (d) 및 (e)의 경우에는, 접속 매니저는 도 16의 점멸 표시용 정보 중의 확장 정보로서 상기 (v)와 같이, 사용자가 지정하고, 또는 자신이 랜덤하게 선택 결정한 복수색 및 색 순서를 기술한다.
(3-2. 제시 방법)
상술한 바와 같이, 정보 처리 장치(1, 3, 4)가 네트워크(9)에 접속되어, 정보 처리 장치(1)가 마스터 장치로 설정되고, 정보 처리 장치(3, 4)가 슬레이브 장치로 설정되어 있는 상태에서, 새롭게 정보 처리 장치(2)가 네트워크(9)에 접속된 경우에 대해, 상술한 점멸 표시용 정보의 생성 및 이에 따른 점멸 표시의 방법을 나타낸다.
이 때, 상술한 바와 같이, 새롭게 추가된 정보 처리 장치(2)는 자장치를 슬레이브 장치로 설정할 뿐만 아니라, 마스터 장치로 설정되어 있는 정보 처리 장치(1)는 새롭게 추가된 정보 처리 장치(2)를 포함하는 각 정보 처리 장치의 장치 정보를 수집하여, 메인 메모리(26-1)내의 장치 정보 테이블을 갱신한다.
또한, 그 후, 각 정보 처리 장치(1, 2, 3, 4)의 메인 프로세서(21)는 접속 매니저를 기동하여 도 18에 나타내는 바와 같은 제시 처리를 실행한다.
즉, 능력 교환(장치 정보 테이블의 갱신)후, 슬레이브 장치로 설정되어 있는 정보 처리 장치(2, 3, 4) 및 마스터 장치로 설정되어 있는 정보 처리 장치(1)는, 각각 단계 101 및 111에서 접속 매니저를 기동한다.
다음으로, 슬레이브 장치로 설정되어 있는 정보 처리 장치(2, 3, 4)는, 각각 단계 102에서, 마스터 장치로 설정되어 있는 정보 처리 장치(1)에 대해 제시용 정보 요구 커맨드를 송신한다.
이 제시용 정보 요구 커맨드는, 도 19a에 나타내는 바와 같이, 송신원 ID(이 경우는 정보 처리 장치(2, 3 또는 4)의 정보 처리 장치 ID), 송신처 ID(이 경우는 정보 처리 장치(1)의 정보 처리 장치 ID) 및 리스판스처 ID(이 경우는 정보 처리 장치(2, 3 또는 4)의 정보 처리 장치 ID)를 갖고, DMA 커맨드으로서 제시용 정보 요구 커맨드 본체를 포함하는 것으로 한다.
도 18에 나타내는 바와 같이, 마스터 장치로 설정되어 있는 정보 처리 장치 (1)는 단계 113에서, 이 제시용 정보 요구 커맨드를 수신하고, 단계 114로 더 진행하여, 메인 메모리(26-1)내의 자장치(정보 처리 장치(1)) 및 타장치(정보 처리 장치(2, 3, 4))의 장치 정보 테이블내의, 각각 도 15에 나타낸 바와 같은 장치 정보로부터, 각각 제시용 정보로서 자장치 및 타장치의 각각에 대한 도 16에 나타낸 바와 같은 점멸 표시용 정보를 생성한다.
다음으로, 마스터 장치로 설정되어 있는 정보 처리 장치(1)는 단계 115에서, 그 생성한 타장치(정보 처리 장치(2, 3, 4))의 각각에 대한 점멸 표시용 정보를 제시용 정보 회신 커맨드에 의해 타장치의 각각에 대해 송신한다.
이 제시용 정보 회신 커맨드는, 도 19b에 도시하는 바와 같이, 송신원 ID(이 경우는 정보 처리 장치(1)의 정보 처리 장치 ID), 송신처 ID(이 경우는 정보 처리 장치(2, 3 또는 4)의 정보 처리 장치 ID) 및 리스판스처 ID(이 경우는 정보 처리 장치(2, 3 또는 4)의 정보 처리 장치 ID)를 갖고, DMA 커맨드으로서 제시용 정보 회신 커맨드 본체 및 생성한 점멸 표시용 정보를 포함하는 것으로 한다.
도 18에 나타내는 바와 같이, 마스터 장치로 설정되어 있는 정보 처리 장치(1)는 다음으로 단계 116에서, 자장치에 대한 점멸 표시용 정보를 자장치의 점멸 표시 모듈에 송신하고, 단계 117으로 더 진행하여, 그 점멸 표시 모듈에 의해 점멸 표시를 행한다.
한편, 슬레이브 장치로 설정되어 있는 정보 처리 장치(2, 3, 4)는, 각각, 단계 106에서, 자장치앞의 제시용 정보 송신 커맨드를 수신하여, 거기에 포함되는 자장치에 대한 점멸 표시용 정보를 자장치의 점멸 표시 모듈에 송신하고, 단계 107로 더 진행하여, 그 점멸 표시 모듈에 의해 점멸 표시를 행한다.
정보 처리 장치(1, 2, 3, 4)의 점멸 표시 모듈은, 각각, 점멸 표시용 프로그램 및 발광 표시부(하드웨어부)에 의해 구성되며, 정보 처리 장치(1, 2, 3, 4)에서는, 각각, 그 점멸 표시용 프로그램에 의해 점멸 표시용 정보가 해석 처리되어 그 발광 표시부가 점멸 표시된다.
발광 표시부는 정보 처리 장치(1)에서는 도 10 및 도 13에 도시한 액정 표시부(42-1)이고, 정보 처리 장치(2)에서는 도 10 및 도 13에 도시한 액정 표시부(42-2)이며, 정보 처리 장치(3)에서는 도 11 및 도 13에 도시한 LED(48)이며, 정보 처리 장치(4)에서는 도 12 및 도 13에 도시한 액정 표시부(63)이다.
(3-3. 제시 형태)
이하에, 각종 경우에 있어서 생성되는 점멸 표시용 정보의 내용 및 각종 경우에서의 점멸 표시의 형태를 나타낸다.
〈3-3-1〉
제1은 도 15에 나타낸 제시용의 장치 정보로서 특기 상세 정보를 기술하지 않고, 또한, 도 16에 나타낸 점멸 표시용 정보로서 확장 정보를 기술하지 않으며, 모든 정보 처리 장치에 대해, 예를 들면, 표시색은 녹색, 점멸 주기는 1.0초, 점멸 시간 비율은 50:50, 광량 변화는 없음(광량 일정), 점멸 위상은 즉시(시간 지연 없음)로 하는 경우이다.
이 경우에는, 정보 처리 장치(1)에서 액정 표시부(42-1)의 표시 화면 전체가 녹색으로 점멸하고, 정보 처리 장치(2)에서는 액정 표시부(42-2)의 표시 화면 전체 가 녹색으로 점멸하고, 정보 처리 장치 장치(3)에서는 LED(48)중의 녹색 LED가 점멸하고, 정보 처리 장치(4)에서는 액정 표시부(63)의 표시 화면 전체가 녹색으로 점멸한다.
따라서, 사용자는 시스템의 외관으로부터 정보 처리 장치(1, 2, 3, 4)가 네트워크 시스템을 구성하고 있는 것을 용이하면서도 확실하게 알 수 있다.
〈3-3-2〉
제2는 마스터 장치로 설정되어 있는 정보 처리 장치와 슬레이브 장치로 설정되어 있는 정보 처리 장치에서, 점멸 주기 또는 표시색을 바꾸는 경우이다.
상술한 예에서는, 정보 처리 장치(1)가 마스터 장치로 설정되고 정보 처리 장치(2, 3, 4)가 슬레이브 장치로 설정되어 있으므로, (2a) 표시색은 동일 색, 예를 들면 녹색으로 하고, 정보 처리 장치(1)에 대해서는 점멸 주기를 0.5초로 하며, 정보 처리 장치(2, 3, 4)에 대해서는 점멸 주기를 1.0초로 하는, (2b) 점멸 주기는 동일한 시간, 예를 들면 1.0초로 하고, 정보 처리 장치(1)에 대해서는 표시색을 적색으로 하고, 정보 처리 장치(2, 3, 4)에 대해서는 표시색을 녹색으로 하는, (2c) 정보 처리 장치(1)에 대해서는 점멸 주기를 0.5초, 표시색을 적색으로 하고, 정보 처리 장치(2, 3, 4)에 대해서는 점멸 주기를 1.0초, 표시색을 녹색으로 하는, 등이다.
이에 따르면, 사용자는 시스템의 외관으로부터 정보 처리 장치(1, 2, 3, 4)가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 정보 처리 장치(1)가 마스터 장치로 설정되고, 정보 처리 장치(2, 3, 4)가 슬레이브 장치로 설정되어 있는 것을, 용이하면서도 활실하게 알 수 있다.
〈3-3-3〉
제3은 점멸 위상을 각 정보 처리 장치의 정보 처리 장치 ID의 순서로 늦추는 경우이다. 즉, 상기의 예에서, 정보 처리 장치 ID를 수치로 치환했을 때, 예를 들면, 정보 처리 장치(1)의 다음 순위가 정보 처리 장치(2), 정보 처리 장치(2)의 다음 순위가 정보 처리 장치(3), 정보 처리 장치(3)의 다음 순위가 정보 처리 장치(4)가 되는(보다 큰 것이 없을 때에는 최소의 것으로 돌아간다) 것으로 하면, 정보 처리 장치(1)에 대해서는 도 17에 나타낸 바와 같은 즉시 모드로 하고, 정보 처리 장치(2)에 대해서는 도 17에 나타낸 바와 같은 제1 위상 시프트 모드(D1)로 하고, 정보 처리 장치(3)에 대해서는 도 17에 나타낸 바와 같은 제2 위상 시프트 모드(D2)로 하고, 정보 처리 장치(4)에 대해서는 도 17에 나타낸 바와 같은 제3 위상 시프트 모드(D3)로 한다.
이에 따르면, 사용자는 시스템의 외관으로부터 정보 처리 장치(1, 2, 3, 4)가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 각 정보 처리 장치의 순서를 용이하면서도 확실하게 알 수 있다.
〈3-3-4〉
제4는 도 15에 나타낸 제시용의 장치 정보 중에, 특기 상세 정보로서 네트워크(9)에 접속되어 있는 정보 처리 장치의 대수를 기술하고, 도 16에 나타낸 점멸 표시용 정보 중에 확장 정보로서 상기 (u)와 같이 점멸 기간내의 점멸 횟수를 기술하는 경우이다.
상기의 예에서는, 4대의 정보 처리 장치(1, 2, 3, 4)가 네트워크(9)에 접속되어 있기 때문에, 예를 들면, 각각의 정보 처리 장치(1, 2, 3, 4)에 대해, 도 17의 시각 ts로부터 시각 te까지의 점멸 기간내에 있어서, 4회 점멸시킨 후, 1회분(1점멸 주기)은 점멸을 휴지하여 소등 상태로 하는 패턴으로, 각각의 정보 처리 장치(1, 2, 3, 4)를 점멸시킨다.
이에 따르면, 사용자는 시스템의 외관으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 몇대의 정보 처리 장치가 네트워크(9)에 접속되어 있는지를, 용이하면서도 확실하게 알 수 있다.
〈3-3-5〉
제5는 도 16에 나타낸 점멸 표시용 정보 중에, 확장 정보로서 상기 (v)와 같이, 사용자가 지정한, 또는 시스템(마스터 장치로 설정되어 있는 정보 처리 장치(1)의 접속 매니저)이 랜덤하게 선택 결정한 복수색 및 색 순서를 기술하는 경우이다.
이 경우, 상기의 예에서는, 예를 들면, 정보 처리 장치(1)가 적색으로, 정보 처리 장치(2)가 녹색으로, 정보 처리 장치(3)가 청색으로, 정보 처리 장치(4)가 황색으로, 각각 점멸한다.
이에 따르면, 사용자는 시스템의 외관으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 몇대의 정보 처리 장치가 네트워크(9)에 접속되어 있는지 등을, 용이하면서도 확실하게 알 수 있다.
또, 정보 처리 장치(3)에서는, 예를 들면, 도 13에 도시한 LED(48)중의 녹색 LED 및 적색 LED를 근접하여 배치하고, 그 녹색 LED 및 적색 LED를 동시에 점멸시킴으로써, 정보 처리 장치(3)를 황색으로 점멸시킬 수 있다.
〈3-3-6〉
제6은 도 15에 나타낸 제시용의 장치 정보 중에, 특기 상세 정보로서 네트워크 시스템이 연계 동작중인 것을 기술하고, 그것을 도 16에 나타낸 점멸 표시용 정보 중의 어느 하나의 항목에 반영시키는 경우이다.
예를 들면, 상술한 바와 같이, 정보 처리 장치(1, 3, 4)가 네트워크(9)에 접속되어 있는 상태에서, 새롭게 정보 처리 장치(2)가 네트워크(9)에 접속되었을 때, 사용자가 정보 처리 장치(3)에서 행한 조합에 따른 처리가 정보 처리 장치(1, 3, 4)에서 실행되고 있는 경우는, 당해 네트워크 시스템은 연계 동작중이다.
그리고, 예를 들면, 이와 같이 연계 동작중인 경우는 표시색을 청색으로 하고, 연계 동작중이 아닌 경우는 표시색을 녹색으로 한다. 또는, 예를 들면, 연계 동작중인 경우는 점멸 주기를 O.5초로 하고, 연계 동작중이 아닌 경우는 점멸 주기를 1.0초로 한다.
이에 따르면, 사용자는 시스템의 외관으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 실제로 연계 동작중인지의 여부를 용이하면서도 확실하게 알 수 있다.
〈3-3-7〉
제7은 도 15에 나타낸 제시용의 장치 정보 중의, 메인 프로세서, 메인 메모리 또는 외부 기록부에 관한 정보를, 도 16에 나타낸 점멸 표시용 정보 중의 어느 하나의 항목에 반영시키는 경우이다.
예를 들면, 메인 프로세서 사용율이 일정치 이상이 되어 있는 정보 처리 장치에 대해서는, 사용자에게 주의를 환기하기 위해 점멸 주기를 통상의 1.0초의 1/2인 0.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
또한, 메인 메모리 총용량과 메인 메모리 사용량으로부터 메인 메모리 사용율을 산출하고, 이 메인 메모리 사용율이 일정치 이상이 되어 있는 정보 처리 장치에 대해서는, 사용자에 주의를 환기하기 위해 점멸 주기를 통상의 1.0초의 1/2인 O.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
또한, 외부 기록부 종별 ID로부터 외부 기록부로서 하드 디스크가 이용되고 있는지의 여부를 판단하고, 하드 디스크가 이용되고 있는 정보 처리 장치(상기의 예에서는 정보 처리 장치(1, 2))에 대해서는 그 하드 디스크의 총용량과 사용량으로부터 사용율을 산출하여, 이 하드 디스크 사용율이 일정치 이상이 되어 있는 정보 처리 장치에 대해서는, 사용자에 주의를 환기하기 위해 점멸 주기를 통상의 1.0초의 1/2인 O.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
또, 메인 프로세서 사용율, 메인 메모리 사용율, 또는 하드 디스크 사용율이 높을수록 점멸 주기를 짧게 하도록, 메인 프로세서 사용율, 메인 메모리 사용율, 또는 하드 디스크 사용율에 따라 점멸 주기를 연속적으로 변화시켜도 된다.
〈3-3-8〉
제8은 네트워크에 접속되어 있는 정보 처리 장치에 이상이나 문제가 있는 경우, 도 15에 나타낸 제시용의 장치 정보 중에, 특기 상세 정보로서 그것을 기술하 고, 그것을 도 16에 나타낸 점멸 표시용 정보 중의 어느 하나의 항목에 반영시키는 경우이다.
이 경우, 네트워크에 접속되어 있는 각 정보 처리 장치, 또는 이상이나 문제가 있는 정보 처리 장치에 대해, 사용자에게 주의를 환기하기 위하여 점멸 주기를 통상의 1.0초 보다 짧은 O.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
〈다른 제시 형태〉
상술한 제시 형태 이외에, 또는 상술한 제시 형태에 더하여, 예를 들면, 상기의 예의 시스템에서, 각각 하드 디스크 레코더인 정보 처리 장치(1, 2)에 대해서는, 도 20 또는 도 21에 도시하는 바와 같은 제시 형태로 하면 매우 적합하다.
도 20의 예에서는, 정보 처리 장치(1)만이 네트워크(9)에 접속되어 있는 경우에는, 「단독 접속」으로서 나타내도록, 액정 표시부(42-1)에 2개의 링크(131, 132)를 교차시켜 점멸 표시(또는 점등 표시)한다. 표시색으로는, 예를 들면, 링크(131, 132)는 휘도가 높은 황색으로 하고, 링크(131, 132)의 내측 부분(133, 134), 링크(131, 132)의 교차 부분(135) 및 링크(131, 132)의 주변 부분(136)은 각각 흑색으로 한다.
정보 처리 장치(1)와 다른 정보 처리 장치가 네트워크(9)에 접속되어 있지만, 연계 동작중이 아닌 경우에는, 「연계 가능 상태」로서 나타내도록, 내측 부분(133, 134)을 청색으로 하고, 교차 부분(135)을 링크(131, 132)와 동일한 황색으로 하여, 단독 접속의 경우보다 화면 전체의 휘도를 높게 한다.
정보 처리 장치(1)와 다른 정보 처리 장치가 네트워크(9)에 접속되어 있고, 또한 연계 동작중인 경우에는, 「연계 동작중」으로서 나타내도록, 내측 부분(133, 134)을 녹색으로 하여 연계 가능 상태의 경우보다 화면 전체의 휘도를 높게 한다.
상기의 예의 시스템에서는, 포터블 CD 플레이어인 정보 처리 장치(4)는 네트워크(9)로부터 절단될 가능성이 높은데 비해, 하드 디스크 레코더인 정보 처리 장치(1, 2)는 일정한 장소에 설치되어 네트워크(9)로부터 절단될 가능성이 낮아, 사용자는 시스템의 상태를 볼 때, 하드 디스크 레코더인 정보 처리 장치(1, 2)에 주목하는 일이 많다.
따라서, 이 예의 제시 형태에 의하면, 사용자는 시스템의 각 상태를 용이하면서도 확실하게 판단할 수가 있다.
도 21의 예에서는, 정보 처리 장치(1)만이 네트워크(9)에 접속되어 있는 경우에는, 「단독 접속」이라고 나타내도록, 액정 표시부(42-1)에 1개의 링크(141)를 점멸 표시(또는 점등 표시)하고, 정보 처리 장치(1)와 다른 1대의 정보 처리 장치가 네트워크(9)에 접속되어 있는 경우에는, 「2대 접속」이라고 나타내도록, 액정 표시부(42-1)에 2개의 링크(142, 143)를 교차시켜 점멸 표시(또는 점등 표시)하고, 정보 처리 장치(1)와 다른 2대의 정보 처리 장치가 네트워크(9)에 접속되어 있는 경우에는, 「3대 접속」이라고 나타내도록, 액정 표시부(42-1)에 3개의 링크(144, 145, 146)를 순차적으로 교차시켜 점멸 표시(또는 점등 표시)한다.
이 예에 의하면, 사용자는 시스템의 외관으로부터 몇대의 정보 처리 장치가 네트워크에 접속되어 있는지를 용이하면서도 확실하게 알 수 있다.
(3-4. 다른 제시 방법 및 제시 형태)
도 20 및 도 21에 「단독 접속」으로 나타낸 바와 같이, 어느 정보 처리 장치만이 네드워크에 접속되어 마스터 장치로 설정된 경우에도, 그 마스터 장치가 자장치의 장치 정보로부터 자장치에 대한 제시용 정보를 생성하고, 상술한 바와 같은 점멸 표시(또는 점등 표시)를 행하도록, 시스템을 구성할 수 있다.
또한, 상술한 예와 같이, 어느 정보 처리 장치가 네트워크에 접속되어 마스터 장치로 설정되어 있는 상태에서, 새롭게 별개의 정보 처리 장치가 네트워크에 접속된 경우에도, 각 슬레이브 장치가, 상술한 예와 같이 마스터 장치에 요구하는 것이 아니라, 각각 자장치의 장치 정보, 또는 자장치 및 타장치의 장치 정보로부터, 자장치에 대한 제시용 정보를 생성하고, 상술한 바와 같은 점멸 표시(또는 점등 표시)를 행하도록 시스템을 구성할 수도 있다.
또한, 복수의 정보 처리 장치가 네트워크에 접속되어 있는 상태로, 그 중 일부의 정보 처리 장치가 네트워크로부터 절단된 경우에도, 상술한 방법 및 형태와 마찬가지의 방법 및 형태에 의해, 네트워크로부터 절단되지 않은 각 정보 처리 장치(절단되지 않은 정보 처리 장치가 1대일 때는, 그 1대의 정보 처리 장치)에서 그 때의 네트워크 시스템의 상태를 제시하도록 시스템을 구성할 수도 있다.
이 경우에는, 사용자는 시스템의 외관으로부터 어느 정보 처리 장치가 네트워크로부터 절단됨으로써 네트워크 시스템의 상황이 변화한 것을, 용이하면서도 확실하게 알 수 있다.
또한, 상술한 예는, 정보 처리 장치의 발광 표시부를 점멸 또는 점등시켜, 네트워크 시스템의 상황을 제시하는 경우이지만, 음성 아나운스에 의해 네트워크 시스템의 상황을 제시하도록 시스템을 구성하여도 된다.
이 경우, 구체적으로, 각 정보 처리 장치에는 스피커 등의 음성 출력 수단을 설치함과 동시에, 음성 아나운스를 위한 프로그램 및 텍스트 데이터를 준비하고, 상술한 장치 정보로부터 텍스트 음성 합성에 의해 음성 아나운스의 음성 데이터를 생성하여, 이를 아날로그 음성 신호로 변환하여, 스피커 등의 음성 출력 수단에 송출하도록 각 정보 처리 장치를 구성하면 된다.
구체적으로, 상술한 예와 같이, 어느 정보 처리 장치가 네트워크에 접속되고 마스터 장치로 설정되어 있는 상태에서, 새롭게 별개의 정보 처리 장치가 네트워크에 접속된 경우에는, 각 정보 처리 장치에서 「기기가 추가되었습니다」, 「기기가 4대로 증가하였습니다」, 「하드 디스크 레코더가 추가되었습니다」, 「4대의 기기로 연계 동작중입니다」 등의 음성 아나운스에 의해, 그 때의 네트워크 시스템의 상황을 제시하고, 복수의 정보 처리 장치가 네트워크에 접속되어 있는 상태에서, 그 중 일부의 정보 처리 장치가 네트워크로부터 절단된 경우에는, 네트워크로부터 절단되지 않은 각 정보 처리 장치(절단되지 않은 정보 처리 장치가 1대인 경우에는 그 1대의 정보 처리 장치)에서 「기기가 절단되었습니다」, 「기기가 3대로 감소하였습니다」, 「CD 플레이어가 절단되었습니다」, 「마스터가 절단되어, 별개의 기기가 마스터로 되었습니다」 등의 음성 아나운스에 의해, 그 때의 네트워크 시스템의 상황을 제시한다.
[4. 네트워크 시스템 및 정보 처리 장치의 제2 기본적 구성]
도 22는 본 발명의 네트워크 시스템의 다른 예를 도시하며, 네트워크(1009)를 통해 복수의 정보 처리 장치(1001, 1002, 1003, 1004)가 접속된 것이다.
(4-1. 정보 처리 장치 및 정보 처리 컨트롤러)
정보 처리 장치(1001, 1002, 1003, 1004)는 각각 후술하는 바와 같은 각종의 AV(Audio and Visual) 기기나 포터블 기기이다.
정보 처리 장치(1001)에 대해 나타내면, 정보 처리 장치(1001)는 컴퓨터 기능부로서 정보 처리 컨트롤러(1011)를 구비한다. 정보 처리 컨트롤러(1011)는 메인 프로세서(1021-1), 서브 프로세서(1023-1, 1023-2, 1023-3), DMAC(Direct Memory Access Controller)(1025-1), 컨트롤 레지스터(1028-1), 워크 메모리(1029-1) 및 DC(Disc Controller)(1030-1)를 갖는다.
메인 프로세서(1021-1)는 서브 프로세서(1023-1, 1023-2, 1023-3)에 의한 서브 프로세서 프로그램의 실행(데이터 처리) 스케줄 관리와 정보 처리 컨트롤러(1011)(정보 처리 장치(1001))의 전반적인 관리를 행한다. 단, 메인 프로세서(1021-1)내에서 관리를 위한 프로그램 이외의 프로그램이 동작하도록 구성할 수도 있다. 그 경우에는, 메인 프로세서(1021-1)는 서프 프로세서로서도 기능하게 된다. 메인 프로세서(1021-1)는 LS(Local Storage)(1022-1)를 갖는다.
서브 프로세서는 1개여도 무방하나, 바람직하게는 복수로 한다. 이 예는, 복수의 경우이다.
각 서브 프로세서(1023-1, 1023-2, 1023-3)는 메인 프로세서(1021-1)의 제어에 의해 병렬적이면서도 독립적으로, 서프 프로세서 프로그램을 실행하여 데이터를 처리한다. 또한, 경우에 따라 메인 프로세서(1021-1)내의 프로그램이 서브 프로세서(1023-1, 1023-2 또는 1023-3)내의 서브 프로세서 프로그램과 연계하여 동작하도록 구성할 수도 있다. 후술하는 기능 프로그램도, 메인 프로세서(1021-1)내에서 작동하는 프로그램이다. 각 서브 프로세서(1023-1, 1023-2, 1023-3)도 LS(Local Storage)(1024-1, 1024-2, 1024-3)를 갖는다.
DMAC(1025-1)은 각각 정보 처리 컨트롤러(1011)에 접속된, DRAM(Dynamic RAM) 등으로 이루어지는 메인 메모리(1026-1) 및 SRAM(Static RAM) 등으로 이루어지는 서브 메모리(1027-1)에 저장되어 있는 프로그램 및 데이터에 액세스하기 위한 것이다. DMAC(1025-1)을 통함으로써, 각 서브 프로세서와 메인 메모리(1026-1)의 사이에서는 DMA 방식에 의해 데이터 전송을 행할 수 있어, 고속화를 실현할 수 있다.
컨트롤러 레지스터(1028-1)는 정보 처리 컨트롤러(1011)내에서 처리될 서브 프로세서 프로그램을, 어느 서브 프로세서가, 또 서브 프로세서내에 복수개 존재하는 후술하는 프로세싱 쓰레드의 어느 것이, 처리할지를 결정할 뿐만 아니라, 서브 프로세서에 의한 서브 프로세서 프로그램 실행의 진척을 관리하기 위해 사용된다.
워크 메모리(1029-1)는 정보 처리 컨트롤러(1011)내에 포함되는 SRAM 등으로 이루어지는 작업용 메모리로서, 메인 프로세서(1021-1) 및 서브 프로세서(1023-1, 1023-2, 1023-3)에 의해 액세스된다.
DC(1030-1)는 정보 처리 컨트롤러(1011)에 접속된 외부 기록부(1031-1, 1031-2)에 액세스하는 것이다.
외부 기록부(1031-1, 1031-2)는 고정 디스크(하드 디스크)라도, 리무버블 디스크라도 되고, 또한, MO, CD±RW, DVD±RW 등의 광 디스크, 메모리 디스크, SRAM(Static RAM), ROM 등 각종의 것을 이용할 수 있다. 따라서, DC(1030-1)는 디스크 컨트롤러라 부르지만, 외부 기록부 컨트롤러이다.
도 22의 예와 같이, 정보 처리 컨트롤러(1011)에 대해 외부 기록부(1031)를 복수 접속할 수 있도록 정보 처리 컨트롤러(1011)를 구성할 수 있다.
메인 프로세서(1021-1), 각 서브 프로세서(1023-1, 1023-2, 1023-3), DMAC(1025-1), 컨트롤 레지스터(1028-1), 워크 메모리(1029-1) 및 DC(1030-1)는 버스(1032-1)에 의해 접속된다.
정보 처리 컨트롤러(1011)에는 당해의 정보 처리 컨트롤러(1011)를 구비하는 정보 처리 장치(1001)를 네트워크 전체를 통해 일의적으로 식별할 수 있는 식별자가 정보 처리 장치 ID로서 할당된다.
메인 프로세서(1021-1) 및 각 서브 프로세서(1023-1, 1023-2, 1023-3)에 대해서도 마찬가지로, 각각을 특정할 수 있는 식별자가 메인 프로세서 ID 및 서브 프로세서 ID로서 할당된다.
정보 처리 컨트롤러(1011)는 원칩 IC(집적 회로)로서 구성하는 것이 바람직하다.
다른 정보 처리 장치(1002, 1003, 1004)도 마찬가지로 구성된다. 여기에서, 모번호가 동일한 유니트는 브랜치 번호가 상이하여도 특별히 한정이 없는 한, 같은 기능을 하는 것으로 한다. 또한, 이하의 설명에 있어서 브랜치 번호가 생략되어 있는 경우에는, 브랜치 번호의 틀림에 의한 차이를 일으키지 않는 것으로 한다.
(4-2. 각 서브 프로세서로부터 메인 메모리에의 액세스)
상술한 바와 같이, 1개의 정보 처리 컨트롤러내의 각 서브 프로세서(1023)는, 독립적으로 서브 프로세서 프로그램을 실행하고 데이터를 처리하지만, 상이한 서브 프로세서가 메인 메모리(1026)내의 동일 영역에 대해 동시에 판독 또는 기입을 행한 경우에는, 데이터의 부정합을 일으킬 수 있다. 따라서, 서브 프로세서(1023)로부터 메인 메모리(1026)로의 액세스는, 이하와 같은 순서에 의해 행한다.
서브 메모리(1027) 및 워크 메모리(1029)에 대해서도 마찬가지로, 상이한 서브 프로세서가 동일 영역에 대해 동시에 액세스하는 것을 생각할 수 있지만, 여기에서는 메인 메모리(1026)에 대해 나타낸다.
도 23a에 나타내는 바와 같이, 메인 메모리(1026)는 어드레스 지정 가능한 복수의 메모리 로케이션(0∼N)에 의해 구성된다. 각 메모리 로케이션에 대해서는, 데이터의 상태를 나타내는 정보를 저장하기 위한 추가 세그먼트(O∼N)가 배정된다. 추가 세그먼트는 F/E 비트, 서브 프로세서 ID 및 LS 어드레스(Local Storage Address)를 포함하는 것이다. 또한, 각 메모리 로케이션에는 후술하는 액세스 키(O∼N)도 배정된다. F/E 비트는, 이하와 같이 정의된다.
F/E 비트=0은 서브 프로세서(1023)에 의해 판독되고 있는 처리중인 데이터, 또는 빈 상태이기 때문에 최신 데이터가 아닌 무효 데이터로서, 판독 불가인 것을 나타낸다. 또한, F/E 비트=0는 당해 메모리 로케이션에 데이터 기입 가능한 것을 나타내며, 기입후에 1로 설정된다.
F/E 비트=1은 당해 메모리 로케이션의 데이터가 서브 프로세서(1023)에 의해 판독되고 있지 않고, 미처리의 최신 데이터인 것을 나타낸다. 당해 메모리 로케이션의 데이터는 판독 가능이며, 서브 프로세서(1023)에 의해 판독된 후에 O으로 설정된다. 또한, F/E 비트=1은 당해 메모리 로케이션이 데이터 기입 불가인 것을 나타낸다.
또한, 상기 F/E 비트=0(판독 불가/기입 가능)의 상태에 있어서, 당해 메모리 로케이션에 대해 판독 예약을 설정하는 것은 가능하다. F/E 비트=0의 메모리 로케이션에 대해 판독 예약을 행하는 경우에는, 서브 프로세서(1023)는 판독 예약을 행하는 메모리 로케이션의 추가 세그먼트에, 판독 예약 정보로서 당해 서브 프로세서(1023)의 서브 프로세서 ID 및 LS 어드레스를 기입한다.
그 후, 데이터 기입측의 서브 프로세서(1023)에 의해, 판독 예약된 메모리 로케이션에 데이터가 기입되어, F/E 비트=1(판독 가능/기입 불가)로 설정되었을 때, 미리 판독 예약 정보로서 추가 세그먼트에 기입된 서브 프로세서 ID 및 LS 어드레스로 판독된다.
복수의 서브 프로세서에 의해 데이터를 다단계로 처리할 필요가 있는 경우, 이와 같이 각 메모리 로케이션의 데이터의 판독/기입을 제어함으로써, 이전 단계의 처리를 행하는 서브 프로세서(1023)가 처리필의 데이터를 메인 메모리(1026)내의 소정 어드레스에 기입한 후에 바로, 다음 단계의 처리를 행하는 별도의 서브 프로세서(1023)가 사전 처리후의 데이터를 판독하는 것이 가능해진다.
도 23b에 나타내는 바와 같이, 각 서브 프로세서(1023)내의 LS(1024)도 어드 레스 지정 가능한 복수의 메모리 로케이션(0∼L)에 의해 구성된다. 각 메모리 로케이션에 대해서는, 마찬가지로 추가 세그먼트(O∼L)가 배정된다. 추가 세그먼트는 비지 비트를 포함하는 것이다.
서브 프로세서(1023)가 메인 메모리(1026)내의 데이터를 자신의 LS(1024)의 메모리 로케이션에 판독할 때에는, 판독할 곳의 메모리 로케이션에 대응하는 비지 비트를 1로 설정하여 예약한다. 비지 비트가 1인 메모리 로케이션에는 다른 테이터는 저장할 수가 없다. LS(1024)의 메모리 로케이션에 판독한 후, 비지 비트는 0으로 되어, 임의의 목적으로 사용할 수 있게 된다.
도 23a에 나타내는 바와 같이, 각 정보 처리 컨트롤러와 접속된 메인 메모리(1026)에는, 복수의 샌드 박스가 더 포함된다. 샌드 박스는 메인 메모리(1026)내의 영역을 획정하는 것으로서, 각 샌드 박스는 각 서브 프로세서(1023)에 할당되어 그 서브 프로세서가 배타적으로 사용할 수가 있다. 즉, 각각의 서브 프로세서(1023)는 자신에게 할당된 샌드 박스를 사용할 수 있지만, 이 영역을 넘어 데이터의 액세스를 행할 수는 없다.
메인 메모리(1026)는 복수의 메모리 로케이션(O∼N)으로 구성되지만, 샌드 박스는 이들 메모리 로케이션의 집합이다. 즉, 1개의 샌드 박스는 1개 또는 복수의 메모리 로케이션으로 구성된다.
또한, 메인 메모리(1023)의 배타적인 제어를 실현하기 위해서, 도 23c에 나타내는 바와 같은 키 관리 테이블이 이용된다. 키 관리 테이블은 정보 처리 컨트롤러내의 SRAM과 같은 비교적 고속의 메모리에 저장되어, DMAC(1025)와 관련지워진 다. 단, 키 관리 테이블은 워크 메모리(1029)에 저장되어도 된다.
키 관리 테이블내에는 정보 처리 컨트롤러내의 서브 프로세서의 수와 동일 수의 엔트리가 존재하고, 각 엔트리에는 서브 프로세서 ID 및 그에 대응하는 서브 프로세서 키 및 키 마스크가 관련지워져 저장된다.
서브 프로세서(1023)가 메인 메모리(1026)를 사용할 때의 프로세스는, 이하와 같다. 우선, 서브 프로세서(1023)는 DMAC(1025)에 판독 또는 기입의 커맨드를 송신한다. 이 커맨드에는 자신의 서브 프로세서 ID와 액세스 요구처인 메인 메모리(1026)내의 어드레스가 포함된다.
DMAC(1025)는 이 커맨드를 실행하기 전에, 키 관리 테이블을 참조하여 액세스 요구원의 서브 프로세서(1023)의 서브 프로세서 키를 조사한다. 다음으로, DMAC(1025)는 조사한 액세스 요구원의 서브 프로세서 키와 액세스 요구처인 메인 메모리(1026)내의 도 23a에 나타낸 메모리 로케이션에 배정된 액세스 키를 비교하여, 2개의 키가 일치한 경우에만 상기의 커맨드를 실행한다.
도 23c에 나타낸 키 관리 테이블상의 키 마스크는, 그 임의의 비트가 1로 됨으로써, 그 키 마스크에 관련지워진 서브 프로세서 키의 대응하는 비트가 0 또는 1로 될 수가 있다.
예를 들면, 서브 프로세서 키가 1010이라고 한다. 통상, 이 서브 프로세서 키에 의해 1010의 액세스 키를 갖는 샌드 박스로의 액세스만이 가능하다. 그러나, 이 서브 프로세서 키와 관련지워진 키 마스크가 0001로 설정되어 있는 경우에는, 키 마스크의 비트가 1로 설정된 자리에만 서브 프로세서 키와 액세스 키의 일치 판 정이 마스크되어, 이 서브 프로세서 키 1010에 의해 액세스 키가 1010 또는 1011의 어느 하나인 액세스 키를 갖는 샌드 박스로의 액세스가 가능해진다.
이상과 같이 하여, 메인 메모리(1026)의 샌드 박스의 배타성이 실현된다. 즉, 1개의 정보 처리 컨트롤러내의 복수의 서브 프로세서에 의해 데이터를 다단계로 처리할 필요가 있는 경우, 이상과 같이 구성함으로써, 이전 단계의 처리를 행하는 서브 프로세서와 다음 단계의 처리를 행하는 서브 프로세서만이 메인 메모리(1026)내의 소정 어드레스에 액세스될 수 있게 되어, 데이터를 보호할 수가 있다.
예를 들면, 이하와 같이 사용하는 것을 생각할 수 있다. 우선, 정보 처리 장치의 기동 직후에 있어서는, 키 마스크의 값은 모두 제로이다. 메인 프로세서내의 프로그램이 실행되어, 서브 프로세서내의 서브 프로세서 프로그램과 연계 동작하는 것으로 한다. 제1 서브 프로세서에 의해 실행된 처리 결과 데이터를 일단, 메인 메모리(1026)에 저장하고, 제2 서브 프로세서에 송신하고 싶을 때에는, 해당하는 메인 메모리 영역은 당연히 어느 쪽의 서브 프로세서로부터도 액세스 가능할 필요가 있다. 이와 같은 경우에, 메인 프로세서내의 프로그램은 키 마스크의 값을 적절히 변경하여, 복수의 서브 프로세서로부터 액세스할 수 있는 메인 메모리 영역을 설치함으로써, 서브 프로세서에 의한 다단계적인 처리를 가능하게 한다.
보다 구체적으로는, 다른 정보 처리 장치로부터의 데이터→제1 서브 프로세서에 의한 처리→제1 메인 메모리 영역→제2 서브 프로세서에 의한 처리→제2 메인 메모리 영역과 같은 순서로 다단계 처리가 행해질 때에는,
제1 서브 프로세서의 서브 프로세서 키: 0100,
제1 메인 메모리 영역의 액세스 키: 0100,
제2 서브 프로세서의 서브 프로세서 키: 0101,
제2 메인 메모리 영역의 액세스 키: 0101,
과 같은 설정인 채라면, 제2 서브 프로세서는 제1 메인 메모리 영역에 액세스할 수가 없다. 따라서, 제2 서브 프로세서의 키 마스크를 0001로 함으로써, 제2 서브 프로세서에 의한 제1 메인 메모리 영역으로의 액세스를 가능하게 할 수가 있다.
(4-3. 각 서브 프로세서로부터 메인 메모리 및 서브 메모리에의 액세스)
1개의 정보 처리 컨트롤러내의 각 서브 프로세서(1023)는 메인 메모리(1026)에 대해서와 마찬가지로, 서브 메모리(1027)에 대해서도 판독 또는 기입이 가능하지만, 그 커맨드에는 몇개의 종류를 생각할 수 있어, 우선도의 고저도 있을 수 있다. 따라서 이하에, 각 서브 프로세서(1023)가 정확히 메인 메모리(1026) 및 서브 메모리(1027)를 사용하기 위한 구성 및 순서를 나타낸다.
도 24에 나타내는 바와 같이, DMAC(1025)는 내부에 메인 메모리 컨트롤 레지스터(1033) 및 서브 메모리 컨트롤 레지스터(1034)를 갖는다. 메인 메모리 컨트롤 레지스터(1033)는 메인 메모리(1026)에 액세스하기 위한 것이며, 서브 메모리 컨트롤 레지스터(1034)는 서브 메모리(1027)에 액세스하기 위한 것이다.
메인 메모리 컨트롤 레지스터(1033)는, 이하의 4개의 블록으로 구성되고, 이하와 같이 각각이 메인 메모리(1026)에 액세스하기 위한 커맨드를 저장한다.
우선 커맨드 블록에는 우선도가 높은 커맨드를 복수개 저장한다. 그 커맨드는 우선적으로 처리된다.
통상 커맨드 블록(1)에는 통상의 커맨드를 복수개 저장하고, 통상 커맨드 블록(2)에도 통상의 커맨드를 복수개 저장한다. 통상 커맨드 블록(1)과 통상 커맨드 블록(2)의 사이에는 기능적인 차는 없지만, 예를 들면, 메인 메모리(1026)로의 액세스 실행전의 커맨드를 한쪽의 블록에 저장하고, 실행후의 커맨드를 다른 한쪽의 블록에 저장함으로써, 실행전과 실행후의 커맨드를 각각 집중적 및 연속적으로 처리할 수 있는 효과가 있다.
오더 커맨드 블록에는 올바른 순서로 처리될 필요가 있는 커맨드를 복수개 저장한다. 즉, 각 서브 프로세서(1023)로부터의 커맨드를 수신한 차례로, 커맨드 송신원의 서브 프로세서의 서브 프로세서 ID와 함께 저장한다. 이에 따라, 수신한 차례로 커맨드를 처리하고, 또한 동일한 순서로 커맨드 송신원 서브 프로세서에 실행 결과를 회신할 수 있다.
서브 메모리 컨트롤 레지스터(1034)도, 이하의 4개의 블록으로 구성되고, 이하와 같이 각각이 서브 메모리(1027)에 액세스하기 위한 커맨드를 저장한다.
우선 커맨드 블록에는 우선도가 높은 커맨드를 복수개 저장한다. 그 커맨드는 우선적으로 처리된다.
리드 커맨드 블록에는 리드 커맨드를 복수개 저장하고, 라이트 커맨드 블록에는 라이트 커맨드를 복수개 저장한다.
대기 커맨드 블록에는 서브 메모리(1027)내의 임의의 영역에 대해 액세스를 시도하였으나, 대상 영역이 로크되어 있어 액세스 불가였던 커맨드를 복수개 저장한다. 로크 해제시에는 그 커맨드는 우선 커맨드 블록으로 이동한다.
각 서브 프로세서(1023)는, 예를 들면, 도 25에 나타내는 바와 같은 구조의 커맨드에 의해, 메인 메모리(1026) 또는 서브 메모리(1027)에 액세스한다. 액세스 실행후의 메인 메모리(1026) 또는 서브 메모리(1027)로부터의 실행 결과의 리스판스도 동일 구조이다.
이 커맨드/리스판스 구조에 있어서, 커맨드 타입으로서는 리드와 라이트가 있다. 우선 커맨드 식별자는 당해 커맨드가 우선도가 높은 커맨드인 것을 나타낸다. 통상 커맨드 식별자는 메인 메모리(1026)로의 액세스시의 것이며, 당해 커맨드가 통상 커맨드 블록(1) 또는 통상 커맨드 블록(2)에 저장되는 것을 나타낸다.
체인 커맨드 식별자도 메인 메모리(1026)로의 액세스시의 것이며, 당해 커맨드가 직전 또는 직후의 커맨드와 함께 연속적인 액세스가 필요한 것을 나타낸다. 또는, 연속하는 커맨드열의 일련 번호라도 된다. 체인 커맨드 식별자가 세트된 커맨드는 오더 커맨드 블록에 저장되지만, 처리의 우선도는 우선 커맨드 블록내의 커맨드보다 높은 것으로 한다.
여기에서의 어드레스는 커맨드를 실행하는 메인 메모리(1026) 또는 서브 메모리(1027)내의 어드레스를 나타낸다. 또는, 워크 메모리(1029)내의 어드레스라도 된다.
서브 프로세서 식별자는 커맨드 송신원의 서브 프로세서의 서브 프로세서 ID이다. 프로세싱 쓰레드 식별자는 커맨드 송신원의 후술하는 프로세싱 쓰레드의 식별자이다.
OK/NG는 커맨드의 성공/실패를 나타낸다. 여기에서의 데이터는 리드 커맨드 실행시에 리스판스에 포함되는 판독된 데이터, 또는 라이트 커맨드 실행시에 커맨드에 포함되는 기입된 데이터이다.
도24에 도시하는 바와 같이, DMAC(1025)내에는, 상술한 각 프로세서(1023)가 메인 메모리(1026)에 정확히 액세스하기 위한 메인 메모리 컨트롤 레지스터(1033) 및 각 서브 프로세서(1023)가 서브 메모리(1027)에 정확히 액세스하기 위한 서브 메모리 컨트롤 레지스터(1034) 외에, 메인 프로세서(1021)가 메인 메모리(1026) 또는 서브 메모리(1027)에 액세스하기 위한 리드 커맨드 및 라이트 커맨드를 각각 복수개 저장할 수 있는 메인 프로세서용 리드 커맨드 블록(1035) 및 메인 프로세서용 라이트 커맨드 블록(1036)을 설치할 수도 있다. 어드레스 변환 레지스터(1037)에 대해서는 후술한다.
또한, 복수의 서브 프로세서가 DMAC(1025)에 대해, 우선도가 동일한 메모리 액세스 커맨드를 동일한 타이밍으로 송신한 경우에는, 이하의 순서에 따르는 것으로 한다. 즉, DMAC(1025)는 내부에 메모리 액세스에 성공한 마지막 서브 프로세서를 나타내는 포인터를 갖는 것으로 하고, 복수의 서브 프로세서로부터 우선도가 동일한 메모리 액세스 커맨드를 동일한 타이밍으로 수신하였을 때에는, 당해 포인터보다 값이 크면서 당해 포인터와의 차분이 가장 작은 커맨드를 우선시키는 것으로 한다. 이 경우, 가장 큰 포인터치의 다음은, 가장 작은 포인터치로 한다.
(4-4. 각 서브 프로세서로부터 메인 메모리에 정확히 액세스하기 위한 서브 메모리에의 액세스)
DRAM 등에 의해 구성되는 메인 메모리(1026) 및 SRAM 등에 의해 구성되는 서 브 메모리(1027)는, 당연한 일이지만, 각각의 소자 구조가 다르기 때문에, 사용 목적도 달라진다.
따라서, 메인 메모리(1026)와 서브 메모리(1027)를 조합하여 사용하는 방볍의 일례로서, 각 서브 프로세서(1023)가 메인 메모리(1026)로 액세스할 때의 어드레스 변환을 서브 메모리(1027)가 담당하는 것을 생각할 수 있다. 그것을 위한 구성 및 순서를, 도 26에 나타낸다.
전술한 바와 같이, 메인 메모리(1026)는 복수의 메모리 로케이션에 의해 구성되고, 또한 1개의 샌드 박스는 1개 또는 복수의 메모리 로케이션으로 구성된다. 그리고, 각 서브 프로세서(1023)는 자신에게 할당된 샌드 박스를 배타적으로 사용할 수 있다.
예를 들면, 도 26a에 나타내는 바와 같이, 어느 서브 프로세서(1023)에 메인 메모리(1026)내의 샌드 박스(1, 2, 3)가 할당되어 있는 것으로 한다. 샌드 박스 1은 Ox800∼Ox8FF, 샌드 박스 2는 0x200∼Ox2FF, 샌드 박스 3은 OxFOO∼OxFFF로 하고, 각 샌드 박스는 선두 어드레스에 의해 식별되는 것으로 한다. 즉, 할당된 각 샌드 박스는 어드레스가 연속하고 있지 않아도 된다.
당해의 서브 프로세서(1023)는 이들 샌드 박스(1, 2, 3)로부터 데이터를 판독할 때에는, 우선 DMAC(1025)내의 어드레스 변환 레지스터(1037)에 액세스한다.
어드레스 변환 레지스터(1037)는 서브 프로세서(1023)와 당해 서브 프로세서(1023)에 할당된 샌드 박스를 관련짓는 레지스터로서, 서브 프로세서(1023)의 수와 동일한 수의 엔트리로 구성된다. 여기에서는, Q1에서 나타나는 엔트리가 당해 서 브 프로세서(1023)에 대응하는 것으로 한다.
이 때, 서브 프로세서(1023)는 자신에게 대응하는 Q1의 값을 판독한다. 또한, 판독된 Q1의 값(Ox80)에서 가리키는, 서브 메모리(1027)내의 제1 어드레스로부터 데이터(Ox20)를 판독한다.
샌드 박스(1)의 영역은 Q1의 값에 기초하여 특정된다. 예를 들면, Q1의 값을 16배한 값이 샌드 박스(1)의 선두 어드레스를 나타내고, 그 선두 어드레스에 255를 가산한 값이 샌드 박스(1)의 종료 어드레스를 나타낸다. 따라서, 상기한 바와 같이 Q1의 값이 0x80일 때는, 샌드 박스(1)의 영역은 Ox800∼Ox8FF이다.
또한, 서브 프로세서(1023)는 상기의 제1 어드레스로부터 판독한 데이터(0x20)에서 가리키는, 동일한 서브 메모리(1027)내의 제2 어드레스로부터 데이터(0xF0)를 판독한다.
샌드 박스(2)의 영역은, 이 제2 어드레스로부터 판독된 데이터에 기초하여 특정된다. 구체적으로, 샌드 박스(1)와 마찬가지로 제2 어드레스로부터 판독된 데이터의 값을 16배한 값이 샌드 박스(2)의 선두 어드레스를 나타내고, 그 선두 어드레스에 255를 가산한 값이 샌드 박스(2)의 종료 어드레스를 나타낸다. 따라서, 상기와 같이 제2 어드레스로부터 판독된 데이터가 0xF0일 때는, 샌드 박스(2)의 영역은 Ox200∼Ox2FF이다.
또한, 서브 프로세서(1023)는 상기의 제2 어드레스로부터 판독된 데이터(OxFO)에서 가리키는, 동일 서브 메모리(1027)내의 제1 어드레스로부터 데이터(0x00)를 판독한다. 0x00은 할당된 샌드 박스의 종료를 나타낸다.
샌드 박스(3)의 영역은 이 제3 어드레스로부터 판독한 데이터에 기초하여 특정된다. 구체적으로, 샌드 박스(1, 2)와 마찬가지로, 제3 어드레스로부터 판독된 데이터의 값을 16배한 값이 샌드 박스(3)의 선두 어드레스를 나타내고, 그 선두 어드레스에 255를 가산한 값이 샌드 박스(3)의 종료 어드레스를 나타낸다. 따라서, 상기한 바와 같이 제3 어드레스로부터 판독된 데이터가 OxOO일 때는, 샌드 박스(3)의 영역은 OxFOO∼OxFFF이다.
이상과 같이, 각 서브 프로세서(1023)는 자신에게 할당된 샌드 박스의 어드레스가 비연속이라도, 할당된 샌드 박스에 정확히 액세스할 수가 있어, 할당된 샌드 박스로부터 데이터를 확실하게 판독할 수가 있다.
다음으로, 같은 서브 프로세서(1023)가 메인 메모리(1026)내의 새로운 샌드 박스에 데이터를 기입하고, 당해 샌드 박스를 어드레스 변환 레지스터(1037)내의 자신에게 대응한 엔트리에서 관리되는 샌드 박스 그룹에 추가하기 위한 순서를 도 26b를 이용하여 설명한다.
당해 서브 프로세서(1023)가 메인 메모리(1026)내의 OxOOO∼OxOFF의 영역인 샌드 박스(4)에 데이터를 기입하였다고 한다. 이 때, 당해 서브 프로세서(1023)는, 우선, Q1의 값(Q1의 초기치, 예를 들면 상기와 같이 Ox80)을 판독한다.
다음으로, 당해 서브 프로세서(1023)는 새롭게 데이터를 기입한 샌드 박스(4)를 특정할 수 있는 서브 메모리(1027)내의 어드레스에, 먼저 판독한 Q1의 값(Ox80)을 기입한다. 예를 들면, 이번은 OxOOO∼OxOFF의 영역에 데이터를 기입하였으므로, 선두 어드레스인 OxOOO를 16으로 나눈 OxOO으로 나타나는 서브 메모리 (1027)내의 어드레스에 Q1의 값(Ox80)을 기입한다. 또한, Q1의 값(Ox80)을 기입한 서브 메모리(1027)내의 어드레스(OxOO)를 새로운 Q1의 값으로서 어드레스 변환 레지스터(1037)내의 Q1에 기입한다.
이상과 같이 하여, 각 서브 프로세서(1023)는 새로운 샌드 박스를 기존의 샌드 박스 그룹에 추가할 수 있다. 이 경우에도, 각 샌드 박스의 어드레스가 비연속이라도 된다. 또한, 기존의 샌드 박스 그룹이 존재하지 않고, 최초의 샌드 박스를 서브 메모리(1027) 및 어드레스 변환 레지스터(1037)와 관련지울 때에도, 상기의 방법을 이용할 수가 있다.
(4-5. 메인 프로세서 및 각 서브 프로세서로부터 워크 메모리에의 액세스)
전술한 바와 같이, 메인 메모리(1026)는 DRAM 등에 의해 구성되고, 또한 DRAM 방식에 의해 데이터가 전송되기 때문에, 각 서브 프로세서(1023)는 대용량의 메인 메모리(1026)를 고속으로 사용할 수 있다. 또한, 서브 메모리(1027)는 SRAM 등에 의해 구성되고, 마찬가지로 고속으로 사용할 수 있다.
또한, 메인 프로세서(1021) 및 각 서브 프로세서(1023)가 정보 처리 컨트롤러에 접속된 메인 메모리(1026) 및 서브 메모리(1027)와 함께, 정보 처리 컨트롤러내에 포함되는 워크 메모리(1029)를 작업용 메모리로서 공유하여 사용할 수 있으면, 더욱 더 고속화를 실현할 수가 있다.
또한, 당해 워크 메모리(1029)에 의해 간단한 수치 연산이 가능하면, 효율적이다. 워크 메모리(1029)는, 전술한 바와 같이 SRAM 등에 의해 구성되기 때문에, DRAM과 같은 대용량화는 기대할 수 없지만, 매우 고속이다.
이하에, 메인 프로세서(1021) 및 각 서브 프로세서(1023)가 워크 메모리(1029)에 액세스하는 경우의 구성 및 순서를 나타낸다.
도 27에 도시하는 바와 같이, 워크 메모리(1029)는 컨트롤러(1038)와 RAM(1039)으로 구성된다. RAM(1039)으로써는 SRAM을 이용할 수 있지만, 그것으로 한정되는 것은 아니다. RAM(1039)은 복수의 블록으로 구성된다. 각 블록에는 어드레스가 할당되어 데이터가 기억된다.
메인 프로세서(1021) 및 각 서브 프로세서(1023)는 컨트롤러(1038)를 통해 RAM(1039)에 액세스한다. 구체적으로, 메인 프로세서(1021) 및 각 서브 프로세서(1023)는 컨트롤러(1038)에 커맨드, 어드레스 또는 데이터 등을 송신하고, 컨트롤러(1038)는 그에 수반하여 RAM(1039)에 액세스한다.
처리 실행후, 컨트롤러(1038)는 커맨드 송신원인 메인 프로세서(1021) 또는 서브 프로세서(1023)에 커맨드 실행 결과를 회신한다.
각 서브 프로세서(1023)가 워크 메모리(1029)에 액세스할 때의 커맨드는, 예를 들면 도 25에 나타낸 바와 같은, 메인 메모리(1026) 또는 서브 메모리(1027)로의 액세스시에 이용하는 것과 동일하다. 처리 실행후의 워크 메모리(1029)로부터의 실행 결과의 리스판스도 동일 구조이다.
단, 워크 메모리(1029)에 액세스하는 경우에는, 도 25에 나타낸 커맨드 중의 우선 커맨드 식별자, 통상 커맨드 식별자, 체인 커맨드 식별자, 프로세싱 쓰레드 식별자는, 기본적으로 사용하지 않는다. 그러나, 워크 메모리(1029)가 이들 식별자에 대응 가능하면 사용하여도 된다. 커맨드 타입으로서는, 이하에 나타내는 것 과 같은 몇가지를 생각할 수 있다.
제1은 리드 커맨드가다. 이것은 워크 메모리(1029)내의 데이터를 판독 위해 사용된다. 메인 프로세서(1021) 및 각 서브 프로세서(1023)는, 리드 커맨드와 함께 원하는 데이터를 기억하는 RAM(1039)내의 블록의 어드레스도 송신한다. 컨트롤러(1038)로부터는 실행 결과로서 리드 커맨드의 성공/실패를 나타내는 OK/NG와 판독된 데이터가 회신된다.
제2는 라이트 커맨드가다. 이것은, 워크 메모리(1029)내에 데이터를 기입하기 위해 사용된다. 메인 프로세서(1021) 및 각 서브 프로세서(1023)는 라이트 커맨드, 데이터, 당해 데이터를 기억시키는 RAM(1039)내의 블록의 어드레스를 송신한다. 컨트롤러(1038)로부터는 실행 결과로서 라이트 커맨드의 성공/실패를 나타내는 OK/NG가 회신된다.
제3은 가산 커맨드가다. 이것은, 워크 메모리(1029)내의 데이터를 가산하기 위해 사용된다. 메인 프로세서(1021) 및 각 서브 프로세서(1023)는 가산 커맨드, 가산시키는 데이터를 기억하는 RAM(1039)내의 블록의 어드레스를 송신한다. 컨드롤러(1038)는 수신한 어드레스의 블록에서의 데이터에 1을 가산하여, 덧쓴다. 실행 결과로서, 가산 커맨드의 성공/실패를 나타내는 OK/NG가 회신된다.
제4는 세트 커맨드가다. 이것은 워크 메모리(1029)내의 데이터를 비트 단위로 조작하기 위해서 사용된다. 메인 프로세서(1021) 및 각 서브 프로세서(1023)는 세트 커맨드, 조작하는 데이터를 기억하는 RAM(1039)내의 블록의 어드레스 및 마스터 데이터를 송신한다.
이에 비해, 컨트롤러(1038)는 수신한 마스터 데이터와 수신한 어드레스의 블록에서의 데이터를 비교하여, 마스크 데이터에 있어서 값이 1인 비트와 동일한 위치의 데이터에서의 비트의 값을 1로 한다. 실행 결과로서, 세트 커맨드의 완료를 나타내는 Completed가 회신된다. 이 때, 셋트 커맨드 실행전의 데이터도 회신함으로써, 커맨드의 성공/실패를 확인할 수 있도록 하여도 된다.
제5는 클리어 커맨드가다. 이것도 워크 메모리(1029)내의 데이터를 비트 단위로 조작하기 위해 사용된다. 메인 프로세서(1021) 및 각 서브 프로세서(1023)는 클리어 커맨드, 조작하는 데이터를 기억하는 RAM(1039)내의 블록의 어드레스 및 마스크 데이터를 송신한다.
이에 비해, 컨트롤러(1038)는 수신한 마스크 데이터와 수신한 어드레스의 블록에서의 데이터를 비교하여, 마스크 데이터에 있어서 값이 1인 비트와 동일한 위치의 데이터에서의 비트의 값을 0으로 한다. 실행 결과로서, 클리어 커맨드의 완료를 나타내는 Completed가 회신된다. 이 때, 클리어 커맨드 실행전의 데이터도 회신함으로써, 커맨드의 성공/실패를 확인할 수 있도록 하여도 된다.
이상과 같이, 메인 프로세서(1021) 및 각 서브 프로세서(1023)는, 대용량의 메인 메모리(1026) 및 고속의 서브 메모리(1037)에 더하여, 워크 메모리(1029)를 병용할 수가 있다. 또한, 워크 메모리(1029)를 메인 메모리(1026) 또는 서브 메모리(1027)의 캐시로서 이용하면, 새로운 고속화를 기대할 수가 있다.
(4-6. 각 서브 프로세서내의 프로세싱 쓰레드)
전술한 바와 같이, 1개의 정보 처리 컨트롤러내의 각 서브 프로세서(1023)는 구조상 독립되어 있다. 따라서, 각각의 서브 프로세서(1023)가 독립적으로 서브 프로세서 프로그램을 실행하고 데이터를 처리할 수가 있다. 또한 각 서브 프로세서(1023)가 내부에 가상적으로 독립된 복수의 프로세싱 쓰레드를 갖는 것도 생각할 수 있다. 그 구조를 도 28에 도시한다.
서브 프로세서(1023)는 내부에 갖는 아비터(1040)를 통해 버스(1032)와 접속된다. 서브 프로세서(1023)내에는, 또한, LS(Local Storage)(1024)와 프로세싱 쓰레드(1041, 1042, 1043 및 1044)가 포함되고, 아비터(1040)는 외부로부터의 신호를 적절한 프로세싱 쓰레드에 통지하는 역할을 담당한다.
도 28에서는 각 프로세싱 쓰레드(1041, 1O42, 1043, 1044)를 독립적으로 나타내고 있지만, 어디까지나 가상적인 독립이다. 프로세싱 쓰레드(1041, 1042, 1043, 1044)는 각각 프로세싱 쓰레드 식별자가 할당되어, 독립적이면서도 병렬로 동작 가능하다.
각 프로세싱 쓰레드(1041, 1042, 1043, 1044)는 메인 메모리(1026), 서브 메모리(1027) 또는 워크 메모리(1029)에 대해 독립적으로 액세스를 행하기 때문에, 커맨드 송신원의 프로세싱 쓰레드에 확실하게 리스판스가 회신되도록 할 필요가 있다. 그것을 위한 순서를 이하에 나타낸다.
각 프로세싱 쓰레드(1041, 1042, 1043, 1044)가 각각의 메모리에 액세스할 때의 커맨드는, 예를 들면 도 25에 나타낸 바와 같은 각 서브 프로세서(1023)가 메모리에 액세스할 때에 이용하는 것과 동일하다. 처리 실행후의 각 메모리로부터의 실행 결과의 리스판스도 동일 구조이다.
도 25의 커맨드/리스판스 구조에 대해서는 전술하였지만, 서브 프로세서 식별자는 커맨드 송신원의 서브 프로세서의 서브 프로세서 ID이며, 또한 프로세싱 쓰레드 식별자는 당해 서브 프로세서내의 어느 프로세싱 쓰레드가 커맨드 송신원인지를 식별하기 위한 것이다.
메인 메모리(1026), 서브 메모리(1027) 또는 워크 메모리(1029)로부터의 리스판스는, 우선, 서브 프로세서 식별자에 기초하여 커맨드 송신원의 서브 프로세서(1023)에 회신된다. 또한, 프로세싱 쓰레드 식별자에 기초하여, 서브 프로세서(1023)내의 아비터(1040)에 의해 커맨드 송신원의 프로세싱 쓰레드에 회신된다.
단, 동일한 처리를 행할 때 등, 서브 프로세서내의 복수의 프로세싱 쓰레드 중의 어느 것이라도 되는 경우에는, 프로세싱 쓰레드 식별자에 기초하지 않고, 처리 부하가 가벼운 프로세싱 쓰레드에 회신하도록 하여도 된다. 또한, 메인 메모리(1026), 서브 메모리(1027) 또는 워크 메모리(1029)로부터 리스판스를 수신할 때마다, 복수의 프로세싱 쓰레드 중의 1개를 차례로 선택하여, 그 선택된 프로세싱 쓰레드에 당해 리스판스를 회신하도록 하여도 된다.
이상과 같이, 각 서브 프로세서(1023)내의 복수의 프로세싱 쓰레드가, 메인 메모리(1026), 서브 메모리(1027) 또는 워크 메모리(1029)에 대해 독립적으로 액세스를 행하는 경우에서도, 커맨드 송신원의 프로세싱 쓰레드에 확실하게 리스판스가 회신되도록 할 수 있다.
(4-7. 컨트롤 레지스트에 의한 서브 프로세서 프로그램의 관리)
1개의 정보 처리 컨트롤러내에 복수의 서프 프로세서(1023)가 존재하고, 각 서브 프로세서(1023)내에 복수의 프로세싱 쓰레드를 더 갖는 경우에, 정보 처리 컨트롤러내에서 처리될 서브 프로세서 프로그램을 어느 프로세싱 쓰레드에 처리시킬지를 결정하는 것은, 정보 처리 컨트롤러의 고속화를 실현하는데 있어서 중요하다.
따라서 이하에, 도 22에 도시한 컨트롤 레지스터(1028)를 사용함으로써, 각 프로세싱 쓰레드에 대해 적절히 서브 프로세서 프로그램의 처리를 할당하여, 정보 처리 컨트롤러를 효율적으로 동작시키는 구성 및 순서를 나타낸다.
도 29에 나타내는 바와 같이, 컨트롤 레지스터(1028)는 처리 대기 서브 프로세서 프로그램 레지스터(1O45)와 서브 프로세서 프로그램 처리 진척 레지스터(1046)로 구성된다.
처리 대기 서브 프로세서 프로그램 레지스터(1045)에 대해 나타내면, 메인 프로세서(1021)는 정보 처리 컨트롤러내에서 처리될 서브 프로세서 프로그램이 발 생했을 경우에는, 처리 대기 서브 프로세서 프로그램 레지스터(1045)내에, 당해 서브 프로세서 프로그램 또는 이에 관련하는 데이터가 저장되어 있는 메인 메모리(1026), 서브 메모리(1027), 워크 메모리(1029) 또는 LS(Local Storage)(1022 또는 1024)에서의 어드레스를 기입한다.
처리될 서브 프로세서 프로그램이 존재하지 않는 상태에서는, 처리 대기 서브 프로세서 프로그램 레지스터(1045)의 값은 제로이다. 모든 프로세싱 쓰레드는, 자신이 아무것도 서브 프로세서 프로그램을 실행하고 있지 않는 동안에는, 정기적 또는 비정기적으로 처리 대기 서브 프로세서 프로그램 레지스터(1045)의 값을 판독하여, 그 결과, 제로가 아닌 값을 판독한 프로세싱 쓰레드가 처리를 행하는 것으로 한다.
이와 함께, 당해 프로세싱 쓰레드는 처리 대기 서브 프로세서 프로그램 레지스터(1045)에 제로의 값을 기입한다. 처리를 행하는 프로세싱 쓰레드는 판독한 처리 대기 서브 프로세서 프로그램 레지스터(1045)의 값에 기초하여, 처리 대상이 되는 서브 프로세서 프로그램 또는 관련 데이터를 판독하여 처리한다. 이 때, 서브 프로세서 프로그램은 이미 당해 프로세싱 쓰레드를 갖는 서브 프로세서(1023)에 판독하여져 있어, 서브 프로세서 프로그램의 판독하기는 불필요한 것도 생각할 수 있다.
이와 같이 하여, 서브 프로세서 프로그램을 실행하고 있지 않은, 처리 능력에 여유가 있는 프로세싱 쓰레드에 신속하게 서브 프로세서 프로그램의 처리를 할당할 수 있어, 정보 처리 컨트롤러를 효율적으로 동작시킬 수가 있다.
서브 프로세서 프로그램 처리 진척 레지스터(1046)는 서브 프로세서 프로그램의 처리를 할당받은 프로세싱 쓰레드가 처리 진척 상황을 기입하기 위한 2비트(x, y)의 레지스터이다. 예를 들면, (0, 0)은 미처리를 나타내고, (0, 1)은 처리중의 단계 1을 나타내고, (1, 0)은 처리중의 단계 2를 나타내고, (1, 1)은 처리 완료를 나타낸다. 또한 이 2비트와 함께, 프로세싱 쓰레드 식별자를 기입함으로써, 처리를 할당된 프로세싱 쓰레드를 나타내도록 하여도 된다.
또한, 도 29에 프로세싱 쓰레드(0, 1, 2, 3)로서 나타낸 바와 같이, 정보 처리 컨트롤러내의 각 프로세싱 쓰레드마다, 서브 프로세서 프로그램의 처리 진척 상황을 기입하기 위한 레지스터를 설치하여도 된다.
서브 프로세서 프로그램 처리 진척 레지스터(1046)는 정보 처리 컨트롤러내의 메인 프로세서(1021), 모든 서브 프로세서(1023) 및 모든 프로세싱 쓰레드가 액세스 가능하고, 이에 따라, 서브 프로세서 프로그램의 처리 진척 상황을 적확하게 파악할 수가 있다. 또한, 각 프로세싱 쓰레드마다 처리 진척 레지스터를 설치하는 경우에는, 복수의 서브 프로세서 프로그램이 동시에 실행되는 경우에도 처리 진척 상황의 파악이 가능해진다.
이상이, 각 서브 프로세서(1023)가 내부에, 가상적으로 독립된 복수의 프로세싱 쓰레드를 갖는 경우의 프로세싱 쓰레드 관리 방법의 예이다.
또, 이하에 있어서는, 서브 프로세서가 어떠한 처리를 행하는 경우에는, 당해 서브 프로세서 내부의 어느 프로세싱 쓰레드가 처리를 행하여도 상관없는 것으로 하여, 프로세싱 쓰레드의 차이에 의한 실행 결과의 차이는 생기지 않는 것으로 한다. 따라서, 서브 프로세서의 처리 내용에 대해, 서브 프로세서 내부의 복수의 프로세싱 쓰레드가 어떻게 처리를 분담할지에 대해서는 설명을 생략한다.
(4-8. 소프트웨어 셀의 생성 및 구성)
도 22의 네트워크 시스템에서는, 정보 처리 장치(1001, 1002, 1003, 1004)사이에서의 분산 처리를 위해서, 정보 처리 장치(1001, 1002, 1003, 1004)사이에서 소프트웨어 셀이 전송된다. 즉, 어느 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(1021)는 커맨드, 프로그램 및 데이터를 포함하는 소프트웨어 셀을 생성하여, 네트워크(1009)를 통해 다른 정보 처리 장치에 송신함으로써, 처리를 분산할 수가 있다.
도 3에 소프트웨어 셀의 구성의 일례를 나타낸다. 이 예의 소프트웨어 셀은 전체적으로, 송신원 ID, 송신처 ID, 리스판스처 ID, 셀 인터페이스, DMA 커맨드, 프로그램 및 데이터에 의해 구성된다.
송신원 ID에는, 소프트웨어 셀의 송신원인 정보 처리 장치의 네트워크 어드레스 및 정보 처리 장치 ID, 또한 그 정보 처리 장치내의 정보 처리 컨트롤러가 구비되는 메인 프로세서(1021) 및 각 서브 프로세서(1023)의 식별자(메인 프로세서 ID 및 서브 프로세서 ID)가 포함된다.
송신처 ID 및 리스판스처 ID에는, 각각, 소프트웨어 셀의 송신처인 정보 처리 장치 및 소프트웨어 셀의 실행 결과의 리스판스처인 정보 처리 장치에 대한, 동일한 정보가 포함된다.
셀 인터페이스는 소프트웨어 셀의 이용에 필요한 정보로서, 글로벌 ID, 필요한 서브 프로세서의 정보, 샌드 박스 사이즈 및 전회의 소프트웨어 셀 ID로 구성된다.
글로벌 ID는 네트워크 전체를 통해 당해의 소프트웨어 셀을 일의적으로 식별 할 수 있는 것으로서, 송신원 ID 및 소프트웨어 셀의 작성 또는 송신의 일시(일자 및 시각)에 기초하여 작성된다.
필요한 서브 프로세서의 정보는, 당해 소프트웨어 셀의 실행에 필요한 서브 프로세서의 수가 설정된다. 샌드 박스 사이즈는 당해 소프트웨어 셀의 실행에 필요한 메인 메모리(1026)내 및 서브 프로세서(1023)의 LS(1024)내의 메모리량이 설정된다.
전회의 소프트웨어 셀 ID는 스트리밍 데이터 등의 시퀀셜한 실행을 요구하는 1그룹의 소프트웨어 셀내의 전회의 소프트웨어 셀의 식별자이다.
소프트웨어 셀의 실행 섹션은 DMA 커맨드, 프로그램 및 데이터로 구성된다. DMA 커맨드에는 프로그램의 기동에 필요한 일련의 DMA 커맨드가 포함되고, 프로그램에는 서브 프로세서(1023)에 의해 실행되는 서브 프로세서 프로그램이 포함된다. 여기에서의 데이터는, 이 서브 프로세서 프로그램을 포함하는 프로그램에 의해 처리되는 데이터이다.
또한 DMA 커맨드에는 로드 커맨드, 퀵 커맨드, 기능 프로그램 실행 커맨드, 스테이터스 요구 커맨드 및 스테이터스 회신 커맨드가 포함된다.
로드 커맨드는 메인 메모리(1026)내의 정보를 서브 프로세서(1023)내의 LS(1024)에 로드하는 커맨드으로서, 로드 커맨드 자체 외에, 메인 메모리 어드레스, 서브 프로세서 ID 및 LS 어드레스를 포함한다. 메인 메모리 어드레스는 정보의 로드원인 메인 메모리(1026)내의 소정 영역의 어드레스를 나타낸다. 서브 프로세서 ID 및 LS 어드레스는 정보의 로드처인 서브 프로세서(1023)의 식별자 및 LS(1024)의 어드레스를 나타낸다.
퀵 커맨드는 서브 프로세서 프로그램의 실행을 개시하는 커맨드으로서, 퀵 커맨드 자체 외에, 서브 프로세서 ID 및 프로그램 카운터를 포함한다. 서브 프로세서 ID는 퀵 대상의 서브 프로세서(1023)를 식별하고, 프로그램 카운터는 서브 프로세서 프로그램 실행용 프로그램 카운터를 위한 어드레스를 부여한다.
기능 프로그램 실행 커맨드는, 후술하는 바와 같이, 어느 정보 처리 장치가 다른 정보 처리 장치에 대해 기능 프로그램의 실행을 요구하는 커맨드가다. 기능 프로그램 실행 커맨드를 수신한 정보 처리 장치내의 정보 처리 컨트롤러는, 후술하는 기능 프로그램 ID에 의해 기동할 기능 프로그램을 식별한다.
스테이터스 요구 커맨드는 송신처 ID로 가리키는 정보 처리 장치의 현재의 동작 상태(상황)에 관한 장치 정보를, 리스판스처 ID로 가리키는 정보 처리 장치앞으로 송신하는 것을 요구하는 커맨드가다. 기능 프로그램에 대해서는 후술하지만, 도 6에 도시한 정보 처리 장치의 메인 메모리(1026)가 기억하는 소프트웨어의 구성도에 있어서 기능 프로그램에 카테고라이즈되는 프로그램이다. 기능 프로그램은 메인 메모리(1026)에 로드되어 메인 프로세서(1021)에 의해 실행된다.
스테이터스 회신 커맨드는, 상기의 스테이터스 요구 커맨드를 수신한 정보 처리 장치가 자신의 장치 정보를 당해 스테이터스 요구 커맨드에 포함되는 리스판스처 ID로 가리키는 정보 처리 장치에 리스판스하는 커맨드가다. 스테이터스 회신 커맨드는 실행 섹션의 데이터 영역에 장치 정보를 저장한다.
도 4에 DMA 커맨드가 스테이터스 회신 커맨드인 경우에서의 소프트웨어 셀의 데이터 영역의 구조를 나타낸다.
정보 처리 장치 ID는 정보 처리 컨트롤러를 구비하는 정보 처리 장치를 식별하기 위한 식별자로서, 스테이터스 회신 커맨드를 송신하는 정보 처리 장치의 ID를 나타낸다. 정보 처리 장치 ID는 전원 투입시, 그 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(1021)에 의해, 전원 투입시의 일시, 정보 처리 장치의 네트워크 어드레스 및 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 서브 프로세서(1023)의 수 등에 기초하여 생성된다.
정보 처리 장치 종별 ID에는, 당해의 정보 처리 장치의 특징을 나타내는 값이 포함된다. 정보 처리 장치의 특징이란, 예를 들면, 후술하는 하드 디스크 레코더, 텔레비젼 수신 장치, 포터블 CD(Compact Disc) 플레이어 등이다. 또한, 정보 처리 장치 종별 ID는 영상 음성 기록, 영상 음성 재생 등, 정보 처리 장치의 기능을 나타내는 것이라도 된다. 정보 처리 장치의 특징이나 기능을 나타내는 값은 미리 결정되어 있는 것으로 하고, 정보 처리 장치 종별 ID를 판독함으로써, 당해 정보 처리 장치의 특징이나 기능을 파악하는 것이 가능하다.
MS(Master/Slave) 스테이터스는, 후술하는 바와 같이 정보 처리 장치가 마스터 장치 또는 슬레이브 장치의 어느 것인가로 동작하고 있는지를 나타내는 것으로서, 이것이 0으로 설정되어 있는 경우에는 마스터 장치로서 동작하고 있는 것을 나타내고, 1로 설정되어 있는 경우에는 슬레이브 장치로서 동작하고 있는 것을 나타낸다.
메인 프로세서 동작 주파수는 정보 처리 컨트롤러내의 메인 프로세서(1021)의 동작 주파수를 나타낸다. 메인 프로세서 사용율은 메인 프로세서(1021)에서 현재 동작하고 있는 모든 프로그램에 대한, 메인 프로세서(1021)에서의 사용율을 나타낸다. 메인 프로세서 사용율은 대상 메인 프로세서의 전체 처리 능력에 대한 사용중의 처리 능력의 비율을 나타낸 값으로, 예를 들면 프로세서 처리 능력 평가를 위한 단위인 MIPS를 단위로서 산출, 또는 단위 시간당의 프로세서 사용 시간에 기초하여 산출된다. 후술하는 서브 프로세서 사용율에 대해서도 마찬가지이다.
서브 프로세서수는 당해의 정보 처리 컨트롤러가 구비하는 서브 프로세서(1023)의 수를 나타낸다. 서브 프로세서 ID는 당해의 정보 처리 컨트롤러내의 각 서브 프로세서(1023)를 식별하기 위한 식별자이다.
서브 프로세서 스테이터스는 각 서브 프로세서(1023)의 상태를 나타내는 것으로서, unused, reserved, busy 등의 상태가 있다. unused는 당해의 서브 프로세서가 현재 사용되고 있지 않고, 사용의 예약도 되어 있지 않은 것을 나타낸다. reserved는 현재는 사용되고 있지 않지만, 예약되어 있는 상태를 나타낸다. busy는 현재 사용중인 것을 나타낸다.
서브 프로세서 사용율은 당해의 서브 프로세서에서 현재 실행하고 있는, 또는 당해의 서브 프로세서에 실행이 예약되어 있는 서브 프로세서 프로그램에 대한, 당해 서브 프로세서에서의 사용율을 나타낸다. 즉, 서브 프로세서 사용율은 서브 프로세서 스테이터스가 busy인 경우에는 현재의 사용율을 나타내고, 서브 프로세서 스테이터스가 reserved인 경우에는 다음에 사용될 예정의 추정 사용율을 나타낸다.
서브 프로세서 ID, 서브 프로세서 스테이터스 및 서브 프로세서 사용율은, 1개의 서브 프로세서(1023)에 대해 1세트 설정되어, 1개의 정보 처리 컨트롤러내의 서브 프로세서(1023)의 수의 세트수만큼 설정된다.
메인 메모리 총용량 및 메인 메모리 사용량은, 각각, 당해의 정보 처리 컨트롤러에 접속되어 있는 메인 메모리(1026)의 총용량 및 현재 사용중의 용량을 나타낸다.
외부 기록부수는 당해의 정보 처리 컨트롤러에 접속되어 있는 외부 기록부 (1031)의 수를 나타낸다. 외부 기록부 ID는 당해의 정보 처리 컨트롤러에 접속되어 있는 외부 기록부(1031)를 일의적으로 식별하는 정보이다. 외부 기록부 종별 ID는 당해의 외부 기록부의 종별(예를 들면, 하드 디스크, CD±RW, DVD±RW, 메모리 디스크, SRAM, ROM 등)을 나타낸다.
외부 기록부 총용량 및 외부 기록부 사용량은, 각각, 외부 기록부 ID에 의해 식별되는 외부 기록부(1031)의 총용량 및 현재 사용중의 용량을 나타낸다.
외부 기록부 ID, 외부 기록부 종별 ID, 외부 기록부 총용량 및 외부 기록부 사용량은, 1개의 외부 기록부(1031)에 대해 1세트 설정되어, 당해의 정보 처리 컨트롤러에 접속되어 있는 외부 기록부(1031)의 수의 세트수만큼 설정된다. 즉, 1개의 정보 처리 컨트롤러에 복수의 외부 기록부가 접속되어 있는 경우, 각각의 외부 기록부에는 상이한 외부 기록부 ID가 할당되고, 외부 기록부 종별 ID, 외부 기록부 총용량 및 외부 기록부 사용량도 별개로 관리된다.
(4-9. 소프트웨어 셀의 실행)
어느 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(1021)는, 이상과 같은 구성의 소프트웨어 셀을 생성하고, 네트워크(1009)를 통해 다른 정보 처리 장치 및 당해 장치내의 정보 처리 컨트롤러에 송신한다. 송신원의 정보 처리 장치, 송신처의 정보 처리 장치, 리스판스처의 정보 처리 장치 및 각 장치내의 정보 처리 컨트롤러는, 각각, 상기의 송신원 ID, 송신처 ID 및 리스판스처 ID에 의해 식별된다.
소프트웨어 셀을 수신한 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(1021)는, 그 소프트웨어 셀을 메인 메모리(1026)에 저장한다. 또한, 송신처의 메인 프로세서(1021)는 소프트웨어 셀을 판독하여, 그것에 포함되는 DMA 커맨드를 처리한다.
구체적으로, 송신처의 메인 프로세서(1021)는, 우선, 로드 커맨드를 실행한다. 이에 따라, 로드 커맨드에서 지시받은 메인 메모리 어드레스로부터, 로드 커맨드에 포함되는 서브 프로세서 ID 및 LS 어드레스에서 특정되는 서브 프로세서내의 LS(1024)의 소정 영역에, 정보가 로드된다. 여기에서 로드되는 정보는, 수신한 소프트웨어 셀에 포함되는 서브 프로세서 프로그램 또는 데이터, 혹은 그 밖의 지시된 데이터이다.
다음으로, 메인 프로세서(1021)는 퀵 커맨드를 그것에 포함되는 서브 프로세서 ID로 지시받은 서브 프로세서에, 마찬가지로 퀵 커맨드에 포함되는 프로그램 카운터와 함께 송신한다.
지시받은 서브 프로세서는 그 퀵 커맨드 및 프로그램 카운터에 따라, 서브 프로세서 프로그램을 실행한다. 그리고, 실행 결과를 메인 메모리(1026)에 저장한 후, 실행을 완료한 것을 메인 프로세서(1021)에 통지한다.
또, 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 있어서 소프트웨어 셀을 실행하는 프로세서는 서브 프로세서(1023)에 한정되는 것이 아니라, 메인 프로세서(1021)가 소프트웨어 셀에 포함되는 기능 프로그램 등의 메인 메모리용 프로그램을 실행하도록 지정하는 것도 가능하다.
이 경우에는, 송신원의 정보 처리 장치는 송신처의 정보 처리 장치앞으로 서 브 프로세서 프로그램 대신에, 메인 메모리용 프로그램 및 그 메인 메모리용 프로그램에 의해 처리되는 데이터를 포함하고, DMA 커맨드가 로드 커맨드인 소프트웨어 셀을 송신하여, 메인 메모리(1026)에 메인 메모리용 프로그램 및 그에 따라 처리되는 데이터를 기억시킨다.
다음으로, 송신원의 정보 처리 장치는 송신처의 정보 처리 장치앞으로 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 대한 메인 프로세서 ID, 메인 메모리 어드레스, 메인 메모리용 프로그램을 식별하기 위한 후술하는 기능 프로그램 ID 등의 식별자 및 프로그램 카운터를 포함하고, DMA 커맨드가 퀵 커맨드 또는 기능 프로그램 실행 커맨드인 소프트웨어 셀을 송신하여, 메인 프로세서(1021)에 당해 메인 메모리용 프로그램을 실행시킨다.
이상과 같이, 본 발명의 네트워크 시스템에서는 송신원의 정보 처리 장치는 서브 프로세서 프로그램 또는 메인 메모리용 프로그램을 소프트웨어 셀에 의해 송신처의 정보 처리 장치에 송신할 뿐만 아니라, 당해 서브 프로세서 프로그램을 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 포함되는 서브 프로세서(1023)에 로드시켜, 당해 서브 프로세서 프로그램 또는 당해 메인 메모리용 프로그램을 송신처의 정보 처리 장치에 실행시킬 수가 있다.
송신처의 정보 처리 장치내의 정보 처리 컨트롤러에서는 수신한 소프트웨어 셀에 포함되는 프로그램이 서브 프로세서 프로그램인 경우에는, 당해 서브 프로세서 프로그램을 지정된 서브 프로세서에 로드시킨다. 그리고, 소프트웨어 셀에 포함되는 서브 프로세서 프로그램 또는 메인 메모리용 프로그램을 실행시킨다.
따라서, 사용자가 송신처의 정보 처리 장치를 조작하지 않아도 자동적으로, 당해 서브 프로세서 프로그램 또는 당해 메인 메모리용 프로그램을 송신처의 정보 처리 장치내의 정보 처리 컨트롤러에 실행시킬 수가 있다.
이와 같이 하여 정보 처리 장치는, 자장치내의 정보 처리 컨트롤러가 서브 프로세서 프로그램 또는 기능 프로그램 등의 메인 메모리용 프로그램을 갖고 있지 않은 경우에는, 네트워크에 접속된 다른 정보 처리 장치로부터 그것들을 취득할 수가 있다. 또한, 각 서브 프로세서와 메인 메모리 사이에서는 DMA 방식에 의해 데이터 전송을 행하고, 또한 상술한 샌드 박스를 사용함으로써, 1개의 정보 처리 컨트롤러내에서 데이터를 다단계로 처리할 필요가 있는 경우에서도, 고속이면서도 고시큐리티로 처리를 실행할 수가 있다.
[5. 정보 처리 장치간의 분산 처리의 제2 예]
소프트웨어 셀의 사용에 의한 분산 처리의 결과, 도 30의 상단에 도시하는 바와 같이 네트워크(1009)에 접속되어 있는 복수의 정보 처리 장치(1001, 1002, 1003, 1004)는, 도 30의 하단에 도시하는 바와 같이, 가상적인 1대의 정보 처리 장치(1007)로서 동작한다. 단, 그를 위해서는, 이하와 같은 구성에 의해 이하와 같은 처리가 실행될 필요가 있다.
(5-1. 시스템의 소프트웨어 구성과 프로그램의 로드)
도 6에, 개개의 정보 처리 컨트롤러의 메인 메모리(1026)가 기억하는 소프트웨어의 구성을 도시한다. 이들 소프트웨어(프로그램)는 정보 처리 장치에 전원이 투입되기 전에 있어서는, 당해의 정보 처리 컨트롤러에 접속되는 외부 기록부 (1031)에 기록되어 있는 것이다.
각 프로그램은 기능 또는 특징에 의해, 제어 프로그램, 기능 프로그램 및 디바이스 드라이버에 카테고라이즈된다.
제어 프로그램은 각 정보 처리 컨트롤러가 동일한 것을 구비하고, 각 정보 처리 컨트롤러의 메인 프로세서(1021)가 실행하는 것으로, 후술하는 MS(Master/Slave) 매니저 및 능력 교환 프로그램을 포함한다.
기능 프로그램은 메인 프로세서(1021)가 실행하는 것으로, 기록용, 재생용, 소재 검색용 등, 정보 처리 컨트롤러마나 정보 처리 장치에 부합하는 것이 구비된다.
디바이스 드라이버는 정보 처리 컨트롤러(정보 처리 장치)의 입출력(송수신)용으로, 방송 수신, 모니터 출력, 비트 스트림 입출력, 네트워크 입출력 등, 정보 처리 컨트롤러마다 정보 처리 장치에 부합하는 것이 구비된다.
케이블의 플러그 등에 의해 정보 처리 장치가 물리적으로 네트워크(1009)에 접속된 상태에서, 정보 처리 장치에 주전원이 투입되어, 정보 처리 장치가 전기적·기능적으로도 네트워크(1009)에 접속되면, 그 정보 처리 장치의 정보 처리 컨트롤러의 메인 프로세서(1021)는 제어 프로그램에 속하는 각 프로그램 및 디바이스 드라이버에 속하는 각 프로그램을 메인 메모리(1026)에 로드한다.
로드 순서로서는, 메인 프로세서(1021)는, 우선, DC(1030)에 판독 커맨드를 실행시킴으로써, 외부 기록부(1031)로부터 프로그램을 판독하고, 다음으로, DMAC(1025)에 기입 커맨드를 실행시킴으로써, 그 프로그램을 메인 메모리(1026)에 기입한다.
기능 프로그램에 속하는 각 프로그램에 대해서는, 필요할 때에 필요한 프로그램만을 로드하도록 구성하여도 되고, 또는, 다른 카테고리에 속하는 프로그램과 마찬가지로, 주전원 투입 직후에 각 프로그램을 로드하도록 구성하여도 된다.
기능 프로그램에 속하는 각 프로그램은, 네트워크에 접속된 모든 정보 처리 장치의 외부 기록부(1031)에 기록되어 있을 필요는 없고, 어느 1개의 정보 처리 장치의 외부 기록부(1031)에 기록되어 있으면, 전술의 방법에 의해 다른 정보 처리 장치로부터 로드할 수가 있으므로, 결과적으로 도 30의 하단에 도시하는 바와 같이, 가상적인 1대의 정보 처리 장치(1007)로서 기능 프로그램을 실행할 수가 있다.
또한, 전술한 바와 같이, 메인 프로세서(1021)에 의해 처리되는 기능 프로그램은, 서브 프로세서(1023)에 의해 처리되는 서브 프로세서 프로그램과 연계 동작하는 경우가 있다. 따라서, 메인 프로세서(1021)가 외부 기록부(1031)로부터 기능 프로그램을 판독하여 메인 메모리(1026)에 기입할 때에, 대상이 되는 기능 프로그램과 연계 동작하는 서브 프로세서 프로그램이 존재하는 경우에는, 당해 서브 프로세서 프로그램도 아울러 동일한 메인 메모리(1026)에 기입한다. 이 경우, 연계 동작하는 서브 프로세서 프로그램은, 1개인 경우도 있지만, 복수개인 경우도 있을 수 있다. 복수개인 경우에는, 모든 연계 동작하는 서브 프로세서 프로그램을 메인 메모리(1026)에 기입한다.
메인 메모리(1026)에 기입된 서브 프로세서 프로그램은, 그 후, 서브 프로세서(1023)내의 LS(1024)에 기입되어, 메인 프로세서(1021)에 의해 처리되는 기능 프 로그램과 연계 동작한다.
도 3의 소프트웨어 셀에 나타낸 바와 같이, 기능 프로그램에는 프로그램마다 프로그램을 일의적으로 식별할 수 있는 식별자가 기능 프로그램 ID로서 할당된다. 기능 프로그램 ID는 기능 프로그램의 작성 단계에서 작성 일시나 정보 처리 장치 ID 등으로부터 결정된다.
서브 프로세서 프로그램에도 서브 프로세서 프로그램 ID가 할당되어, 이에 따라 서브 프로세서 프로그램을 일의적으로 식별 가능하다. 할당되는 서브 프로세서 프로그램 ID는 연계 동작의 상대가 되는 기능 프로그램의 기능 프로그램 ID와 관련성이 있는 식별자, 예를 들면 기능 프로그램 ID를 모번호로 한 다음 가장 끝에 브랜치 번호를 부가시킨 식별자라도 되지만, 연계 동작의 상대가 되는 기능 프로그램의 기능 프로그램 ID와는 관련성이 없는 식별자라도 된다.
어느 것으로 하여도, 기능 프로그램과 서브 프로세서 프로그램이 연계 동작하는 경우에는, 양자 모두 상대의 식별자인 프로그램 ID를 자프로그램내에 기억하여 둘 필요가 있다. 기능 프로그램이 복수개의 서브 프로세서 프로그램과 연계 동작하는 경우에도, 당해 기능 프로그램은 그 복수개의 서브 프로세서 프로그램의 서브 프로세서 프로그램 ID를 모두 기억해 둔다.
메인 프로세서(1021)는 자신이 동작하는 정보 처리 장치의 장치 정보(장치의 종별, 능력, 동작 상태, 장치가 갖는 자원 등의 장치에 관한 정보)를 저장하기 위한 영역을 메인 메모리(1026)에 확보하고, 당해 정보를 자장치의 장치 정보 테이블로서 기록한다. 여기에서의 장치 정보는, 구체적으로는, 도 4에 나타낸 정보 처리 장치 ID 이하의 각 정보이다.
(5-2. 시스템에서의 마스터/슬레이브의 결정)
상술한 네트워크 시스템에서는, 어느 정보 처리 장치로의 주전원 투입시, 그 정보 처리 장치의 정보 처리 컨트롤러의 메인 프로세서(1021)는 마스터/슬레이브 매니저(이하, MS 매니저)를 메인 메모리(1026)에 로드하여 실행한다.
MS 매니저는 자신이 동작하는 정보 처리 장치가 네트워크(1009)에 접속되어 있는 것을 검지하면, 동일한 네트워크(1009)에 접속되어 있는 다른 정보 처리 장치의 존재를 확인한다. 여기에서의 「접속」 또는 「존재」는 상술한 바와 같이, 정보 처리 장치가 물리적으로 네트워크(1009)에 접속되어 있을 뿐만 아니라, 전기적·기능적으로도 네트워크(1009)에 접속되어 있는 것을 나타낸다.
이하에서는, 자신이 동작하는 정보 처리 장치를 자장치, 다른 정보 처리 장치를 타장치라 한다. 당해 장치도 당해 정보 처리 장치를 가리키는 것으로 한다.
MS 매니저가 동일 네트워크(1009)에 접속되어 있는 다른 정보 처리 장치의 존재를 확인하는 방법을, 이하에 나타낸다.
MS 매니저는 DMA 커맨드가 스테이터스 요구 커맨드가며, 리스판스원 ID 및 리스판스처 ID가 당해 정보 처리 장치에서, 송신처 ID를 특정하지 않은 소프트웨어 셀을 생성하고, 당해 정보 처리 장치가 접속된 네트워크상에 송신하여, 네트워크 접속 확인용의 타이머를 설정한다. 타이머의 타임 아웃 시간은, 예를 들면 10분으로 한다.
당해 네트워크 시스템상의 다른 정보 처리 장치가 접속되어 있는 경우, 그 밖의 장치는, 상기 스테이터스 요구 커맨드의 소프트웨어 셀을 수신하고, 상기 리스판스처 ID로 특정되는 스테이터스 요구 커맨드를 발행한 정보 처리 장치에 대해서, DMA 커맨드가 스테이터스 회신 커맨드가며, 또한 데이터로서 자신(그 밖의 장치)의 장치 정보를 포함하는 소프트웨어 셀을 송신한다. 이 스테이터스 회신 커맨드의 소프트웨어 셀에는, 적어도 당해 타장치를 특정하는 정보(정보 처리 장치 ID, 메인 프로세서에 관한 정보, 서브 프로세서에 관한 정보 등) 및 당해 타장치의 MS 스테이터스가 포함된다.
스테이터스 요구 커맨드를 발행한 정보 처리 장치의 MS 매니저는, 상기 네트워크 접속 확인용의 타이머가 타임 아웃할 때까지, 당해 네트워크상의 타장치로부터 송신되는 스테이터스 회신 커맨드의 소프트웨어 셀의 수신을 감시한다. 그 결과, MS 스테이터스=0(마스터 장치)을 나타내는 스테이터스 회신 커맨드가 수신된 경우에는, 자장치의 장치 정보 테이블에서의 MS 스테이터스를 1로 설정한다. 이에 따라, 당해 장치는 슬레이브 장치로 된다.
한편, 상기 네트워크 접속 확인용 타이머가 타임 아웃할 때까지의 사이에 스테이터스 회신 커맨드가 전혀 수신되지 않은 경우, 또는 MS 스테이터스=0(마스터 장치)을 나타내는 스테이터스 회신 커맨드가 수신되지 않은 경우에는, 자장치의 장치 정보 테이블에서의 MS 스테이터스를 O으로 설정한다. 이에 따라, 당해 장치는 마스터 장치로 된다.
즉, 어느 장치도 네트워크(1009)에 접속되지 않은 상태, 또는 네트워크(1009)상에 마스터 장치가 존재하지 않은 상태에 있어서, 새로운 정보 처리 장치가 네트워크(1009)에 접속되면, 당해 장치는 자동적으로 마스터 장치로서 설정된다. 한편, 네트워크(1009)상에 이미 마스터 장치가 존재하는 상태에 있어서, 새로운 정보 처리 장치가 네트워크(1009)에 접속되면, 당해 장치는 자동적으로 슬레이브 장치로서 설정된다.
마스터 장치 및 슬레이브 장치의 어느 것에 대해서도, MS 매니저는 정기적으로 스테이터스 요구 커맨드를 네트워크(1009)상의 타장치에 송신하여 스테이터스 정보를 조회함으로써, 타장치의 상황을 감시한다. 그 결과, 네트워크(1009)에 접속되어 있는 정보 처리 장치의 주전원이 차단되어, 또는 네트워크(1009)로부터 정보 처리 장치가 분리됨으로써, 미리 판정용으로 설정된 소정 기간내에 특정의 타장치로부터 스테이터스 회신 커맨드가 회신되지 않은 경우나, 네트워크(1009)에 새로운 정보 처리 장치가 접속된 경우 등, 네트워크(1009)의 접속 상태에 변화가 있었던 경우에는, 그 정보를 후술하는 능력 교환 프로그램에 통지한다.
(5-3. 능력 교환에 의한 장치 정보의 취득)
메인 프로세서(1021)는 MS 매니저로부터, 네트워크(1009)상의 타장치의 조회 및 자장치의 MS 스테이터스의 설정 완료의 통지를 받으면, 능력 교환 프로그램을 실행한다.
능력 교환 프로그램은 자장치가 마스터 장치인 경우에는, 네트워크(1009)에 접속되어 있는 모든 타장치의 장치 정보, 즉 각 슬레이브 장치의 장치 정보를 취득한다.
타장치의 장치 정보의 취득은, 상술한 바와 같이, DMA 커맨드가 스테이터스 요구 커맨드인 소프트웨어 셀을 생성하여 타장치에 송신하고, 그 후, DMA 커맨드가 스테이터스 회신 커맨드가면서 데이터로서 타장치의 장치 정보를 포함하는 소프트웨어 셀을 타장치로부터 수신함으로써 가능하다.
능력 교환 프로그램은 마스터 장치인 자장치의 장치 정보 테이블과 마찬가지로, 네트워크(1009)에 접속되어 있는 모든 타장치(각 슬레이브 장치)의 장치 정보를 저장하기 위한 영역을 자장치의 메인 메모리(1026)에 확보하고, 이들 정보를 타장치(슬레이브 장치)의 장치 정보 테이블로서 기록한다.
즉, 마스터 장치의 메인 메모리(1026)에는 자장치를 포함하는 네트워크(1009)에 접속되어 있는 모든 정보 처리 장치의 장치 정보가 장치 정보 테이블로서 기록된다.
한편, 능력 교환 프로그램은 자장치가 슬레이브 장치인 경우에는, 네트워크(1009)에 접속되어 있는 모든 타장치의 장치 정보, 즉, 마스터 장치 및 자장치 이 외의 각 슬레이브 장치의 장치 정보를 취득하여, 이들 장치 정보에 포함되는 정보 처리 장치 ID 및 MS 스테이터스를 자장치의 메인 메모리(1026)에 기록한다.
즉, 슬레이브 장치의 메인 메모리(1026)에는, 자장치의 장치 정보가 장치 정보 테이블로서 기록될 뿐만 아니라 자장치 이외의 네트워크(1009)에 접속되어 있는 마스터 장치 및 각 슬레이브 장치에 대한 정보 처리 장치 ID 및 MS 스테이터스가, 별도의 장치 정보 테이블로서 기록된다.
또한, 마스터 장치 및 슬레이브 장치의 어느 것에 대해서도, 능력 교환 프로그램은, 상기한 바와 같이 MS 매니저로부터 새롭게 네트워크(1009)에 정보 처리 장 치가 접속된 것이 통지되었을 때에는, 그 정보 처리 장치의 장치 정보를 취득하여, 상술한 바와 같이 메인 메모리(1026)에 기록한다.
또, MS 매니저 및 능력 교환 프로그램은 메인 프로세서(1021)에서 실행되는 것에 한정되지 않고, 어느 하나의 서브 프로세서(1023)에서 실행되어도 된다. 또한, MS 매니저 및 능력 교환 프로그램은 정보 처리 장치의 주전원이 투입되고 있는 동안에는 상시 동작하는 상주 프로그램인 것이 바람직하다.
(5-4. 정보 처리 장치가 네트워크로부터 절단되었을 경우)
마스터 장치 및 슬레이브 장치의 어느 것에 대해서도, 능력 교환 프로그램은, 상기한 바와 같이 MS 매니저로부터 네트워크(1009)에 접속되어 있는 정보 처리 장치의 주전원이 차단, 또는 네트워크(1009)로부터 정보 처리 장치가 분리된 것이 통지되었을 때에는, 그 정보 처리 장치의 장치 정보 테이블을 자장치의 메인 메모리(1026)로부터 삭제한다.
또한, 이와 같이 네트워크(1009)로부터 절단된 정보 처리 장치가 마스터 장치인 경우에는, 이하와 같은 방법에 의해 새롭게 마스터 장치가 결정된다.
구체적으로, 예를 들면, 네트워크(1009)로부터 절단되어 있지 않은 정보 처리 장치는, 각각, 자장치 및 타장치의 정보 처리 장치 ID를 수치로 치환하고, 자장치의 정보 처리 장치 ID를 타장치의 정보 처리 장치 ID와 비교하여, 자장치의 정보 처리 장치 ID가 네트워크(1009)로부터 절단되어 있지 않은 정보 처리 장치중에서 최소인 경우, 그 슬레이브 장치는 마스터 장치로 이행하고, MS 스테이터스를 0으로 설정하여 마스터 장치로서 상술한 바와 같이, 네트워크(1009)에 접속되어 있는 모 든 타장치(각 슬레이브 장치)의 장치 정보를 취득하고, 메인 메모리(1026)에 기록한다.
(5-5. 장치 정보에 기초하는 정보 처리 장치간의 분산 처리)
도 30의 하단에 도시한 바와 같이 네트워크(1009)에 접속되어 있는 복수의 정보 처리 장치(1001, 1002, 1003, 1004)를 가상적인 1대의 정보 처리 장치(1007)로서 동작시키기 위해서는, 마스터 장치가 사용자의 조작 및 슬레이브 장치의 동작 상태를 파악할 필요가 있다.
도 31에, 4대의 정보 처리 장치가 가상적인 1대의 정보 처리 장치(1007)로서 동작하는 모습을 도시한다. 정보 처리 장치(1001)가 마스터 장치, 정보 처리 장치(1002, 1003, 1004)가 슬레이브 장치(A, B, C)로서 동작하고 있는 것으로 한다.
사용자가 네트워크(1009)에 접속되어 있는 정보 처리 장치를 조작한 경우, 조작 대상이 마스터 장치(1001)이면 그 조작 정보는 마스터 장치(1001)에 있어서 직접 파악되고, 조작 대상이 슬레이브 장치이면 그 조작 정보는 조작된 슬레이브 장치로부터 마스터 장치(1001)로 송신된다. 즉, 사용자의 조작 대상이 마스터 장치(1001)와 슬레이브 장치의 어느 것인가에 관계없이, 그 조작 정보는 항상 마스터 장치(1001)에 있어서 파악된다. 조작 정보의 송신은, 예를 들면, DMA 커맨드가 조작 정보 송신 커맨드인 소프트웨어 셀에 의해 행해진다.
그리고, 마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는 그 조작 정보에 따라서, 실행하는 프로그램을 선택한다. 그 때, 필요하다면 마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는, 상기의 방법에 의해 자장치의 외부 기록부(1031-1 또는 1031-2)로부터 메인 메모리(1026-1)에 기능 프로그램을 로드하지만, 다른 정보 처리 장치(슬레이브 장치)가 마스터 장치(1001)에 기능 프로그램을 송신하여도 된다.
기능 프로그램에는, 그 실행 단위마다 필요하다. 도 4에 나타낸 각 정보로서 표시되는 정보 처리 장치 종별 ID, 메인 프로세서 또는 서브 프로세서의 처리 능력, 메인 메모리 사용량, 외부 기록부에 관한 조건 등의, 장치에 관한 요구 스펙이 규정되어 있다.
마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는, 각 기능 프로그램에 대해 필요하게 되는 상기 요구 스펙을 판독한다. 또한, 미리 능력 교환 프로그램에 의해 메인 메모리(1026-1)에 기록된 장치 정보 테이블을 참조하여, 각 정보 처리 장치의 장치 정보를 판독한다. 여기에서의 장치 정보는, 도 4에 나타낸 정보 처리 장치 ID 이하의 각 정보를 가리키며, 메인 프로세서, 서브 프로세서, 메인 메모리 및 외부 기록부에 관한 정보이다.
마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는 네트워크(1009)상에 접속된 각 정보 처리 장치의 상기 장치 정보와 기능 프로그램 실행에 필요하게 되는 상기 요구 스펙을 순차적으로 비교한다.
그리고, 예를 들면, 기능 프로그램이 녹화 기능을 필요로 하는 경우에는, 정보 처리 장치 종별 ID에 기초하여, 녹화 기능을 갖는 정보 처리 장치만을 특정하여 추출한다. 또한, 기능 프로그램을 실행하기 위해 필요한 메인 프로세서 또는 서브 프로세서의 처리 능력, 메인 메모리 사용량, 외부 기록부에 관한 조건을 확보할 수 있는 슬레이브 장치를, 실행 요구 후보 장치로서 특정한다. 복수의 실행 요구 후보 장치가 특정된 경우에는, 그 중의 1개를 선택한다.
실행 요구하는 슬레이브 장치가 특정되면, 마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는 그 특정된 슬레이브 장치에 대해, 자장치내의 정보 처리 컨트롤러(1011)에 포함되는 메인 메모리(1026-1)에 기록되어 있는 당해 슬레이브 장치의 장치 정보 테이블을 갱신한다.
또한, 마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는, DMA 커맨드가 기능 프로그램 실행 커맨드인 소프트웨어 셀을 생성하고, 당해 소프트웨어 셀의 셀 인터페이스에 당해 기능 프로그램에 관한 필요한 서브 프로세서의 정보 및 샌드 박스 사이즈(도 3 참조)를 설정하여, 상기 실행 요구되는 슬레이브 장치에 대해 송신한다.
기능 프로그램의 실행을 요구받은 슬레이브 장치는, 그 기능 프로그램을 실행할 뿐만 아니라, 자장치의 장치 정보 테이블을 갱신한다. 그 때, 필요하다면, 슬레이브 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(1021)는, 상기의 방법에 의해 자장치의 외부 기록부(1031)로부터 메인 메모리(1026)에 기능 프로그램 및 당해 기능 프로그램과 연계 동작하는 서브 프로세서 프로그램을 로드한다.
기능 프로그램의 실행을 요구받은 슬레이브 장치의 외부 기록부(1031)에, 필요한 기능 프로그램 또는 당해 기능 프로그램과 연계 동작하는 서브 프로세서 프로그램이 기록되어 있지 않은 경우에는, 다른 정보 처리 장치가 당해 기능 프로그램 또는 서브 프로세서 프로그램을 그 기능 프로그램 실행 요구처 슬레이브 장치에 송 신하도록 시스템을 구성하여도 된다.
서브 프로세서 프로그램에 대해서는, 상기의 로드 커맨드 및 퀵 커맨드를 이용하여 다른 정보 처리 장치에 실행시킬 수도 있다.
기능 프로그램의 실행 종료후, 기능 프로그램을 실행한 슬레이브 장치내의 정보 처리 컨트롤러에 포함되는 메인 프로세서(1021)는, 종료 통지를 마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)에 송신할 뿐만 아니라, 자장치의 장치 정보 테이블을 갱신한다. 마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는, 그 종료 통지를 수신하고, 기능 프로그램을 실행한 슬레이브 장치의 장치 정보 테이블을 갱신한다.
마스터 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1O21-1)는 자장치 및 타장치의 장치 정보 테이블의 참조 결과로부터, 당해의 기능 프로그램을 실행할 수 있는 정보 처리 장치로서 자신을 선택하는 경우도 있을 수 있다. 그 경우에는, 마스터 장치(1001)가 당해의 기능 프로그램을 실행한다.
도 31의 예에서, 사용자가 슬레이브 장치(A)(정보 처리 장치(1002))를 조작하고, 당해 조합에 따른 기능 프로그램을 별도의 슬레이브 장치(B)(정보 처리 장치(1003))가 실행하는 경우에 대해, 도 32에 이상의 분산 처리의 예를 나타낸다.
도 32의 예에서는, 사용자가 슬레이브 장치(A)를 조작함으로써, 슬레이브 장치(A)를 포함하는 네트워크 시스템 전체의 분산 처리가 개시하고, 우선, 슬레이브 장치(A)는 단계 1091에서 그 조작 정보를 마스터 장치(1001)로 송신한다.
마스터 장치(10O1)는 단계 1092에서, 그 조작 정보를 수신하고, 단계 1093으 로 더 진행하여, 자장치의 메인 메모리(1026-1)에 기록되어 있는 자장치 및 타장치의 장치 정보 테이블로부터 각 정보 처리 장치의 동작 상태를 조사하고, 수신한 조작 정보에 부합하는 기능 프로그램을 실행할 수 있는 정보 처리 장치를 선택한다. 이 예는, 슬레이브 장치(B)가 선택되는 경우이다.
다음으로, 마스터 장치(1001)는 단계 1094에서 그 선택한 슬레이브 장치(B)에 대해 기능 프로그램의 실행을 요구한다.
슬레이브 장치(B)는 단계 1095에서 그 실행 요구를 수신하고, 단계 1096으로 더 진행하여, 실행 요구된 기능 프로그램을 실행한다.
이상과 같이, 사용자는 1대의 정보 처리 장치만을 조작함으로써, 다른 정보 처리 장치를 조작하는 일 없이, 복수의 정보 처리 장치(1001, 1002, 1003, 1004)를 가상적인 1대의 정보 처리 장치(1007)로서 동작시킬 수가 있다.
(5-6. 각 정보 처리 장치 및 시스템의 구체적인 예)
네트워크(1009)를 통해 서로 접속되는 정보 처리 장치(1001, 1002, 1003, 1004)는, 기본적으로 상기와 같은 정보 처리 컨트롤러(1011, 1012, 1013, 1014)에 의해 정보 처리를 행하는 것이라면, 어떠한 것이라도 되지만, 도 33에 그 일례를 나타낸다.
이 예에서는, 정보 처리 컨트롤러(1011)를 구비하는 정보 처리 장치(1001)는 하드 디스크 레코더이며, 도 34에 도시하는 바와 같이, 하드웨어 구성으로서는, 도 22에 도시한 외부 기록부(1031-1)로서 하드 디스크를 내장하고, 도 22에 도시한 외부 기록부(1031-2)로서 DVD±R/RW, CD±R/RW, Blu-ray Disc(등록 상표) 등의 광 디 스크를 장착할 수 있을 뿐만 아니라, 정보 처리 컨트롤러(1011)의 버스(1032-1)에 접속된 버스(1051-1)에 방송 수신부(1052-1), 영상 입력부(1053-1), 음성 입력부(1054-1), 영상 출력부(1055-1), 음성 출력부(1056-1), 조작 패널부(1057-1), 리모콘(원격 조작) 수광부(1058-1), 네트워크 접속부(1059-1) 및 표시 구동부(1061-1)가 접속되고, 표시 구동부(1061-1)에 액정 표시부(1062-1)가 접속된 것이다.
방송 수신부(1052-1), 영상 입력부(1053-1), 음성 입력부(1054-1)는 방송 신호를 수신하고, 또는 정보 처리 장치(1001)의 외부로부터 영상 신호 및 음성 신호를 입력하고, 각각 소정 포맷의 디지털 데이터로 변환하여, 정보 처리 컨트롤러(1011)에서의 처리를 위해 버스(1051-1)로 송출하는 것이며, 영상 출력부(1055-1) 및 음성 출력부(1056-1)는 정보 처리 컨트롤러(1011)로부터 버스(1051-1)로 송출된 영상 데이터 및 음성 데이터를 처리하여, 디지털 데이터인 채로 또는 아날로그 신호로 변환하여, 정보 처리 장치(1001)의 외부로 송출하는 것이고, 리모콘 수광부(1058-1)는 리모콘 송신기(1063-1)로부터의 리모콘 적외선 신호를 수신하는 것이다.
또한, 액정 표시부(1062-1)는 하드 디스크 레코더인 정보 처리 장치(1001)의 조작 상황 등을 표시할 뿐만 아니라, 후술하는 바와 같이 네트워크(1009)의 접속 상황이나 네트워크 시스템 전체의 상태를 표시하는 것이다.
도 33의 예의, 정보 처리 컨트롤러(1012)를 구비하는 정보 처리 장치(1002)도 하드 디스크 레코더이며, 도 34에 있어서 괄호내에 참조 번호를 부여하여 나타내는 바와 같이, 정보 처리 장치(1001)와 마찬가지로 구성된 것이다.
각각 하드 디스크 레코더인 정보 처리 장치(1001, 1002)의 소프트웨어 구성으로서는, 제어 프로그램으로서 도 6에 도시한 것처럼, MS 매니저 및 능력 교환 프로그램을 구비하고, 기능 프로그램으로서 영상 음성 기록, 영상 음성 재생, 소재 검색, 방송 녹화 예약 등을 위한 프로그램을 구비하며, 디바이스 드라이버로서 방송 수신, 영상 입력, 음성 입력, 영상 출력, 음성 출력, 외부 기록부 입출력, 네트워크 입출력 등을 위한 프로그램을 구비한다.
도 33의 예의, 정보 처리 컨트롤러(1013)를 구비하는 정보 처리 장치(1003)는 텔레비젼 수신 장치이며, 도 35에 도시하는 바와 같이, 하드웨어 구성으로서는, 도 22에 도시한 외부 기록부(1031-5)로서 메모리 카드 디스크를 장착 가능할 뿐만 아니라, 정보 처리 컨트롤러(1013)의 버스(1032-3)에 접속된 버스(1066)에 방송 수신부(1067), 영상 출력부(1068), 음성 출력부(1069), 조작 패널부(1071), 리모콘 수광부(1072), 네트워크 접속부(1073) 및 LED(발광 다이오드; Luminescent Diode) 구동부(1070)가 접속되고, 영상 출력부(1068)에 액정 디스플레이나 플라스마 디스플레이 등의 영상 표시부(1074)가 접속되고, 음성 출력부(1069)에 좌우의 스피커(1075, 1076)가 접속되며, LED 구동부(1070)에 LED(1077)가 접속된 것이다.
방송 수신부(1067)는 방송 신호를 수신하고, 그 영상 신호 및 음성 신호를 각각 소정 포맷의 디지털 데이터로 변환하여, 정보 처리 컨트롤러(1013)에서의 처리를 위해 버스(1066)로 송출하는 것이며, 영상 출력부(1068)는 정보 처리 컨트롤러(1013)로부터 버스(1066)로 송출된 영상 데이터를 처리하여 영상 표시부(1074)로 출력하는 것이고, 음성 출력부(1069)는 정보 처리 컨트롤러(1013)로부터 버스 (1066)로 송출된 음성 데이터를 처리하여 스피커(1075, 1076)로 출력하는 것이며, 리모콘 수광부(1072)는 리모콘 송신기(1078)로부터의 리모콘 적외선 신호를 수신하는 것이다.
또한, LED(1077)는, 후술하는 바와 같이 네트워크(1009)의 접속 상황이나 네트워크 시스템 전체의 상태를 표시하는 것이다.
또, 도 22에서는 내부를 생략한 정보 처리 컨트롤러(1013)는 메인 프로세서(1021-3), 서브 프로세서(1023-7, 1023-8, 1023-9), DMAC(Direct Memory Access Controller)(1025-3), DC(Disc Controller)(1030-5) 및 버스(1032-3)를 구비하고, 그 메인 프로세서(1021-3)는 LS(Local Storage)(1022-3)를 갖고, 각 서브 프로세서(1023-7, 1023-8, 1023-9)는 LS(Local Storage)(1024-7, 1024-8, 1024-9)를 갖는다.
텔레비젼 수신 장치인 정보 처리 장치(1003)의 소프트웨어 구성으로서는, 제어 프로그램으로서 도 6에 도시한 바와 같이, MS 매니저 및 능력 교환 프로그램을 구비하고, 기능 프로그램으로서 영상 음성 처리 등의 프로그램을 구비하고, 디바이스 드라이버로서 방송 수신, 영상 출력, 음성 출력, 네트워크 입출력 등을 위한 프로그램을 구비한다.
도 33의 예의, 정보 처리 컨트롤러(1014)를 구비하는 정보 처리 장치(1004)는 포터블 CD 플레이어이며, 도 36에 도시하는 바와 같이, 하드웨어 구성으로서는, 도 22에 도시한 외부 기록부(1031-6)로서 CD(Compact Disc)를 장착 가능할 뿐만 아니라, 정보 처리 컨트롤러(1014)의 버스(1032-4)에 접속된 버스(1081)에 표시 구동 부(1086), 음성 출력부(1083), 조작 버튼부(1084) 및 네트워크 접속부(1085)가 접속되며, 표시 구동부(1086)에 액정 표시부(1082)가 접속된 것이다.
액정 표시부(1082)는 포터블 CD 플레이어인 정보 처리 장치(1004)의 선곡 조작용으로 곡명 등을 표시할 뿐만 아니라, 후술하는 바와 같이 네트워크(1009)의 접속 상황이나 네트워크 시스템 전체의 상태를 표시하는 것이다.
또, 도 22에서는 내부를 생략한 정보 처리 컨트롤러(1014)는 메인 프로세서(1021-4), 서브 프로세서(1023-10, 1023-11, 1023-12), DMAC(Direct Memory Access Controller)(1025-4), DC(Disc Controller)(1030-4) 및 버스(1032-4)를 구비하고, 그 메인 프로세서(1021-4)는 LS(Local Storage)(1022-4)를 갖고, 각 서브 프로세서(1023-10, 1023-11, 1023-12)는 LS(Local Storage)(1024-10, 1024-11, 1024-12)를 갖는다.
포터블 CD 플레이어인 정보 처리 장치(1004)의 소프트웨어 구성으로서는, 제어 프로그램으로서 도 6에 도시한 바와 같이, MS 매니저 및 능력 교환 프로그램을 구비하고, 기능 프로그램으로서 음악 재생 등을 위한 프로그램을 구비하며, 디바이스 드라이버로서 음성 출력, CD 제어, 네트워크 입출력 등을 위한 프로그램을 구비한다.
이상과 같은 도 33의 예의 네트워크 시스템은, 외관상은 도 37과 같이 구성된다.
각각 하드 디스크 레코더인 정보 처리 장치(1001, 1002)에는, 정면부에 상기의 액정 표시부(1062-1, 1062-2)가 설치되며, 텔레비젼 수신 장치인 정보 처리 장 치(1003)에는 영상 표시부(1074)의 좌우에 스피커(1075, 1076)가 설치되고, 스피커(1075, 1076)의 주변에 상기의 LED(1077)가 설치되며, 포터블 CD 플레이어인 정보 처리 장치(1004)에는 상기의 액정 표시부(1082)가 설치된다. LED(1077)는, 후술하는 바와 같이 복수의 LED로 이루어지는 것이다.
이와 같은 도 33∼도 37의 예의 시스템에 있어서, 정보 처리 장치(1001, 1003, 1004)가 네트워크(1009)에 접속되어, 정보 처리 장치(1001)가 마스터 장치(MS 스테이터스=0)로 설정되고, 정보 처리 장치(1003, 1004)가 슬레이브 장치(MS 스테이터스=1)로 설정되어 있는 것으로 한다.
이 상태에서, 새롭게 정보 처리 장치(1002)가 네트워크(1009)에 접속되면, 상술한 방법에 의해, 정보 처리 장치(1002)내의 정보 처리 컨트롤러(1012)에 포함되는 메인 프로세서(1021-2)에서 실행되는 MS 매니저는, 다른 정보 처리 장치(1001, 1003, 1004)에 MS 스테이터스를 조회하여, 정보 처리 장치(1001)가 이미 마스터 장치로서 존재하는 것을 인식하고, 자장치(정보 처리 장치(1002))를 슬레이브 장치(MS 스테이터스=1)로 설정한다. 또한, 마스터 장치로 설정되어 있는 정보 처리 장치(1001)는 새롭게 추가된 정보 처리 장치(1002)를 포함하는 각 정보 처리 장치의 장치 정보를 수집하여, 메인 메모리(1026-1)내의 장치 정보 테이블을 갱신한다.
이러한 상태에서, 사용자에 의해 슬레이브 장치인 정보 처리 장치(텔레비젼 수신 장치)(1003)에서 2시간의 방송 프로그램의 녹화 예약의 조작이 행해진 경우를 나타낸다.
이 경우, 슬레이브 장치인 정보 처리 장치(1003)는 사용자로부터 녹화 개시 시각, 녹화 종료 시각, 녹화 대상 방송 체널, 녹화 품질 등의 정보를 포함하는 녹화 예약 정보의 입력을 접수하여, 당해 녹화 예약 정보 및 DMA 커맨드으로서의 녹화 예약 커맨드를 포함하는 소프트웨어 셀을 생성하고, 마스터 장치인 정보 처리 장치(하드 디스크 레코더)(1001)에 송신한다.
DMA 커맨드가 녹화 예약 커맨드인 소프트웨어 셀을 수신한 정보 처리 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는 녹화 예약 커맨드를 판독할 뿐만 아니라, 메인 메모리(1026-1)내의 장치 정보 테이블을 참조하여, 당해 녹화 예약 커맨드를 실행 가능한 정보 처리 장치를 특정한다.
우선, 메인 프로세서(1021-1)는 장치 정보 테이블에 포함되는 각 정보 처리 장치(1001, 1002, 1003, 1004)의 정보 처리 장치 종목 ID를 판독하여, 녹화 예약 커맨드에 대응하는 기능 프로그램을 실행 가능한 정보 처리 장치를 추출한다. 여기에서는, 녹화 기능을 나타내는 정보 처리 장치 종별 ID를 갖는 정보 처리 장치(1001, 1002)가 후보 장치로서 특정되고, 정보 처리 장치(1003, 1004)는 후보 장치로부터 제외된다.
다음으로, 마스터 장치인 정보 처리 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는 장치 정보 테이블을 참조하여, 정보 처리 장치(1001, 1002)의 메인 프로세서 또는 서브 프로세서의 처리 능력, 메인 메 모리에 관한 정보 등의, 장치에 관한 정보를 판독하여, 정보 처리 장치(1001, 1002)가 녹화 예약 커맨드에 대응하는 기능 프로그램의 실행에 필요한 요구 스펙을 만족하는지의 여부를 판단한다. 여기에서는, 정보 처리 장치(1001, 1002)가 모두 녹화 예약 커맨드에 대응하는 기능 프로그램의 실행에 필요한 요구 스펙을 만족하는 것으로 한다.
또한, 메인 프로세서(1021-1)는 장치 정보 테이블을 참조하여, 정보 처리 장 치(1001, 1002)의 외부 기록부에 관한 정보를 판독하여, 외부 기록부의 빈 용량 이 당해 녹화 예약 커맨드의 실행에 필요한 용량을 만족하는지의 여부를 판단한다. 정보 처리 장치(1001, 1002)는 하드 디스크 레코더이므로, 각각 하드 디스크(1031-1, 1031-3)의 총용량과 사용량의 차분이, 각각의 빈 용량에 상당한다.
이 경우, 정보 처리 장치(1001)의 하드 디스크(1031-1)의 빈 용량이 녹화 시간으로 환산하여 10분이고, 정보 처리 장치(1002)의 하드 디스크(1031-3)의 빈 용량이 녹화 시간으로 환산하여 20시간이라고 한다.
이 때, 마스터 장치인 정보 처리 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는, 당해 녹화 예약 커맨드의 실행에 필요한 2시간분의 빈 용량을 확보할 수 있는 정보 처리 장치를 실행 요구처 슬레이브 장치로서 특정한다.
그 결과, 정보 처리 장치(1002)만이 실행 요구처 슬레이브 장치로서 선택되고, 마스터 장치인 정보 처리 장치(1001)내의 정보 처리 컨트롤러(1011)에 포함되는 메인 프로세서(1021-1)는, 사용자에 의해 조작된 정보 처리 장치(1003)로부터 송신된 녹화 예약 정보를 포함하는 당해 녹화 예약 커맨드를 정보 처리 장치(1002)에 송신하여, 상기 2시간의 방송 프로그램의 녹화 예약의 실행을 요구한다.
정보 처리 장치(1002)내의 정보 처리 컨트롤러(1012)에 포함되는 메인 프로세서(1021-2)는 당해 녹화 예약 커맨드를 해석하고, 녹화에 필요한 기능 프로그램을 외부 기록부인 하드 디스크(1031-3)로부터 메인 메모리(1026-2)로 로드하여, 녹화 예약 정보에 따라 녹화를 실행한다. 그 결과, 녹화 예약된 2시간의 방송 프로그램의 영상 음성 데이터가 정보 처리 장치(1002)의 하드 디스크(1031-3)에 기록된다.
이와 같이, 도 33∼도 37의 예의 네트워크 시스템에 있어서도, 사용자는 1대의 정보 처리 장치만을 조작함으로써, 다른 정보 처리 장치를 조작하는 일 없이, 복수의 정보 처리 장치(1001, 1002, 1003, 1004)를 가상적인 1대의 정보 처리 장치(1007)로서 동작시킬 수가 있다.
[6. 네트워크 시스템의 상황의 제시 그 2]
상술한 시스템에서는, 사용자는 시스템의 외관 등으로부터, 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것이나 연계 동작중인 것 등을 용이하게 알 수 없다.
따라서, 본 발명에서는, 이하에 나타내는 바와 같이 네트워크 시스템을 구성하고 있는 것이나 연계 동작중인 것 등을, 시스템의 외관 등으로부터 사용자가 용이하면서도 확실하게 알 수 있도록 한다.
(6-1. 시스템 구성)
도 33∼도 37의 예의 시스템에서는, 도 37에 도시하는 바와 같이, 각각 하드 디스크 레코더인 정보 처리 장치(1001, 1002)에는 액정 표시부(1062-1, 1062-2)를 설치하며, 텔레비젼 수신 장치인 정보 처리 장치(1003)에는 LED(1077)를 설치하고, 포터블 CD 플레이어인 정보 처리 장치(1004)에는 액정 표시부(1082)를 설치한다. LED(1077)로써는, 예를 들면, 녹색 LED, 적색 LED 및 청색 LED를 스피커(1075, 1076)의 주변에 복수 배치한다.
또한, 각 정보 처리 장치(1001, 1002, 1003, 1004)는, 각각 일시(일자 및 시각)를 계측하는 기능을 구비할 뿐만 아니라, 네트워크(1009)를 통해 접속된 정보 처리 장치의 사이에서는 마스터 장치로 설정되어 있는 정보 처리 장치에 의해, 각각의 일시가 일치하도록 제어되는 것으로 한다.
정보 처리 장치(1001, 1002, 1003, 1004)의 소프트웨어 구성으로서는, 도 38에 도시하는 바와 같이, 제어 프로그램으로서, 도 6에 도시한 MS 매니저 및 능력 교환 프로그램 외에 접속 매니저를 준비하고, 기능 프로그램 및 디바이스 드라이브로서 상술한 바와 같이 각 정보 처리 장치에 부합하는 것을 준비한다.
접속 매니저는 MS 매니저에 의한 MS 스테이터스(마스터 장치에서는 O, 슬레이브 장치에서는 1)의 설정후의, 능력 교환 프로그램에 의한 능력 교환(마스터 장치 및 슬레이브 장치에서의 자장치 및 타장치의 장치 정보의 취득)후, 기동시키는 것으로, 능력 교환에 의해 얻어진 장치 정보를 기초로, 제시용 정보로서 점멸 표시용 정보를 생성하고, 그 점멸 표시용 정보에 의해 각 정보 처리 장치의 제시용의 발광 표시부, 즉 도 33∼도 37의 예에서는, 정보 처리 장치(1001, 1002)의 액정 표시부(1062-1, 1062-2), 정보 처리 장치(1003)의 LED(1O77) 및 정보 처리 장치(1004)의 액정 표시부(1082)를 점멸 표시시켜, 네트워크(1009)의 접속 상황이나 네 트워크 시스템 전체의 상태를 사용자에게 제시하는 것이다.
접속 상황 등의 제시용의 장치 정보는, 예를 들면, 도 15에 나타낸 바와 같이, 도 4에 나타낸 정보 처리 장치 ID 이하의 각 정보로부터, 서브 프로세서수나 서브 프로세서 스테이터스 등의, 서브 프로세서에 관한 정보를 제외하고, 필요에 따라, 이에 특기 상세 정보를 추가한 것으로 한다.
특기 상세 정보는 네트워크(1009)에 접속되어 있는 정보 처리 장치의 대수를 나타내는 정보나, 2대 이상의 정보 처리 장치가 네트워크(1009)에 접속되어 있는 경우에, 그 복수의 정보 처리 장치가 연계 동작중인 것을 나타내는 정보 등이며, 도 15에 나타낸 장치 정보 이외의 장치 정보로부터 생성한다.
이 제시용의 장치 정보로부터 생성하는 점멸 표시용 정보는, 예를 들면, 도 16에 나타낸 바와 같이 점멸 개시 일시, 점멸 종료 일시, 표시색, 점멸 주기, 점멸 시간 비율, 광량 변화, 점멸 위상 및 확장 정보로 이루어지는 것으로 한다.
점멸 개시 일시 및 점멸 종료 일시는, 도 17에 나타낸 바와 같은 시각 ts로부터 시각 te까지 사이의 기간, 점멸 표시하는 것을 지시하는 것이다. 단, 점멸 종료 일시 대신에, 점멸 개시 일시로부터 10초간과 같이, 점멸 기간의 시간폭을 지시하도록 하여도 된다.
표시색(점등색)은 제1에 녹색, 제2에 적색, 제3에 청색과 같이, 복수의 색에서, 후술하는 바와 같이 1개를 선택하여 지정한다.
점멸 주기는, 도 17에 나타낸 바와 같이 1회의 점등 시간과 1회의 소등 시간의 합으로, 제1에 1.0초, 제2에 O.5초와 같이 복수 가지로부터, 후술하는 바와 같 이 1개를 선택하여 지정한다.
점멸 시간 비율은 1회의 점등 시간과 1회의 소등 시간과의 비율로, 제1에 50:50, 제2에 30:70과 같이 복수 가지로부터, 후술하는 바와 같이 1개를 선택하여 지정한다.
광량 변화는 점등 시간내에서 점등 광량을 변화시킬지의 여부를 나타내는 것으로, 제1에는 도 17에 있어서 즉시 모드나 위상 시프트 모드로서 나타낸 바와 같이, 점등 광량이 일정한 광량 일정 모드로 하고, 제2에는 도 17에 있어서 광량 변화 모드로서 나타낸 바와 같이, 1점멸 주기내에서 광량이 최대치에서 제로까지 점감한 후, 제로에서 최대치까지 점증하는 광량 변화 모드로 하여, 이들 광량 일정 모드 및 광량 변화 모드 중에서, 후술하는 바와 같이 1개를 선택하여 지정한다.
단, 도 17에 나타낸 바와 같은 광량 변화 모드에서는, 실제상, 광량 제로인 소등 시간이 일순으로 되어, 상기의 점멸 시간 비율은 50:50과 같은 비율로 되지는 않지만, 광량 변화 모드에서는 광량이 최대치에서 제로까지 점감하는 기간을 소등 기간, 광량이 제로에서 최대치까지 점증하는 기간을 점등 기간으로, 또는, 광량이 최대치의 1/2 이상인 기간을 점등 기간, 광량이 최대치의 1/2 미만인 기간을 소등 기간으로 하여 점멸 시간 비율을 정의할 뿐만 아니라, 예를 들면, 그 점멸 시간 비율을 50:50으로 고정한다.
도 16의 점멸 표시용 정보중의 점멸 위상은, 상기한 바와 같이 지정한 점멸 개시 일시로부터 바로 점멸 표시할지, 어느 시간 늦추어 점멸 표시할지를 지시하는 것으로, 예를 들면, 도 17에 나타낸 바와 같은, 즉시 모드(지연 시간은 제로), 제1 위상 시프트 모드(D1)(지연 시간은 1점멸 주기의 1/4의 시간(d1)), 제2 위상 시프트 모드(D2)(지연 시간은 1점멸 주기의 1/2의 시간(d2)) 및 제3 위상 시프트 모드(D3)(지연 시간은 1점멸 주기의 3/4의 시간(d3)) 중에서, 후술하는 바와 같이 각 정보 처리 장치에 대해 선택한다.
점멸 표시용 정보 중의 확장 정보는,
(w) 네트워크(1009)에 접속되어 있는 정보 처리 장치의 대수에 따라, 도 17의 시각 ts로부터 시각 te까지의 점멸 기간내의 점멸 횟수를 지시하고,
(x) 표시색으로서 미리 사용자가 지정한 복수색, 또는 접속 매니저가 랜덤하게 선택한 복수색을 사용하고, 사용자가 지정한 색 순서, 또는 접속 매니저가 랜덤하게 결정한 색 순서로, 점멸 표시하는 것을 지시하는,
등이다.
상술한 시스템에서는, 점멸 표시의 표시색에 대해 사용자가 미리,
(a) 특정의 1색을 지정하는,
(b) 1색을 지정하지만, 색의 선택은 시스템(접속 매니저)에 맡긴다,
(c) 특정의 복수색을 지정하고, 색 순서도 지정하는,
(d) 특정의 복수색을 지정하지만, 색 순서의 결정은 시스템에 맡긴다,
(e) 2색 이상의 색수를 지정하지만, 색의 선택 및 색 순서의 결정은 시스템에 맡긴다,
라고 하는 설정을 선택적으로 행할 수 있도록, 시스템을 구성한다.
(a) 또는 (b)의 경우에는, 접속 매니저는 도 16의 점멸 표시용 정보 중의 표 시색으로서 사용자가 지정한 특정의 색, 또는 자신이 랜덤하게 선택한 색을 기술하지만, (c), (d) 및 (e)의 경우에는, 접속 매니저는 도 16의 점멸 표시용 정보 중의 확장 정보로서 상기 (x)와 같이, 사용자가 지정, 또는 자신이 랜덤하게 선택 결정한 복수색 및 색 순서를 기술한다.
(6-2. 제시 방법)
상술한 바와 같이, 정보 처리 장치(1001, 1003, 1004)가 네트워크(1009)에 접속되어, 정보 처리 장치(1001)가 마스터 장치로 설정되고, 정보 처리 장치(1003, 1004)가 슬레이브 장치로 설정되어 있는 상태에서, 새롭게 정보 처리 장치(1002)가 네트워크(1009)에 접속된 경우에 대해, 상술한 점멸 표시용 정보의 생성 및 이에 따른 점멸 표시의 방법을 나타낸다.
이 때, 상술한 바와 같이, 새롭게 추가된 정보 처리 장치(1002)는 자장치를 슬레이브 장치로 설정할 뿐만 아니라, 마스터 장치로 설정되어 있는 정보 처리 장치(1001)는 새롭게 추가된 정보 처리 장치(1002)를 포함하는 각 정보 처리 장치의 장치 정보를 수집하여, 메인 메모리(1026-1)내의 장치 정보 테이블을 갱신한다.
또한, 그 후, 각 정보 처리 장치(1001, 1002, 1003, 1004)의 메인 프로세서(1021)는 접속 매니저를 기동하여 도 39에 나타내는 바와 같은 제시 처리를 실행한다.
즉, 능력 교환(장치 정보 테이블의 갱신)후, 슬레이브 장치로 설정되어 있는 정보 처리 장치(1002, 1003, 1004) 및 마스터 장치로 설정되어 있는 정보 처리 장치(1001)는, 각각 단계 1101 및 1111에서 접속 매니저를 기동한다.
다음으로, 슬레이브 장치로 설정되어 있는 정보 처리 장치(1002, 1003, 1004)는, 각각 단계 1102에서, 마스터 장치로 설정되어 있는 정보 처리 장치(1001)에 대해서 제시용 정보 요구 커맨드를 송신한다.
이 제시용 정보 요구 커맨드는, 도 19a에 나타낸 바와 같이, 송신원 ID(이 경우는 정보 처리 장치(1002, 1003 또는 1004)의 정보 처리 장치 ID), 송신처 ID(이 경우는 정보 처리 장치(1001)의 정보 처리 장치 ID) 및 리스판스처 ID(이 경우는 정보 처리 장치(1002, 1003 또는 1004)의 정보 처리 장치 ID)를 갖고, DMA 커맨드으로서 제시용 정보 요구 커맨드 본체를 포함하는 것으로 한다.
도 39에 나타내는 바와 같이, 마스터 장치로 설정되어 있는 정보 처리 장치(1001)는 단계 1113에서, 이 제시용 정보 요구 커맨드를 수신하고, 단계 1114로 더 진행하여, 메인 메모리(1026-1)내의 자장치(정보 처리 장치(1001)) 및 타장치(정보 처리 장치(1002, 1003, 1004))의 장치 정보 테이블내의, 각각 도 15에 나타낸 바와 같은 장치 정보로부터 각각 제시용 정보로서 자장치 및 타장치의 각각에 대한 도 16에 나타낸 바와 같은 점멸 표시용 정보를 생성한다.
다음으로, 마스터 장치로 설정되어 있는 정보 처리 장치(1001)는 단계 1115에서, 그 생성한 타장치(정보 처리 장치(1002, 1003, 1004))의 각각에 대한 점멸 표시용 정보를 제시용 정보 회신 커맨드에 의해 타장치의 각각에 대해 송신한다.
이 제시용 정보 회신 커맨드는, 도 19b에 도시한 바와 같이, 송신원 ID(이 경우는 정보 처리 장치(1001)의 정보 처리 장치 ID), 송신처 ID(이 경우는 정보 처리 장치(1002, 1003 또는 1004)의 정보 처리 장치 ID) 및 리스판스처 ID(이 경우는 정보 처리 장치(1002, 1003 또는 1004)의 정보 처리 장치 ID)를 갖고, DMA 커맨드으로서 제시용 정보 회신 커맨드 본체 및 생성한 점멸 표시용 정보를 포함하는 것으로 한다.
도 39에 나타내는 바와 같이, 마스터 장치로 설정되어 있는 정보 처리 장치(1001)는 다음으로 단계 1116에서, 자장치에 대한 점멸 표시용 정보를 자장치의 점멸 표시 모듈에 송신하고, 단계 1117으로 더 진행하여, 그 점멸 표시 모듈에 의해 점멸 표시를 행한다.
한편, 슬레이브 장치로 설정되어 있는 정보 처리 장치(1002, 1003, 1004)는, 각각, 단계 1106에서, 자장치앞의 제시용 정보 송신 커맨드를 수신하여, 거기에 포함되는 자장치에 대한 점멸 표시용 정보를 자장치의 점멸 표시 모듈에 송신하고, 단계 1107로 더 진행하여, 그 점멸 표시 모듈에 의해 점멸 표시를 행한다.
정보 처리 장치(1001, 1002, 1003, 1004)의 점멸 표시 모듈은, 각각, 점멸 표시용 프로그램 및 발광 표시부(하드웨어부)에 의해 구성되며, 정보 처리 장치(1001, 1002, 1003, 1004)에서는, 각각, 그 점멸 표시용 프로그램에 의해 점멸 표시용 정보가 해석 처리되어 그 발광 표시부가 점멸 표시된다.
발광 표시부는 정보 처리 장치(1001)에서는 도 34 및 도 37에 도시한 액정 표시부(1062-1)이고, 정보 처리 장치(1002)에서는 도 34 및 도 37에 도시한 액정 표시부(1062-2)이며, 정보 처리 장치(1003)에서는 도 35 및 도 37에 도시한 LED(1077)이며, 정보 처리 장치(1004)에서는 도 36 및 도 37에 도시한 액정 표시부(1082)이다.
(6-3. 제시 형태)
이하에, 각종 경우에 있어서 생성되는 점멸 표시용 정보의 내용 및 각종 경우에서의 점멸 표시의 형태를 나타낸다.
〈6-3-1〉
제1은 도 15에 나타낸 제시용의 장치 정보로서 특기 상세 정보를 기술하지 않으면서, 도 16에 나타낸 점멸 표시용 정보로서 확장 정보를 기술하지 않으며, 모든 정보 처리 장치에 대해, 예를 들면, 표시색은 녹색, 점멸 주기는 1.0초, 점멸 시간 비율은 50:50, 광량 변화는 없음(광량 일정), 점멸 위상은 즉시(시간 지연 없음)로 하는 경우이다.
이 경우에는, 정보 처리 장치(1001)에서 액정 표시부(1062-1)의 표시 화면 전체가 녹색으로 점멸하고, 정보 처리 장치(1002)에서는 액정 표시부(1062-2)의 표시 화면 전체가 녹색으로 점멸하고, 정보 처리 장치 장치(1003)에서는 LED(1077) 중의 녹색 LED가 점멸하고, 정보 처리 장치(1004)에서는 액정 표시부(1082)의 표시 화면 전체가 녹색으로 점멸한다.
따라서, 사용자는 시스템의 외관으로부터 정보 처리 장치(1001, 1002, 1003, 1004)가 네트워크 시스템을 구성하고 있는 것을 용이하면서도 확실하게 알 수 있다.
〈6-3-2〉
제2는 마스터 장치로 설정되어 있는 정보 처리 장치와 슬레이브 장치로 설정되어 있는 정보 처리 장치에서, 점멸 주기 또는 표시색을 바꾸는 경우이다.
상술한 예에서는, 정보 처리 장치(1001)가 마스터 장치로 설정되고 정보 처리 장치(1002, 1003, 1004)가 슬레이브 장치로 설정되어 있으므로, (2a) 표시색은 같은 색, 예를 들면 녹색으로 하고, 정보 처리 장치(1001)에 대해서는 점멸 주기를 0.5초로 하고, 정보 처리 장치(1002, 1003, 1004)에 대해서는 점멸 주기를 1.0초로 하는, (2b) 점멸 주기는 동일한 시간, 예를 들면 1.0초로 하고, 정보 처리 장치(1001)에 대해서는 표시색을 적색으로 하고, 정보 처리 장치(1002, 1003, 1004)에 대해서는 표시색을 녹색으로 하는, (2c) 정보 처리 장치(1001)에 대해서는 점멸 주기를 0.5초, 표시색을 적색으로 하고, 정보 처리 장치(1002, 1003, 1004)에 대해서는 점멸 주기를 1.0초, 표시색을 녹색으로 하는, 등이다.
이에 따르면, 사용자는 시스템의 외관으로부터 정보 처리 장치(1001, 1002, 1003, 1004)가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 정보 처리 장치(1001)가 마스터 장치로 설정되고, 정보 처리 장치(1002, 1003, 1004)가 슬레이브 장치로 설정되어 있는 것을, 용이하면서도 활실하게 알 수 있다.
〈6-3-3〉
제3은 점멸 위상을 각 정보 처리 장치의 정보 처리 장치 ID의 순서로 늦추는 경우이다. 즉, 상기의 예에서, 정보 처리 장치 ID를 수치로 치환했을 때, 예를 들면, 정보 처리 장치(1001)의 다음 순위가 정보 처리 장치(1002), 정보 처리 장치(1002)의 다음 순위가 정보 처리 장치(1003), 정보 처리 장치(1003)의 다음 순위가 정보 처리 장치(1004)가 되는(보다 큰 것이 없을 때에는 최소의 것으로 돌아간다) 것으로 하면, 정보 처리 장치(1001)에 대해서는 도 17에 나타낸 바와 같은 즉시 모 드로 하고, 정보 처리 장치(1002)에 대해서는 도 17에 나타낸 바와 같은 제1 위상 시프트 모드(D1)로 하고, 정보 처리 장치(1003)에 대해서는 도 17에 나타낸 바와 같은 제2 위상 시프트 모드(D2)로 하고, 정보 처리 장치(1004)에 대해서는 도 17에 나타낸 바와 같은 제3 위상 시프트 모드(D3)로 한다.
이에 따르면, 사용자는 시스템의 외관으로부터 정보 처리 장치(1001, 1002, 1003, 1004)가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 각 정보 처리 장치의 순서를 용이하면서도 확실하게 알 수 있다.
〈6-3-4〉
제4는 도 15에 나타낸 제시용의 장치 정보 중에, 특기 상세 정보로서 네트워크(1009)에 접속되어 있는 정보 처리 장치의 대수를 기술하고, 도 16에 나타낸 점멸 표시용 정보 중에 확장 정보로서 상기 (w)와 같이 점멸 기간내의 점멸 횟수를 기술하는 경우이다.
상기의 예에서는, 4대의 정보 처리 장치(1001, 1002, 1003, 1004)가 네트워크(1009)에 접속되어 있기 때문에, 예를 들면, 각각의 정보 처리 장치(1001, 1002, 1003, 1004)에 대해, 도 17의 시각 ts로부터 시각 te까지의 점멸 기간내에 있어서, 4회 점멸시킨 후, 1회분(1점멸 주기)은 점멸을 휴지하여 소등 상태로 하는 패턴으로, 각각의 정보 처리 장치(1001, 1002, 1003, 1004)를 점멸시킨다.
이에 따르면, 사용자는 시스템의 외관으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 몇대의 정보 처리 장치가 네트워크(1009)에 접속되어 있는지를, 용이하면서도 확실하게 알 수 있다.
〈6-3-5〉
제5는 도 16에 나타낸 점멸 표시용 정보 중에, 확장 정보로서 상기 (x)와 같이, 사용자가 지정, 또는 시스템(마스터 장치로 설정되어 있는 정보 처리 장치(1001)의 접속 매니저)이 랜덤하게 선택 결정한 복수색 및 색 순서를 기술하는 경우이다.
이 경우, 상기의 예에서는, 예를 들면, 정보 처리 장치(1001)가 적색으로, 정보 처리 장치(1002)가 녹색으로, 정보 처리 장치(1003)가 청색으로, 정보 처리 장치(1004)가 황색으로, 각각 점멸한다.
이에 따르면, 사용자는 시스템의 외관으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 몇대의 정보 처리 장치가 네트워크(1009)에 접속되어 있는지 등을, 용이하면서도 확실하게 알 수 있다.
또, 정보 처리 장치(1003)에서는, 예를 들면, 도 37에 도시한 LED(1077) 중의 녹색 LED 및 적색 LED를 근접하여 배치하고, 그 녹색 LED 및 적색 LED를 동시에 점멸시킴으로써, 정보 처리 장치(1003)를 황색으로 점멸시킬 수 있다.
〈6-3-6〉
제6은 도 15에 나타낸 제시용의 장치 정보 중에, 특기 상세 정보로서 네트워크 시스템이 연계 동작중인 것을 기술하고, 그것을 도 16에 나타낸 점멸 표시용 정보 중의 어느 하나의 항목에 반영시키는 경우이다.
예를 들면, 상술한 바와 같이, 정보 처리 장치(1001, 1003, 1004)가 네트워크(1009)에 접속되어 있는 상태에서, 새롭게 정보 처리 장치(1002)가 네트워크 (1009)에 접속되었을 때, 사용자가 정보 처리 장치(1003)에서 행한 조합에 따른 처리가, 정보 처리 장치(1001, 1003, 1004)에서 실행되고 있는 경우는, 당해 네트워크 시스템은 연계 동작중이다.
그리고, 예를 들면, 이와 같이 연계 동작중인 경우는 표시색을 청색으로 하고, 연계 동작중이 아닌 경우는 표시색을 녹색으로 한다. 또는, 예를 들면, 연계 동작중인 경우는 점멸 주기를 O.5초로 하고, 연계 동작중이 아닌 경우는 점멸 주기를 1.0초로 한다.
이에 따르면, 사용자는 시스템의 외관으로부터 복수의 정보 처리 장치가 네트워크 시스템을 구성하고 있는 것 뿐만이 아니라, 실제로 연계 동작중인지의 여부를 용이하면서도 확실하게 알 수 있다.
〈6-3-7〉
제7은 도 15에 나타낸 제시용의 장치 정보 중의, 메인 프로세서, 메인 메모리 또는 외부 기록부에 관한 정보를, 도 16에 나타낸 점멸 표시용 정보 중의 어느 하나의 항목에 반영시키는 경우이다.
예를 들면, 메인 프로세서 사용율이 일정치 이상이 되어 있는 정보 처리 장치에 대해서는, 사용자에게 주의를 환기하기 위해 점멸 주기를 통상의 1.0초의 1/2인 0.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
또한, 메인 메모리 총용량과 메인 메모리 사용량으로부터 메인 메모리 사용율을 산출하고, 이 메인 메모리 사용율이 일정치 이상이 되어 있는 정보 처리 장치에 대해서는, 사용자에 주의를 환기하기 위해 점멸 주기를 통상의 1.0초의 1/2인 O.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
또한, 외부 기록부 종별 ID로부터 외부 기록부로서 하드 디스크가 이용되고 있는지의 여부를 판단하고, 하드 디스크가 이용되고 있는 정보 처리 장치(상기의 예에서는 정보 처리 장치(1001, 1002))에 대해서는 그 하드 디스크의 총용량과 사용량으로부터 사용율을 산출하여, 이 하드 디스크 사용율이 일정치 이상이 되어 있는 정보 처리 장치에 대해서는, 사용자에 주의를 환기하기 위해 점멸 주기를 통상의 1.0초의 것 1/2인 O.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
또, 메인 프로세서 사용율, 메인 메모리 사용율, 또는 하드 디스크 사용율이 높을수록 점멸 주기를 짧게 하도록, 메인 프로세서 사용율, 메인 메모리 사용율, 또는 하드 디스크 사용율에 따라 점멸 주기를 연속적으로 변화시켜도 된다.
〈6-3-8〉
제8은 네트워크에 접속되어 있는 정보 처리 장치에 이상이나 문제가 있는 경우, 도 15에 나타낸 제시용의 장치 정보 중에, 특기 상세 정보로서 그것을 기술하고, 그것을 도 16에 나타낸 점멸 표시용 정보 중의 어느 하나의 항목에 반영시키는 경우이다.
이 경우, 네트워크에 접속되어 있는 각 정보 처리 장치, 또는 이상이나 문제가 있는 정보 처리 장치에 대해, 사용자에게 주의를 환기하기 위하여 점멸 주기를 통상의 1.0초 보다 짧은 O.5초로 하고, 또는 표시색을 통상의 녹색이 아니라 적색으로 한다.
〈다른 제시 형태〉
상술한 제시 형태 이외에, 또는 상술한 제시 형태에 더하여, 예를 들면, 상기의 예의 시스템에서, 각각 하드 디스크 레코더인 정보 처리 장치(1001, 1002)에 대해서는, 도 40 또는 도 41에 도시하는 바와 같은 제시 형태로 하면 매우 적합하다.
도 40의 예에서는, 정보 처리 장치(1001)만이 네트워크(1009)에 접속되어 있는 경우에는, 「단독 접속」으로서 나타내도록, 액정 표시부(1062-1)에 2개의 링크(1131, 1132)를 교차시켜 점멸 표시(또는 점등 표시)한다. 표시색으로는, 예를 들면, 링크(1131, 1132)는 휘도가 높은 황색으로 하고, 링크(1131, 1132)의 내측 부분(1133, 1134), 링크(1131, 1132)의 교차 부분(1135) 및 링크(1131, 1132)의 주변 부분(1136)은 각각 흑색으로 한다.
정보 처리 장치(1001)와 다른 정보 처리 장치가 네트워크(1009)에 접속되어 있지만, 연계 동작중이 아닌 경우에는, 「연계 가능 상태」로서 나타내도록, 내측 부분(1133, 1134)을 청색으로 하고, 교차 부분(1135)을 링크(1131, 1132)와 동일한 황색으로 하여, 단독 접속의 경우보다 화면 전체의 휘도를 높게 한다.
정보 처리 장치(1001)와 다른 정보 처리 장치가 네트워크(1009)에 접속되어 있고, 또한 연계 동작중인 경우에는, 「연계 동작중」으로서 나타내도록, 내측 부분(1133, 1134)을 녹색으로 하여 연계 가능 상태의 경우보다 화면 전체의 휘도를 높게 한다.
상기의 예의 시스템에서는, 포터블 CD 플레이어인 정보 처리 장치(1004)는 네트워크(1009)로부터 절단될 가능성이 높은데 비해, 하드 디스크 레코더인 정보 처리 장치(1001, 1002)는 일정한 장소에 설치되어 네트워크(1009)로부터 절단될 가능성이 낮아, 사용자는 시스템의 상태를 볼 때, 하드 디스크 레코더인 정보 처리 장치(1001, 1002)에 주목하는 일이 많다.
따라서, 이 예의 제시 형태에 의하면, 사용자는 시스템의 각 상태를 용이하면서도 확실하게 판단할 수가 있다.
도 41의 예에서는, 정보 처리 장치(1001)만이 네트워크(1009)에 접속되어 있는 경우에는, 「단독 접속」이라고 나타내도록, 액정 표시부(1062-1)에 1개의 링크(141)를 점멸 표시(또는 점등 표시)하고, 정보 처리 장치(1001)와 다른 1대의 정보 처리 장치가 네트워크(1009)에 접속되어 있는 경우에는, 「2대 접속」이라고 나타내도록, 액정 표시부(1062-1)에 2개의 링크(1142, 1143)를 교차시켜 점멸 표시(또는 점등 표시)하고, 정보 처리 장치(1001)와 다른 2대의 정보 처리 장치가 네트워크(1009)에 접속되어 있는 경우에는, 「3대 접속」이라고 나타내도록, 액정 표시부(1062-1)에 3개의 링크(1144, 1145, 1146)를 순차적으로 교차시켜 점멸 표시(또는 점등 표시)한다.
이 예에 의하면, 사용자는 시스템의 외관으로부터 몇대의 정보 처리 장치가 네트워크에 접속되어 있는지를 용이하면서도 확실하게 알 수 있다.
(6-4. 다른 제시 방법 및 제시 형태)
도 40 및 도 41에 「단독 접속」으로 나타낸 바와 같이, 어느 정보 처리 장치만이 네드워크에 접속되어 마스터 장치로 설정된 경우에도, 그 마스터 장치가 자 장치의 장치 정보로부터 자장치에 대한 제시용 정보를 생성하고, 상술한 바와 같은 점멸 표시(또는 점등 표시)를 행하도록, 시스템을 구성할 수 있다.
또한, 상술한 예와 같이, 어느 정보 처리 장치가 네트워크에 접속되어 마스터 장치로 설정되어 있는 상태에서, 새롭게 별개의 정보 처리 장치가 네트워크에 접속된 경우에도, 각 슬레이브 장치가, 상술한 예와 같이 마스터 장치에 요구하는 것이 아니라, 각각 자장치의 장치 정보, 또는 자장치 및 타장치의 장치 정보로부터, 자장치에 대한 제시용 정보를 생성하고, 상술한 바와 같은 점멸 표시(또는 점등 표시)를 행하도록 시스템을 구성할 수도 있다.
또한, 복수의 정보 처리 장치가 네트워크에 접속되어 있는 상태로, 그 중 일부의 정보 처리 장치가 네트워크로부터 절단된 경우에도, 상술한 방법 및 형태와 마찬가지의 방법 및 형태에 의해, 네트워크로부터 절단되지 않은 각 정보 처리 장치(절단되지 않은 정보 처리 장치가 1대일 때는, 그 1대의 정보 처리 장치)에서 그 때의 네트워크 시스템의 상태를 제시하도록 시스템을 구성할 수도 있다.
이 경우에는, 사용자는 시스템의 외관으로부터 어느 정보 처리 장치가 네트워크로부터 절단됨으로써 네트워크 시스템의 상황이 변화한 것을, 용이하면서도 확실하게 알 수 있다.
또한, 상술한 예는, 정보 처리 장치의 발광 표시부를 점멸 또는 점등시켜, 네트워크 시스템의 상황을 제시하는 경우이지만, 음성 아나운스에 의해 네트워크 시스템의 상황을 제시하도록 시스템을 구성하여도 된다.
이 경우, 구체적으로, 각 정보 처리 장치에는 스피커 등의 음성 출력 수단을 설치할 뿐만 아니라, 음성 아나운스를 위한 프로그램 및 텍스트 데이터를 준비하고, 상술한 장치 정보로부터 텍스트 음성 합성에 의해 음성 아나운스의 음성 데이터를 생성하여, 이를 아날로그 음성 신호로 변환하여, 스피커 등의 음성 출력 수단에 송출하도록 각 정보 처리 장치를 구성하면 된다.
구체적으로, 상술한 예와 같이, 어느 정보 처리 장치가 네트워크에 접속되어 마스터 장치로 설정되어 있는 상태에서, 새롭게 별개의 정보 처리 장치가 네트워크에 접속된 경우에는, 각 정보 처리 장치에서 「기기가 추가되었습니다」, 「기기가 4대로 증가하였습니다」, 「하드 디스크 레코더가 추가되었습니다」, 「4대의 기기로 연계 동작중입니다」 등의 음성 아나운스에 의해, 그 때의 네트워크 시스템의 상황을 제시하고, 복수의 정보 처리 장치가 네트워크에 접속되어 있는 상태에서, 그 중 일부의 정보 처리 장치가 네트워크로부터 절단된 경우에는, 네트워크로부터 절단되지 않은 각 정보 처리 장치(절단되지 않은 정보 처리 장치가 1대인 경우에는 그 1대의 정보 처리 장치)에서 「기기가 절단되었습니다」, 「기기가 3대로 감소하였습니다」, 「CD 플레이어가 절단되었습니다」, 「마스터가 절단되어, 별개의 기기가 마스터로 되었습니다」 등의 음성 아나운스에 의해, 그 때의 네트워크 시스템의 상황을 제시한다.
이상과 같이, 본 발명에 따르면, 복수의 정보 처리 장치가, 네트워크 시스템을 구성하고 있는 것이나, 연계 동작중인 것 등을, 시스템 외관 등으로부터 사용자가 용이하면서도 확실하게 알 수가 있다.

Claims (8)

  1. 네트워크에 접속되어 네트워크 시스템을 구성하는 정보 처리 장치로서,
    발광 수단, 표시 수단 또는 음성 출력 수단으로 이루어지는 제시 수단과,
    상기 네트워크 시스템의 상황을 검출하는 검출 수단과,
    상기 검출 수단의 검출 결과를 기초로 제시용 정보를 생성하고, 그 제시용 정보에 의해 상기 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 제어 수단을 구비하는 것을 특징으로 하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 제시 수단은 발광 수단 또는 표시 수단이며, 상기 제어 수단은 상기 제시용 정보에 의해 상기 제시 수단을 점멸시키는 것을 특징으로 하는 정보 처리 장치.
  3. 네트워크에 접속되어 네트워크 시스템을 구성하는 정보 처리 장치로서,
    상기 네트워크 시스템의 상황을 검출하는 검출 수단과,
    상기 검출 수단의 검출 결과를 기초로 제시용 정보를 생성하고, 그 제시용 정보를 상기 네트워크에 접속되어 있는 다른 정보 처리 장치에 송신하여, 그 제시용 정보에 의해 상기 다른 정보 처리 장치가 구비하는 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 제어 수단을 구비하는 것을 특징으로 하는 정보 처리 장치.
  4. 제3항에 있어서,
    상기 제시 수단은 발광 수단 또는 표시 수단이며, 상기 제어 수단은 상기 제시용 정보에 의해 상기 제시 수단을 점멸시키는 것을 특징으로 하는 정보 처리 장치.
  5. 각각 제시 수단을 구비하는 복수의 정보 처리 장치가 동일 네트워크에 접속된 네트워크 시스템에 있어서 상기 네트워크 시스템의 상황을 제시하는 방법으로서,
    어느 정보 처리 장치가 상기 네트워크 시스템의 상황을 검출하는 검출 공정과,
    상기 검출 공정에서의 검출 결과를 기초로, 상기 어느 정보 처리 장치 또는 다른 정보 처리 장치가 제시용 정보를 생성하는 정보 생성 공정과,
    상기 정보 생성 공정에서 생성된 제시용 정보에 의해, 상기 네트워크에 접속되어 있는 각 정보 처리 장치가, 각자가 구비하는 상기 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 제시 공정을 구비하는 것을 특징으로 하는 네트워크 시스템 상황 제시 방법.
  6. 제5항에 있어서,
    상기 제시 수단은 발광 수단 또는 표시 수단이며, 상기 제시 공정에서는 상기 제시 수단을 점멸시키는 것을 특징으로 하는 네트워크 시스템 상황 제시 방법.
  7. 네트워크에 접속되어 네트워크 시스템을 구성하는 정보 처리 장치에서, 상기 정보 처리 장치가 구비하는 제시 수단에 의해 상기 네트워크 시스템의 상황을 제시하기 위해, 상기 정보 처리 장치가 구비하는 컴퓨터를,
    상기 네트워크 시스템의 상황을 검출하는 수단, 및
    그 검출 결과를 기초로 제시용 정보를 생성하고, 그 제시용 정보에 의해 상기 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 수단
    으로서 구성시키기 위한 컴퓨터 프로그램.
  8. 네트워크에 접속되어 네트워크 시스템을 구성하는 정보 처리 장치에서, 상기 네트워크를 통해 상기 정보 처리 장치와 접속되어 있는 다른 정보 처리 장치에 상기 네트워크 시스템의 상황을 제시시키기 위해, 상기 정보 처리 장치가 구비하는 컴퓨터를,
    상기 네트워크 시스템의 상황을 검출하는 수단, 및
    그 검출 결과를 기초로 제시용 정보를 생성하고, 그 제시용 정보를 상기 다른 정보 처리 장치로 송신하여, 그 제시용 정보에 의해 상기 다른 정보 처리 장치가 구비하는 제시 수단에 상기 네트워크 시스템의 상황을 제시시키는 수단
    으로서 기능시키기 위한 컴퓨터 프로그램.
KR1020050016711A 2004-02-27 2005-02-28 정보 처리 장치, 네트워크 시스템 상황 제시 방법 및 컴퓨터 프로그램 KR20060043259A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2004054043 2004-02-27
JPJP-P-2004-00054043 2004-02-27
JPJP-P-2004-00369202 2004-12-21
JP2004369202A JP2005276165A (ja) 2004-02-27 2004-12-21 情報処理装置、ネットワークシステム状況呈示方法およびコンピュータプログラム

Publications (1)

Publication Number Publication Date
KR20060043259A true KR20060043259A (ko) 2006-05-15

Family

ID=34840232

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050016711A KR20060043259A (ko) 2004-02-27 2005-02-28 정보 처리 장치, 네트워크 시스템 상황 제시 방법 및 컴퓨터 프로그램

Country Status (7)

Country Link
US (1) US20050210517A1 (ko)
EP (1) EP1577778A3 (ko)
JP (1) JP2005276165A (ko)
KR (1) KR20060043259A (ko)
CN (1) CN100377103C (ko)
MY (1) MY147617A (ko)
TW (1) TW200530826A (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4373957B2 (ja) * 2005-04-22 2009-11-25 株式会社東芝 テレビジョン放送受信装置及びテレビジョン放送受信方法及びテレビジョンシステム
JP2006304093A (ja) * 2005-04-22 2006-11-02 Toshiba Corp テレビジョン放送受信装置及びテレビジョン放送受信方法及びテレビジョンシステム
EP1932288B1 (en) * 2005-09-21 2010-03-03 Nxp B.V. Bus circuit
US9824107B2 (en) 2006-10-25 2017-11-21 Entit Software Llc Tracking changing state data to assist in computer network security
CN101463963B (zh) * 2007-12-21 2010-09-29 富士迈半导体精密工业(上海)有限公司 照明系统
US9936045B2 (en) * 2014-12-04 2018-04-03 International Business Machines Corporation Quality of experience for communication sessions
JP6701883B2 (ja) * 2016-03-30 2020-05-27 富士通株式会社 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム
JP6685508B2 (ja) * 2016-07-19 2020-04-22 富士ゼロックス株式会社 端末装置
CN110226298B (zh) * 2017-02-03 2022-02-18 三菱电机株式会社 信息取得系统及设备
JP7183545B2 (ja) * 2018-02-27 2022-12-06 オムロン株式会社 制御システムおよび機能ユニット
JPWO2023013093A1 (ko) * 2021-08-04 2023-02-09

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3602608B2 (ja) * 1995-06-27 2004-12-15 富士通株式会社 通信ネットワークの状態監視システム
US5887139A (en) * 1996-08-19 1999-03-23 3Com Corporation Configurable graphical user interface useful in managing devices connected to a network
US6571180B1 (en) * 1997-04-11 2003-05-27 Keystone International Holding Corp. Self-contained steam trap monitor
JP4011701B2 (ja) * 1997-12-05 2007-11-21 キヤノン株式会社 検索装置及び制御方法
US6668317B1 (en) * 1999-08-31 2003-12-23 Intel Corporation Microengine for parallel processor architecture
US6427196B1 (en) * 1999-08-31 2002-07-30 Intel Corporation SRAM controller for parallel processor architecture including address and command queue and arbiter
US6532509B1 (en) * 1999-12-22 2003-03-11 Intel Corporation Arbitrating command requests in a parallel multi-threaded processing system
US6625654B1 (en) * 1999-12-28 2003-09-23 Intel Corporation Thread signaling in multi-threaded network processor
US6307789B1 (en) * 1999-12-28 2001-10-23 Intel Corporation Scratchpad memory
US6631462B1 (en) * 2000-01-05 2003-10-07 Intel Corporation Memory shared between processing threads
JP2002204288A (ja) * 2000-11-01 2002-07-19 Sony Computer Entertainment Inc プログラム実行装置、着信通知方法、プログラム実行システム、着信通知プログラムが記録された記録媒体、着信通知プログラム
US6795941B2 (en) * 2000-12-21 2004-09-21 Honeywell International Inc. Method for diagnosing a network
CN1170223C (zh) * 2001-04-18 2004-10-06 技嘉科技股份有限公司 电子组件错误检测显示方法
CN1232907C (zh) * 2001-10-15 2005-12-21 英业达股份有限公司 服务器状态监控的系统
DE10204826A1 (de) * 2002-02-06 2003-08-14 Siemens Ag System und Verfahren zur Analyse eines Netzwerks und/oder Generierung der Topologie eines Netzwerks
US20040049785A1 (en) * 2002-09-06 2004-03-11 General Instrument Corporation Method and apparatus for delivering personalized alerts to set top box users without user intervention
US7221261B1 (en) * 2003-10-02 2007-05-22 Vernier Networks, Inc. System and method for indicating a configuration of power provided over an ethernet port

Also Published As

Publication number Publication date
TWI313410B (ko) 2009-08-11
JP2005276165A (ja) 2005-10-06
EP1577778A2 (en) 2005-09-21
TW200530826A (en) 2005-09-16
CN100377103C (zh) 2008-03-26
MY147617A (en) 2012-12-31
CN1684045A (zh) 2005-10-19
EP1577778A3 (en) 2008-11-05
US20050210517A1 (en) 2005-09-22

Similar Documents

Publication Publication Date Title
KR20060043259A (ko) 정보 처리 장치, 네트워크 시스템 상황 제시 방법 및 컴퓨터 프로그램
KR101089965B1 (ko) 네트워크 시스템, 분산 처리 방법, 및 정보 처리 장치
US8103771B2 (en) Distributing processing apparatus, method, and system
EP1569387B1 (en) Recording reservation system
KR101210114B1 (ko) 정보 처리 시스템, 정보 처리 방법, 및 컴퓨터 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
US8065403B2 (en) Information processing system, information processing method, and computer program
US20060167886A1 (en) System and method for transmitting data from a storage medium to a user-defined cluster of local and remote server blades
EP1589753A2 (en) Content reproduction apparatus, content recording apparatus, network system, and content recording/reproduction method
US20070169128A1 (en) Electronic device for automatically continuing to provide service
KR101096308B1 (ko) 정보 처리 장치, 정보 처리 방법, 정보 처리 시스템 및 기록 매체
US20050246595A1 (en) Network system, information processing apparatus, master apparatus, and apparatus information display method
JP4349189B2 (ja) ネットワークシステム、番組録画予約方法および情報処理装置
JP2005339401A (ja) 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム
JP2005267150A (ja) 情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP2005251163A (ja) 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム
KR20060071069A (ko) 정보 처리 장치, 정보 처리 방법, 정보 처리 시스템 및정보 처리용 컴퓨터 프로그램
JP2005293418A (ja) 情報処理装置、ネットワークシステム、処理能力呈示方法および処理能力呈示用プログラム
CN118118336A (zh) 一种网络服务的管理方法及存储介质
JPH0816415A (ja) 情報処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application