WO2005076131A1 - 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム - Google Patents

情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム Download PDF

Info

Publication number
WO2005076131A1
WO2005076131A1 PCT/JP2005/001866 JP2005001866W WO2005076131A1 WO 2005076131 A1 WO2005076131 A1 WO 2005076131A1 JP 2005001866 W JP2005001866 W JP 2005001866W WO 2005076131 A1 WO2005076131 A1 WO 2005076131A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
information
command
processing device
processing apparatus
Prior art date
Application number
PCT/JP2005/001866
Other languages
English (en)
French (fr)
Inventor
Shinichi Tanaka
Yukiyoshi Hirose
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to US10/549,427 priority Critical patent/US8103771B2/en
Publication of WO2005076131A1 publication Critical patent/WO2005076131A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Definitions

  • the present invention relates to an information processing device, an information processing method, an information processing system, and an information processing program.
  • Darried computing is a technology that achieves high computational performance by coordinating multiple information processing devices connected to a network.
  • Japanese Patent Application Laid-Open No. 2002-3342 165 Japanese Patent Application Laid-Open No. 200-350 850, Japanese Patent Application Laid-Open No. 200-359 289, Japanese Patent Application Laid-Open Nos. 2002-36663-3 and 200-36653-34 disclose a uniform modular structure, a common combining module, The use of a uniform software cell has been shown to realize a computer architecture for high-speed processing.
  • the present invention enables such distributed processing to be reliably and effectively performed among a plurality of information processing apparatuses connected via a network. Disclosure of the invention
  • An information processing device connected to another information processing device via a network and performing information processing according to a predetermined command
  • a capability exchange unit that collects information on an operation state from the other information processing device and creates a device information table
  • a device that identifies information processing devices that can execute the command by comparing information related to resources required to execute the command with information related to an operation state of the device information table. Identification means,
  • the information processing apparatus when the information processing apparatus is connected to another information processing apparatus via a network, the information processing apparatus collects information on the operation state from the other information processing apparatus, and When an information table is created and a predetermined command is issued, information on resources required to execute the command is compared with information on the operation status of the device information table, and information on the command that can be executed is obtained. Since the processing device is specified, distributed processing is reliably and effectively executed among a plurality of information processing devices.
  • FIG. 1 is a diagram showing an example of the network system of the present invention.
  • FIGS. 2A to 2C are diagrams for explaining an information processing controller included in the information processing apparatus of the present invention.
  • FIG. 3 is a diagram illustrating an example of a software cell.
  • FIG. 4 is a diagram showing a data area of a software cell in the case of a DMA command status return command.
  • FIG. 5 is a diagram showing how a plurality of information processing devices operate as one virtual information processing device.
  • FIG. 6 is a diagram illustrating an example of a software configuration of the information processing controller.
  • FIG. 7 is a diagram showing a state in which four information processing devices operate as one virtual information processing device.
  • FIG. 8 is a diagram showing an example of distributed processing in the system of FIG.
  • FIG. 9 is a diagram showing a specific example of each information processing device and system.
  • FIG. 10 is a diagram showing the configuration of a hard disk recorder in FIG.
  • FIG. 11 is a diagram showing a software configuration of the hard disk recorder in FIG.
  • FIG. 12 is a diagram showing a hardware configuration of the PDA in FIG.
  • FIG. 13 is a diagram showing the software configuration of the PDA in FIG.
  • FIG. 14 is a diagram showing a hard disk configuration of the portable CD player in FIG.
  • FIG. 15 is a diagram showing a software configuration of the portable CD player in FIG. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 1 shows an example of a network system according to the present invention, in which a plurality of information processing apparatuses 1, 2, 3, and 4 are connected via a network 9.
  • the information processing apparatuses 1, 2, 3, and 4 are various AV (AudioandDvsual) devices and portable devices as described below.
  • the information processing apparatus 1 includes an information processing controller 11 as a function of a console.
  • Information processing controller 11 consists of main processor 21-1, subprocessor 23-1, 23-2, 23-3, DMAC (direct memory access controller) 25-1, and DC (disk controller). Door) 2 7-1.
  • the main processor 21-1 manages the schedule management of program execution (data processing) by the sub-processors 23-1, 23-2, 23-3, and the information processing controller 11 (the information processing device 1). ) Perform general management. However, it is also possible to configure so that a program other than the management program operates in the main processor 21-1. In that case, the main processor 2 1 — 1 will also function as the sub processor.
  • the main processor 21-1 has an LS (local storage) 22-1.
  • the number of sub-processors may be one, but preferably a plurality. This example is for multiple cases.
  • Each of the sub-processors 2 3 — 1, 2 3-2, and 2 3 — 3 execute programs and process data in parallel and independently under the control of the main processor 21 1 _ 1. Furthermore, in some cases, the program in the main processor 21-1 can be configured to operate in cooperation with the program in the subprocessors 23-1, 23-2, 23-3. . The function program described later is also a program that operates in the main processor 21-1. Each of the sub-processors 23-1, 23-2, 23-3 also has L S (local storage) 24-1, 24-2, 24-3.
  • the DMA C 25-1 accesses programs and data stored in the main memory 26-1 such as a DRAM (Dynamic RAM) connected to the information processing controller 11.
  • the DC 27-1 accesses the external recording units 28-1 and 28-2 connected to the information processing controller 11-1.
  • the external recording sections 28-1 and 28-2 may be fixed disks (hard disks) or removable disks, and may also be optical disks such as M ⁇ , CD soil RW, DV soil RW, etc., memory disks, Various types such as SRAM (static RAM) and ROM can be used. Therefore, DC 27-1 is -This is an external recording unit controller.
  • the information processing controller 11 can be configured so that a plurality of external recording units 28 can be connected to the information processing controller 11.
  • the information processing controller 11 includes the information processing controller.
  • An identifier that can uniquely identify the information processing device 1 provided with 11 throughout the entire network is assigned as the information processing device ID.
  • an identifier that can identify each is assigned as the main processor ID and sub-processor ID.
  • the information processing controller 11 be configured as a one-chip IC (integrated circuit).
  • each sub-processor 23 in one information processing controller independently executes a program and processes data, but different sub-processors use the same area in the main memory 26. If data is read or written at the same time, data inconsistency may occur. Therefore, access from the sub processor 23 to the main memory 26 is performed according to the following procedure.
  • the main memory 26 is constituted by a memory location in which a plurality of addresses can be specified.
  • an additional segment is allocated to store information indicating the state of the data. Additional segments shall include the F-noise pits, subprocessor ID and LS addresses (local storage addresses).
  • An access key which will be described later, is also allocated to each memory location.
  • the FZE bit is defined as follows.
  • the data in the memory location is readable and is set to 0 after being read by the subprocessor 23.
  • data is written to the memory location reserved for reading by the subprocessor 23 on the data writing side, and when the F / E bit is set to 1 (read enable / disable write disable), read is reserved in advance.
  • the information is read to the subprocessor ID and LS address written in the additional segment as information.
  • the LS 24 in each subprocessor 23 is also configured by a memory location that can specify a plurality of addresses. Additional segments are allocated for each memory location as well. The additional segment shall contain a busy bit.
  • the subprocessor 23 When the subprocessor 23 reads the data in the main memory 25 into the memory location of its own LS24, it sets the corresponding busy bit to 1 and makes a reservation. No other data can be stored in the memory location where the busy bit is 1.
  • the busy bit goes to 0 and can be used for any purpose.
  • the main memory 26 connected to each information processing controller further includes a plurality of sandboxes.
  • the sandbox defines an area in the main memory 26, and each sandbox is assigned to each sub-processor 23 and can be used exclusively by that sub-processor. In other words, each subprocessor 23 can use the sandbox assigned to itself, but cannot access the data beyond this area.
  • the main memory 26 is composed of a plurality of memory locations, and the sandbox is a set of these memory locations.
  • a key management table as shown in FIG. 2C is used.
  • the key management table is stored in a relatively high-speed memory such as the SRAM in the information processing controller, and is associated with the DMAC 25.
  • Each entry in the key management table contains a sub-processor ID, a sub-processor key, and a key mask.
  • the process when the sub processor 23 uses the main memory 26 is as follows. First, the subprocessor 23 outputs a read or write command to the DMAC 25. This command includes its own subprocessor ID and the address of the main memory 26 to which use is requested.
  • DMAC 25 Before executing this command, DMAC 25 consults the key management table for the subprocessor key of the subprocessor requesting use. Next, the DMAC 25 determines the sub-processor key of the use request source that has been checked and the second processor in the main memory 26 that is the use request destination. Compare the access key allocated to the memory location shown in Figure A and execute the above command only if the two keys match.
  • the key mask on the key management table shown in Fig. 2C is such that the corresponding bit of the subprocessor key associated with that key mask becomes 0 or 1 by setting any bit to 1. It can be.
  • this sub-processor key is 1 10. Normally, this sub-processor key only allows access to the sandbox with the access key of 11010. However, if the key mask associated with this sub-processor key is set to 0001, the sub-processor key, access key, and This sub-processor key 11010 allows access to the sandbox with an access key whose access key is either 11010 or 1011.
  • the exclusiveness of the sandbox of the main memory 26 is realized.
  • the configuration described above allows the sub-processor to perform the pre-stage processing and the post-stage Only the sub-processor that performs the processing can access the predetermined address of the main memory 26, thereby protecting the data.
  • the program in the main processor is executed and the sub It is assumed that it operates in cooperation with the program in the server.
  • the processing result data output by the first sub-processor is temporarily stored in the main memory, and is to be input to the second sub-processor, the corresponding main memory area is naturally allocated by either of the sub-processors. Must be accessible.
  • the program in the main processor changes the value of the key mask appropriately, and shrinks the main memory area that can be accessed by multiple sub processors, thereby reducing the multi-step processing by the sub processor. enable. More specifically, data from another information processing device ⁇ processing by the first sub-processor ⁇ first main memory area ⁇ processing by the second sub-processor ⁇ second main memory area When processing takes place,
  • Sub-processor key of the first sub-processor 0 1 0
  • access key of the first main memory area 0 1 0
  • sub-processor key of the second sub-processor 0 1 0 1 1 1 1 1 1 1 1
  • 2nd main memory Area access key If you leave the setting such as 0101, the second subprocessor cannot access the first main memory area.
  • the key mask of the second sub-processor it is possible to enable the second sub-processor to access the first main memory area.
  • software cells are transmitted among the information processing apparatuses 1, 2, 3, and 4 for distributed processing among the information processing apparatuses 1, 2, 3, and 4. That is, the main processor 21 included in the information processing controller in a certain information processing apparatus
  • the processing can be distributed by generating software cells including commands, programs, and data, and transmitting the generated cells to other information processing apparatuses via the network 9.
  • Fig. 3 shows an example of the configuration of a software cell.
  • the software cell in this example is composed of a source ID, a destination ID, a response ID, a cell interface, a DMA command, a program, and data as a whole.
  • the source ID includes the network address of the information processing device that is the source of the software cell, the information processing device ID of the information processing controller in the device, and the information processing device ID of the information processing device. It includes the identifiers (main processor ID and sub processor ID) of the main processor 21 and each sub processor 23 provided in the information processing controller.
  • the transmission destination ID and the response destination ID each contain the same information about the information processing device that is the transmission destination of the software cell and the information processing device that is the response destination of the execution result of the software cell.
  • the cell interface is information necessary for using the software cell, and consists of global ID, necessary sub-processor information, sandbox size, and previous software cell ID.
  • the global ID uniquely identifies the software cell throughout the entire network and is created based on the source ID and the date and time (date and time) of the creation or transmission of the software cell. .
  • the necessary sub-processor information is stored in the execution of the corresponding software cell.
  • the number of sub-processors required for is set.
  • the amount of memory in the main memory 26 and the amount of memory in the LS 24 of the sub-processor 23 necessary for executing the software cell are set as the sandbox size.
  • the previous software cell ID is the identifier of the previous software cell in a group of software cells that requires sequential execution of streaming data or the like.
  • the execution section of the software cell consists of DMA commands, programs and data.
  • the DMA command contains a series of DMA commands required to start the program, and the program contains a subprocessor program executed by the subprocessor 23.
  • the data here is data processed by a program including this subprocessor program.
  • the DMA command includes a load command, a key command F, a function program execution command, a status request command H, and a status return command.
  • the load command is a command for writing information in the main memory 26 to the LS 24 in the sub processor 23.
  • the main memory address and the sub processor ID are stored.
  • LS address indicates the address of a predetermined area in the main memory 26 which is the source of the '1 report.
  • the subprocessor ID and LS address indicate the identifier of the subprocessor 23 to which the information is loaded and the address of LS24.
  • the kick command is a command that starts program execution, and includes the subprocessor ID and the program counter in addition to the kick command itself.
  • the sub processor ID is The sub-processor 23 is identified, and the program counter gives the address for the program counter for executing the program.
  • the function program execution command is a command by which a certain information processing device requests another information processing device for the actual state of the function program.
  • the information processing controller in the information processing device that has received the function program execution command executes the function program described later.
  • the ID identifies the functional program to be operated.
  • the status request command is a command for requesting transmission of device information on the current operating state (status) of the information processing device indicated by the transmission destination ID to the information processing device indicated by the response destination ID.
  • the function program will be described later, the function program is categorized into the function program in the configuration diagram of the software stored in the main memory 26 of the information processing controller shown in FIG. The function program is loaded into the main memory 26 and executed by the main processor 21.
  • the status reply command indicates that the information processing device that has received the status request command sends its own device information to the status request.
  • This command gives a Jib response to the information processing device indicated by the response destination ID included in the three commands.
  • the status reply command stores the device information in the 7th area of the execution section.
  • Fig. 4 shows the structure of the software cell's data area when the DMA command is a status return command.
  • the information processing device ID is an identifier for identifying the information processing device having the information processing controller, and indicates the ID of the information processing device that transmits the status reply command.
  • the information processing device type ID includes a value indicating a feature of the information processing device.
  • the characteristics of the information processing apparatus include, for example, a hard disk recorder (to be described later), a PDA (Pe r s a n a l D i G i t a 1A s s i s s t a n t s s), and a portable CD (Com p a c t D i s c) player.
  • the information processing device type ID may represent a function of the information processing device such as video / audio recording and video / audio reproduction. It is assumed that the values representing the characteristics and functions of the information processing device are determined in advance, and by reading out the information processing device type ID, it is possible to grasp the characteristics and functions of the information processing device.
  • the MS (master / "slave") status indicates whether the processor is operating as a master device or a slave device, as described below. Indicates that it is operating as a device, and when set to 1, indicates that it is operating as a slave device.
  • the main processor operating frequency represents the operating frequency of the spin processor 21 in the information processing controller.
  • the main processor utilization indicates the utilization of the main processor 21 for all programs currently running on the main processor 21.
  • the main processor usage rate is a value that represents the ratio of the used processing capacity to the total processing capacity of the target main processor, and is calculated using, for example, MIPS as a unit for evaluating processor processing capacity. Alternatively, it is calculated based on the processor usage time per unit time. The same applies to the sub-processor usage rate described later.
  • the number of sub-processors indicates the number of sub-processors 23 provided in the information processing controller.
  • the sub-processor ID is an identifier for identifying each sub-processor 23 in the information processing controller.
  • the sub-processor status indicates the state of each sub-processor 23, and includes states such as unused, reserved, and busy. unused indicates that the subprocessor is not currently in use or reserved for use. r e se r v e d indicates a state that is not currently used but is reserved. b u s y indicates that it is currently in use.
  • the sub-processor usage rate indicates the usage rate of the sub-processor for a program that is currently executing or reserved for execution by the sub-processor. That is, the sub-processor utilization indicates the current utilization when the sub-processor status is busy and the estimated utilization that will be used later when the sub-processor status is reserved. .
  • One set of sub-processor ID, sub-processor status, and sub-processor utilization is set for one sub-processor 23, and the number of sets corresponding to sub-processor 23 in one information processing controller is set. You.
  • the total main memory capacity and main memory usage are the main memory 2 connected to the information processing controller, respectively.
  • the number of external recording units indicates the number of external recording units 28 connected to the information processing controller.
  • the external recording unit ID is information for uniquely identifying the external recording unit 28 connected to the information processing controller.
  • the external recording unit type ID indicates the type of the external recording unit (for example, hard disk, CD soil RW, DVD soil RW, memory disk, SRAM, ROM, etc.).
  • the external recording section total capacity and the external recording section usage amount represent the total capacity and the currently used capacity of the external recording section 28 identified by the external recording section ID, respectively.
  • the external recording section ID, external recording section type ID, external recording section total capacity, and external recording section use amount are set as one set for one external recording section 28.
  • the number of sets is equal to the number of external recording units 28 connected to the unit. That is, when a plurality of external recording units are connected to one information processing controller, a different external recording unit ID is assigned to each external recording unit, and the external recording unit type ID and the external recording unit total capacity are assigned. And the amount of external storage used is also managed separately.
  • a main processor 21 included in an information processing controller in a certain information processing apparatus generates a software cell having the above-described configuration, and connects to another information processing apparatus via the network 9 and the other information processing apparatus.
  • the source information processing device, destination information processing device, response destination information processing device, and information processing controller in each device are identified by the above source ID, destination ID, and response destination ID, respectively.
  • the information processing component in the information processing device that received the software cell Main processor 21 included in the controller: Stores its software cell in main memory 26.
  • the destination amplifier 21 reads the software cell, performs tB, and processes the DMA command included in the software cell.
  • the destination main processor 2L first executes a load command.
  • information is transferred from the main memory address specified by the load 3 command to a predetermined area of the LS 24 in the sub processor specified by the sub processor ID and the LS address included in the command.
  • Loaded The information loaded here is the sub-processor program or data contained in the received software cell, or the data specified by the te.
  • the main processor 21 outputs the kick command to the sub-processor designated by the sub-processor ID included in the kick command, together with the program command similarly included in the kick command.
  • the designated sub-processor executes the sub-processor program according to the kick command and the program counter. Then, after storing the execution result in the main memory 26, the main processor 21 is notified that the execution has been completed.
  • the processor that executes the software cell in the information processing controller in the information processing device at the transmission destination is not limited to the subprocessor 23, and the main processor 21 includes the function program included in the software cell. It is also possible to specify that the main memory program of this program be executed.
  • the DMA command sends a software cell, which is a load command, containing a program for the main memory and data processed by the program for the main memory, and sends it to the main memory 26.
  • the main memory program and data processed by the main memory are stored.
  • the source information processing apparatus sends the main processor ID, main memory address, and main memory program of the information processing controller in the destination information processing apparatus to the destination information processing apparatus.
  • the DMA command includes an identifier such as a function program ID to be described later and a program counter, and the DMA command transmits a software command that is a kick command or a function program execution command, and sends the main memory to the main processor 21. Run the application program.
  • the source information processing device transmits the sub-processor program or the main memory program to the destination information processing device by the software cell, and Is loaded into the sub-processor 23 included in the information processing controller in the destination information processing device, and the sub-processor program or the main memory program is executed by the destination information processing device. Can be.
  • the information processing controller in the information processing device of the transmission destination loads the sub-processor program into the specified sub-processor. And sub-processor programs or main memory included in the software cells. Run the program.
  • the sub-processor program or the main memory program is automatically executed by the information processing controller in the information processing apparatus of the transmission destination without the user operating the information processing apparatus of the transmission destination. be able to.
  • the information processing device is connected to the network when the information processing controller in the device does not have a main memory program such as a sub-processor program or a function program. They can be obtained from other information processing devices. Furthermore, data transfer between each sub-processor must be performed by the DMA method, and data must be processed in multiple stages in one information processing controller by using the sandbox described above. Even in this case, processing can be executed at high speed and with high security.
  • FIG. 6 shows the software configuration stored in the main memory 26 of each information processing controller. Before the power is turned on to the information processing device, these software (programs) are recorded in the external recording unit 28 connected to the information processing controller. It has been recorded.
  • Each program is categorized into control programs, function programs, and device drivers according to functions or characteristics.
  • Each information processing controller has the same control program and is executed by the main processor 21 of each information processing controller.
  • the control program includes an MS (master one / slave) manager and a capability exchange program described later.
  • the function program is executed by the main processor 21 and includes a function corresponding to the information processing device for each information processing controller, such as for recording, reproduction, and material search.
  • the device driver is used for input / output (transmission / reception) of the information processing controller (information processing device).
  • Information such as broadcast reception, monitor output, bitstream input / output, and network input / output is provided for each information processing controller. What is provided according to the processing device is provided.
  • the main processor 21 of the information processing controller of the information processing apparatus writes each program belonging to the control program and each program belonging to the device driver to the main memory 26.
  • the main processor 21 first reads the program from the external recording unit 28 by causing the DC 27 to execute the read command, and then causes the DMAC 25 to execute the write command. By doing so, the program is written to the main memory 26.
  • the necessary programs may be loaded when necessary, or, similarly to the programs belonging to other categories, each program may be loaded immediately after the main power is turned on. May be configured to be loaded.
  • each program belonging to the function program does not need to be recorded in the external recording unit 28 of every information processing device connected to the network. If the information is recorded in the recording unit 28, it can be loaded from another information processing device by the above-described method. As a result, as shown in the lower part of FIG.
  • the function program can be executed as the device 7.
  • an identifier capable of uniquely identifying a program is assigned to each functional program as a functional program ID.
  • the functional program ID is created at the stage of creating a functional program.
  • the main processor 21 secures an area in the main memory 26 for storing the location information (information about the operation state) of the information processing device on which the main processor 21 operates, and uses the information as a device information table of its own device. Record.
  • the device information here is the information processing device I shown in FIG.
  • the main processor 21 of the information processing controller of the information processing device stores a master / slave manager (hereinafter, MS manager) in a main memory. 2 Load to 6 and execute.
  • MS manager master / slave manager
  • the MS manager confirms the presence of another information processing device connected to the same network 9.
  • connection or “presence” here means that the information processing device is not only physically connected to the network 9 but also electrically and functionally connected to the network 9 as described above. Indicates that it is.
  • the information processing device on which it operates is called its own device, and other information processing devices are called other devices.
  • the device also indicates the information processing device.
  • the DMA command is a status request command
  • the source ID and the response destination ID are the information processing device
  • a software cell that does not specify the transmission destination ID is generated, and the information processing device is connected.
  • the time out time of the timer is, for example, 10 minutes.
  • the other device When another information processing device is connected to the network system, the other device receives the software cell of the status request command and issues the status request command specified by the response destination ID.
  • the DMA command is a status reply command, and the software cell containing the device information of itself (other devices) is transmitted to the information processing device as data.
  • the software cell of this status reply command contains at least information specifying the other device (information processing device ID, information about the main processor, information about the sub processor, etc.) and the information of the other device. MS status is included.
  • the MS manager of the information processing device that has issued the status request command waits until the timer for confirming the network connection times out, and the MS manager of the status reply command transmitted from the other device on the network is used. Monitor reception. As a result, when a status reply command indicating that the MS status is 0 (one master device) is received, the MS status in the device information table of the own device is set to 1. As a result, the device becomes a slave device.
  • the device if no information processing device is connected to the network 9 in a state where none of the devices is connected to the network 9 or no master device exists on the network 9, the device is automatically connected to the network 9. Is set as the master device. On the other hand, when a new information processing device is connected to the network 9 in a state where the master device already exists on the network 9, the device is automatically set as a slave device.
  • the MS manager monitors the status of the other device by periodically transmitting a status request command to another device on the network 9 and inquiring about the status information.
  • a status reply command ' is sent from a specific other device within a predetermined period set for judgment in advance. If a reply is not received, or if a new information processing device is connected to the network 9, or if the connection status of the network 9 changes, the information is notified to the capability exchange program described below.
  • the capability exchange program acquires device information of all other devices connected to the network 9, that is, device information of each slave device.
  • the device information of the other device is obtained by generating a software cell in which the DMA command is a status request command and transmitting the generated software cell to the other device. This is possible by receiving a software cell including device information of another device from another device.
  • the capacity exchange program allocates an area for storing the device information of all the other devices (each slave device) connected to the network 9 in the same manner as the device information table of the own device which is the master device. Maintain this information in the main memory 26 and record this information as a device information table of the other device (slave device).
  • the main memory 26 of the master device includes all the information processing devices connected to the network 9 including the own device.
  • the information is recorded as a device information table.
  • the capability exchange program uses the device information of all other devices connected to the network 9, that is, the device information of one master device and each slave device other than the self-device.
  • the information is acquired, and the information processing device ID and the MS status included in the device information are recorded in the main memory 26 of the own device. That is, in the main memory 26 of the slave device, the device information of the own device is recorded as a device information table, and the master device and each slave device connected to the network 9 other than the own device are recorded.
  • the information processing device ID and MS station are recorded as separate device information tables.
  • the information processing device when the information processing device is notified that the information processing device is newly connected to the network 9 by the MS manager as described above, the information processing device The device information is obtained and recorded in the main memory 26 as described above.
  • the MS manager and the capacity exchange program are not limited to being executed by the main processor 21, but may be executed by any of the sub processors 23. Further, it is desirable that the MS manager and the capability exchange program are resident programs that always operate while the main power of the information processing device is turned on.
  • the capacity exchange program for both the master device and the slave device switches off the main power supply of the information processing device connected to the network 9 from the MS manager as described above. Notified that the information processing device was disconnected from Then, the device information table of the information processing device is deleted from the main memory 26 of the own device.
  • a new master device is determined by the following method.
  • an information processing device that is not disconnected from the network 9 replaces the information processing device IDs of its own device and the other device with numerical values, and replaces the information processing device ID of its own device with the information processing device of the other device. If the information processing device ID of the own device is the smallest among the information processing devices that are not disconnected from the network 9 as compared with the device ID, the slave device shifts to the master device, and The status is set to 0, and as described above, the device information of all other devices (each slave device) connected to the network 9 is acquired as the master device, and the main memory 26 is acquired. To record.
  • a master In order to operate a plurality of information processing apparatuses 1, 2, 3, and 4 connected to the network 9 as one virtual information processing apparatus 7, a master The device needs to know the user's operation and the operation status of the slave device.
  • FIG. 7 shows a state in which four information processing devices operate as one virtual information processing device 7. It is assumed that the information processing device 1 operates as a master device and the information processing devices 2, 3, and 4 operate as slave devices A, B, and C.
  • the operation target is the master device 1
  • the operation information is directly grasped by the master device 1
  • the operation target is the slave device. If it is a device, the operation information is transmitted from the operated slave device to the master device 1. That is, regardless of whether the user's operation target is the mass storage device 1 or the slave device, the operation information is always grasped by the mass storage device 1.
  • the operation information is transmitted by, for example, a software cell in which the DMA command is the operation information transmission command.
  • the main processor 21-1 included in the information processing controller 11 in the master device 1 selects a function program to be executed according to the operation information.
  • the main processor 21-1 included in the information processing controller 11 in the mass storage device 1 can use its own external recording unit 2 8 1 1 2 by the above method. Function program from 8-2 to main memory 2 6-1
  • the other information processing device (slave device) is the master device
  • 1 may send the function program.
  • the information processing device type ID In the functional program, the information processing device type ID, the processing capability of the main processor or sub-processor, the main memory use, the external recording Required specifications for equipment, such as conditions for parts, are specified.
  • the main processor 211 included in the information processing controller 11 in the master device 1 reads the required specifications required for each function program. Also, the device information of each information processing device is read by referring to the device information table recorded in the main memory 26-1 by the capability exchange program in advance.
  • the device information here indicates each information below the information processing device ID shown in FIG. 4, and includes the main processor, the sub processor, the main memory, This is information on the external recording unit.
  • the main processor 2 11 included in the information processing controller 11 in the master device 1 is necessary for executing the above-described device information of each information processing device connected to the network 9 and the function program. No The above required specifications are sequentially compared.
  • a slave device that can secure the processing capacity of the main processor or sub-processor required for executing the functional program, the amount of main memory used, and the conditions for the external recording unit is specified as an execution request candidate device.
  • one execution request candidate device is specified and selected from the candidate devices.
  • the main processor 211 included in the information processing controller 11 in the master device 1 transmits the information processing controller in its own device to the specified slave device. Updates the device information table of the slave device recorded in the main memory 26-1 included in the controller 11. Further, the main processor 21-1 included in the information processing controller 11 in the master device 1 generates a software cell in which the DMA command is a load command and a kick command, and a cell interface of the software cell. Then, set the necessary sub-processor information and the sandbox size (see Fig. 3) for the function program, and send it to the slave device requested to execute.
  • the slave device requested to execute the function program Execute the program and update the device information table of the own device. At that time, if necessary, the information processing
  • the main processor 21 included in the D-roller loads the function program from the external recording unit 28 of the white device to the main memory 26 by the method described above.
  • the other information processing apparatus stores the function program as the main memory program.
  • the system may be configured to transmit the function program execution request to the destination slave device.
  • the subprocessor program is transmitted to another information processing device by a software cell, if necessary, and transmitted to the subprocessor 23 of the other information processing device. And can be executed by another information processing device.
  • the main processor 21 included in the information processing controller in the slave device that executed the function program sends an end notification to the information processing controller in the master device 1.
  • the main processor 21-1 included in the information processing controller 11 in the master device 1 receives the end notification and updates the device information table of the slave device that has executed the functional program.
  • the main processor 21-1 included in the information processing controller 11 in the master device 1 can execute the relevant function program from the reference result of the device information tables of the own device and other devices.
  • the information processing device may itself select itself. That In this case, the master device 1 executes the relevant function program.
  • the user operates the slave device A (information processing device 2), and another slave device B (information processing device 3) executes a function program corresponding to the operation. Shows an example of the above distributed processing.
  • the user operates the slave device A to start the distributed processing of the entire network system including the slave device A.
  • the operation information is transmitted to the master device 1.
  • the master device 1 receives the operation information in step 72, and further proceeds to step 73 to read the device information table of its own device and the other device recorded in its own main memory 26-1.
  • the operating state of each information processing device is checked, and an information processing device capable of executing a function program according to the received operation information is selected.
  • the slave device B is selected.
  • step 74 the master device 1 requests the selected slave device B to execute the function program.
  • Slave device B receives the execution request in step 95, and further proceeds to step 96 to execute the requested function program.
  • the user can operate a plurality of information processing apparatuses 1, 2, 3, and 4 without operating other information processing apparatuses. It can be operated as one information processing device 7.
  • Information processing devices 1, 2, Basically, 3 and 4 may be any type as long as the information processing is performed by the information processing controllers 11, 12, 13 and 14 as described above. An example is shown below.
  • the information processing apparatus 1 including the information processing controller 11 is a hard disk recorder, and as shown in FIG. 10, the hardware configuration is such that the external recording unit 28 shown in FIG. -1 as a built-in hard disk, and as the external recording unit 28-2 shown in Fig. 1, an optical disk such as DVD soil R / RW, CD soil RZRW, or B 1 u-ray Disc (registered trademark). It is configured so that it can be installed, and the bus 31-1 connected to the path 29-1 of the information processing controller 11-1 has a broadcast receiving section 32-1, a video input section 33-1, and audio. Input section 34-1, video output section 35-1, audio output section 36_1, operation panel section 37_1, remote control receiver section 38-1 and network connection section 39-1 are connected. It is a thing.
  • the broadcast receiving section 32-1, the video input section 33-1, and the audio input section 34-11 receive a broadcast signal or input a video signal and an audio signal from the outside of the information processing apparatus 1, respectively, and receive a predetermined signal.
  • the video output unit 35-1 and the audio output unit 36-1 are converted to digital data in the format and sent out to the bus 311 for processing by the information processing controller 11. It processes video and audio data sent from the information processing controller 11 to the bus 311 and converts it to digital data or converts it to an analog signal and sends it out of the information processing device 1.
  • the remote control receiver 38-1 receives the remote control (remote control) infrared signal from the remote control transmitter 43-1.
  • the information processing device (hardware The monitor display device 41 and the speaker device 42 are connected to the video output section 35-1 and the audio output section 36 11 of the disk recorder 1.
  • the information processing apparatus 2 including the information processing controller 12 in the example of FIG. 9 is also a hard disk recorder, and as shown in FIG. 10 by adding reference numbers in parentheses in FIG. It has the same configuration. However, for example, as shown in FIG. 9, the information processing device (hard disk recorder) 2 is not connected to the monitor display device and the speaker device.
  • the software configuration of the information processing devices (hard disk recorders) 1 and 2, that is, the information processing controllers 11 and 12 is, as shown in FIG. It has a manager and a capability exchange program.It has programs for video / audio recording, video / audio playback, material search and program recording reservation as functional programs, and broadcast reception, video output, audio output, and external recording as device drivers. Equipped with programs for input / output and network input / output.
  • the information processing device 3 including the information processing controller 13 in the example of FIG. 9 is a PDA (Personal Digital Assistant), and as shown in FIG. 12, as a hardware configuration, as shown in FIG. 1
  • the external recording unit 2 8-5 shown in the figure is configured so that a memory card disk can be mounted, and is connected to the bus 51 connected to the path 29-3 of the information processing controller 13.
  • the liquid crystal display section 52, the audio output section 53, the camera section 54, the audio input section 55, the keypad section 56, and the network connection section 57 are connected.
  • the information processing controller 13 whose interior is omitted is a main processor 21-3, sub-processors 23-7, 23-3-8, 23-9, and DMAC (direct memory). Access controller)
  • the main processor 21-3 has LS (low power storage) 22-3, and each sub-processor Processor 2 3 — 7, 2
  • the software configuration of the information processing device (PDA) 3, that is, the information processing controller 13, includes an MS manager and a capability exchange program as a control program, and a video program as a function program. Equipped with programs for voice recording, video / audio playback, phone book, word processor and spreadsheet, and a web browser.As device drivers, video output, voice output, camera video input, microphone voice input, and network input / output A program for
  • the information processing device 4 including the information processing controller 14 in the example of FIG. 9 is a portable CD player, and as shown in FIG. 14, the hardware configuration is as shown in FIG.
  • the external recording unit 28-6 is configured so that a CD (Compact Disc) can be mounted, and the path 61 connected to the path 29-4 of the information processing controller 14
  • the liquid crystal display section 62, the audio output section 63, the operation button section 64, and the network connection section 65 are connected.
  • the information processing controller 14 with the inside omitted is shown as a main processor 21-4, a sub-processor 23-10, 23-. 1 1, 2 3 — 1 2, DMA C (direct memory access controller) 2 5 — 4, DC (disk controller) 27 — 4 and bus 29 — 4
  • Processor 2 1-4 has LS (oral callus storage) 2 2-4, and each sub-processor 2 3-10, 2 3-1 1, 2 3-1 2 has LS (local Storage) 24-10, 24-11, 24-12.
  • the software configuration of the information processing device (portable CD player) 4, that is, the information processing controller 14, includes an MS manager and a capability exchange program as control programs.
  • a program for music playback is provided as a program, and a program for audio output, CD control, and network input / output is provided as a driver.
  • the main processor 21-2 included in the information processing controller 12 in the information processing device 2 is executed by the above-described method.
  • the information processing device (PDA) 3 which is a slave device, receives from the user input of recording reservation information including information such as a recording start time, a recording end time, a broadcast channel to be recorded, and recording quality. Then, a software cell including a recording reservation command as a DMA command is generated and transmitted to the information processing device 1 which is a mass storage device.
  • the main processor 211 included in the information processing controller 11 in the information processing apparatus 1 that has received the software cell whose DMA command is the recording reservation command reads the recording reservation command and By referring to the device information table in the main memory 26-1, the information processing device capable of executing the recording reservation command is specified.
  • the main processor 21-1 reads the information processing device type IDs of the information processing devices 1, 2, 3, and 4 included in the device information table, and determines an information processing device capable of executing the recording reservation command. Extract.
  • the information processing devices 1 and 2 having the information processing device type ID indicating the recording function are specified as candidate devices, and the information processing devices 3 and 4 are excluded from the candidate devices.
  • the main processor 21-1 included in the information processing controller 11 in the information processing device 1, which is a master device, refers to the device information table and refers to the main information processing devices 1 and 2.
  • Information such as the processing capacity of the processor or sub-processor and information about the main memory.
  • the information about the device is read, and it is determined whether or not the information processing devices 1 and 2 satisfy the required specifications required for executing the recording reservation command.
  • both the information processing apparatuses 1 and 2 satisfy the required specifications required for executing the recording reservation command.
  • the main processor 21-1 refers to the device information table and reads out information on the external recording units of the information processing devices 1 and 2, and the free space of the external recording units is used to execute the recording reservation command. Judge whether the required capacity is satisfied. Since the information processing devices 1 and 2 are hard disk recorders, the difference between the total capacity and the usage of the hard disks 28-1 and 28-3 respectively corresponds to the free space.
  • the free space of the hard disk 28-1 of the information processing device 1 is 10 minutes in terms of the recording time
  • the free space of the hard disk 28-3 of the information processing device 2 is It is assumed that the recording time is 20 hours.
  • the main processor 21-1 included in the information processing controller 11 in the information processing device 1 as the master device has two hours of free space required to execute the recording reservation command.
  • the information processing device that can secure the capacity is specified as the execution request destination slave device.
  • the main processor 2 1 — 1 included in the information processing controller 11 in the information processing device 1 as the master device is The recording reservation command including the recording reservation information transmitted from the information processing device 3 operated by the user is transmitted to the information processing device 2 to request execution of the recording reservation of the two-hour broadcast program.
  • the mouth processors 2 1-2 analyze the recording reservation command and load the function program required for recording from the hard disk 28-3 which is an external recording unit to the main memory 26-2, and make a recording reservation. Execute recording according to the information. As a result, the video and audio data of the two-hour broadcast program reserved for recording is recorded on the 81-disk 2-3 of the information processing device 2.
  • the user operates only one information processing apparatus, and thus operates a plurality of information processing apparatuses without operating other information processing apparatuses.
  • the devices 1, 2, 3, and 4 can be operated as one virtual information processing device 7.

Description

明細書 情報処理装置、 情報処理方法、 情報処理システムおよび情報処理 用プログラム 技術分野
この発明は、 情報処理装置、 情報処理方法、 情報処理システム および情報処理用プログラムに関する。 背景技術
最近、 ダリ ッ ド · コンピューティ ングが注目されている。 ダリ ッ ド · コンピューティ ングとは、 ネッ トワークに接続された複数 の情報処理装置を協調動作させて、 高い演算性能を実現する技術 である。
例えば、 特開 2 0 0 2 — 3 4 2 1 6 5号公報、 特開 2 0 0 2 — 3 5 1 8 5 0号公報、 特開 2 0 0 2 - 3 5 8 2 8 9号公報、 特開 2 0 0 2 — 3 6 6 5 3 3号公報およぴ特開 2 0 0 2 — 3 6 6 5 3 4号公報には、 均一なモジュラー構造、 共通のコンビユーティ ング · モジュール、 および均一なソフ トウエアセルを用いること によって、 高速処理用コンピュータ · ァ一キテクチヤを実現する ことが示されている。
しかしながら、 ネッ トワークを介して複数の情報処理装置が接 続されたネッ トワークシステムにおいて、 ユーザの当該ネッ トヮ —クシステムに対する操作に応じた処理を、 ネッ トワークシステ ム全体で分散的に実行するには、 それぞれの情報処理装置、 また はネッ トワークシステムを管理する情報処理装置が、 他の情報処 理装置の動作状況を把握している必要がある。
そこで、 この発明は、 ネッ トワークを介して接続された複数の 情報処理装置の間で、 このような分散処理を確実かつ効果的に行 う ことができるよ う にしたものである。 発明の開示
この発明の情報処理装置は、
ネッ トワークを介して他の情報処理装置と接続され、 所定のコ マンドに従って情報処理を行う情報処理装置であって、
前記他の情報処理装置から動作状態に関する情報を収集して、 装置情報テーブルを作成する能力交換手段と、
前記コマン ドが発生した際、 当該コマン ドの実行に要する資源 に関する情報と、 前記装置情報テーブルの動作状態に関する情報 とを比較して、 当該コマン ドが実行可能な情報処理装置を特定す る装置特定手段と、
を備えることを特徴とする。
上記の構成の、 この発明の情報処理装置では、 これがネッ トヮ ークを介して他の情報処理装置と接続された場合、 他の情報処理 装置から、 その動作状態に関する情報を収集して装置情報テープ ルを作成し、 所定のコマンドが発生した際には、 当該コマンドの 実行に要する資源に関する情報と、 装置情報テーブルの動作状態 に関する情報とを比較して、 当該コマン ドを実行可能な情報処理 装置を特定するので、 複数の情報処理装置の間で分散処理が確実 かつ効果的に実行される。
以上のように、 この発明によれば、 ネッ トワークを介して接続 された複数の情報処理装置の間で分散処理を確実かつ効果的に 行う ことができる。 図面の簡単な説明
第 1 図は、 この発明のネッ 卜 ワークシステムの一例を示す図で ある。
第 2 A図〜第 2 C図は、 この発明の情報処理装置が備える情報 処理コン トローラの説明に供する図である。
第 3 図は、 ソフ トウェアセ レの一例を示す図である。
第 4図は、 D M Aコマンド力 ステータス返信コマン ドである場 合のソフ トウェアセルのデータ領域を示す図である。
第 5図は、 複数の情報処理装置が仮想的な 1 台の情報処理装置 として動作する様子を示す図である。
第 6 図は、 情報処理コントローラのソフ トウエア構成の一例を 示す図である。
第 7 図は、 4台の情報処理装置が仮想的な 1台の情報処理装置 として動作する様子を示す図である。
第 8 図は、 第 7 図のシステム における分散処理の例を示す図で ある。
第 9図は、 各情報処理装置およびシステムの具体例を示す図で ある。
第 1 0図は、 第 9図中のハー ドディスクレコーダの Λ— ドゥエ ァ構成を示す図である。
第 1 1 図は、 第 9図中のハー ドディ スクレコーダのソフ トウェ ァ構成を示す図である。
第 1 2図は、 第 9図中の P D Aのハー ドウェア構成を示す図で ある。 第 1 3図は、 第 9図中の P D Aのソフ トウエア構成を示す図で ある。
第 1 4図は、 第 9図中のポータブル C Dプレーヤのハー ドゥエ ァ構成を示す図である。
第 1 5図は、 第 9図中のポー夕ブル C Dプレーヤのソフ トウェ ァ構成を示す図である。 発明を実施するための最良の形態
〔ネッ トワークシステムおよび情報処理装置の基本的構成: 第 1 図〜第 4図〕
第 1図は、 この発明のネッ トワークシステムの一例を示し、 ネ ッ トワーク 9を介して複数の情報処理装置 1、 2、 3、 4が接続 されたものである。
(情報処理装置および情報処理コン トローラ)
情報処理装置 1、 2、 3、 4は、 それぞれ後述のような各種の AV (A u d i o a n d V i s u a l ) 機器やポータブル機 器である。
情報処理装置 1 について示すと、 情報処理装置 1 は、 コンビュ —夕機能部として情報処理コン トローラ 1 1 を備える。 情報処理 コントローラ 1 1は、 メイ ンプロセッサ 2 1 — 1、 サブプロセッ サ 2 3— 1 , 2 3 - 2 , 2 3 — 3、 D M A C (ダイ レク トメモリ アクセスコン トローラ) 2 5 — 1および D C (ディ スクコン ト口 ーラ) 2 7— 1 を有する。
メインプロセッサ 2 1— 1 は、 サブプロセッサ 2 3 — 1, 2 3 — 2, 2 3 — 3 によるプログラム実行 (データ処理) のスケジュ —ル管理と、 情報処理コン 卜ローラ 1 1 (情報処理装置 1 ) の全 般的な管理とを行う。 ただし、 メイ ンプロセッサ 2 1 — 1 内で管 理のためのプログラム以外のプログラムが動作するよう に構成 することもできる。 その場合には、 メインプロセッサ 2 1 — 1 は サブプロセッサとしても機能することになる。 メイ ンプロセッサ 2 1 — 1 は、 L S (ローカルス ト レージ) 2 2 — 1 を有する。 サブプロセッサは、 1 つでもよいが、 望ましく は複数とする。 この例は、 複数の場合である。
各サブプロセッサ 2 3 — 1 , 2 3 - 2 , 2 3 — 3 は、 メイ ンプ 口セッサ 2 1 _ 1 の制御によって並列的かつ独立に、 プログラム を実行し、 データを処理する。 さ らに、 場合によってメインプロ セッサ 2 1 — 1 内のプログラムがサブプロセッサ 2 3 — 1 , 2 3 一 2, 2 3 — 3内のプログラムと連携して動作するように構成す ることもできる。 後述する機能プログラムもメイ ンプロセッサ 2 1 - 1 内で動作するプログラムである。 各サブプロセッサ 2 3 - 1 , 2 3 - 2 , 2 3 — 3 も、 L S (ローカルス ト レ一ジ) 2 4 — 1, 2 4 - 2 , 2 4 - 3 を有する。
DMA C 2 5 — 1は、 情報処理コントローラ 1 1 に接続された D R AM (ダイナミック R AM) などからなるメイ ンメモリ 2 6 - 1 に格納されているプログラムおよびデ一夕にアクセスする ものであり、 D C 2 7 — 1 は、 情報処理コン トローラ 1 1 に接続 された外部記録部 2 8 — 1 , 2 8 — 2 にアクセスするものである。 外部記録部 2 8 — 1 , 2 8 — 2 は、 固定ディ スク (ハー ドディ スク) でも、 リムーバブルディ スクでもよく 、 また、 M〇, C D 土 RW, D VD土 RWなどの光ディスク、 メモリディスク、 S R AM (スタティ ック R AM)、 R O Mなど、 各種のものを用いる ことができる。 したがって、 D C 2 7 — 1 は、 ディ スクコン ト口 —ラと称するが、 外部記録部コン トローラである。
第 1図の例のように、 情報処理コン 卜ローラ 1 1 に対して外部 記録部 2 8を複数接続できるように、 情報処理コン トローラ 1 1 を構成することができる。
メインプロセッサ 2 1— 1、 各サブプロセッサ 2 3 — 1 , 2 3 一 2 , 2 3 — 3、 DMA C 2 5— 1および D C 2 7 — 1 は、 ノ ス
2 9— 1によって接続される。
情報処理コン トローラ 1 1 には、 当該の情報処理コン トローラ
1 1 を備える情報処理装置 1 をネッ 卜 ワーク全体を通して一意 的に識別できる識別子が、 情報処理装置 I Dとして割り当てられ る。
メインプロセッサ 2 1 — 1および各サブプロセッサ 2 3 — 1, 2 3— 2, 2 3 — 3に対しても同様に、 それぞれを特定できる識 別子が、 メイ ンプロセッサ I Dおよびサブプロセッサ I Dとして 割り当てられる。
情報処理コン トローラ 1 1 は、 ワンチップ I C (集積回路) と して構成することが望ましい。
他の情報処理装置 2、 3、 4も、 同様に構成される'。 ここで、 親番号が同一であるュニッ トは枝番号が異なっていても、 特に断 りがない限り同じ働きをするものとする。 また、 以下の説明にお いて枝番号が省略されている場合には、 枝番号の違いにいる差異 を生じないものとする。
(各サブプロセッサからメインメモ リへのアクセス)
上述したように、 1つの情報処理コン トローラ内の各サブプロ セッサ 2 3は、独立にプログラムを実行し、データを処理するが、 異なるサブプロセッサがメイ ンメモリ 2 6 内の同一領域に対し て同時に読み出しまたは書き込みを行った場合には、 データの不 整合を生じ得る。 そこで、 サブプロセッサ 2 3からメインメモリ 2 6へのアクセスは、 以下のよ うな手順によって行う。
第 2 A図に示すように、 メイ ンメモリ 2 6 は、 複数のア ドレス を指定できるメモリ ロケーショ ンによって構成される。 各メモリ ロケーショ ンに対しては、 データの状態を示す情報を格納するた めの追加セグメン トが割り振られる。 追加セグメン トは、 Fノ E ピッ ト、 サブプロセッサ I Dおよび L Sア ドレス (ローカルス ト レ一ジア ドレス) を含むものと される。 また、 各メモリ ロケーシ ヨ ンには、後述のアクセスキ一も割り振られる。 F Z Eビッ トは、 以下のように定義される。
F Z Eビッ ト = 0は、 サブプロセッサ 2 3 によって読み出され ている処理中のデータ、 または空き状態であるため最新データで はない無効データであり、読み出し不可であることを示す。 また、 F Z Eビッ ト = 0は、 当該メモリ ロケーショ ンにデ一夕書き込み 可能であることを示し、 書き込み後に 1 に設定される。
F / Eビッ ト = 1 は、 当該メモリ ロケーショ ンのデ一夕がサブ プロセッサ 2 3 によって読み出されておらず、 未処理の最新デー 夕であることを示す。 当該メモリ ロケーショ ンのデ一夕は読み出 し可能であり、 サブプロセッサ 2 3 によって読み出された後に 0 に設定される。 また、 F Z Eビッ ト = 1 は、 当該メモリ ロケーシ ョ ンがデータ書き込み不可であることを示す。
さ らに、 上記 F / Eビッ ト = 0 (読み出し不可/書き込み可) の状態において、 当該メモリ ロケ一ショ ンについて読み出し予約 を設定することは可能である。 F Z E ビッ ト = 0のメモリ ロケ一 ショ ンに対して読み出し予約を行う場合には、 サブプロセッサ 2 3 は、 読み出し予約を行うメモリ ロケーショ ンの追加セグメン ト に、 読み出し予約情報として当該サブプロセッサ 2 3 のサブプロ セッサ I Dおよび L Sアドレスを書き込む。
その後、 データ書き込み側のサブプロセッサ 2 3 によって、 読 み出し予約されたメモリ ロケーショ ンにデータが書き込まれ、 F / Eビッ ト = 1 (読み出し可ノ書き込み不可) に設定されたとき、 あらかじめ読み出し予約情報として追加セグメ ン トに書き込ま れたサブプロセッサ I Dおよび L Sァドレスに読み出される。 複数のサブプロセッサによってデータを多段階に処理する必 要がある場合、 このように各メモリ ロケーショ ンのデータの読み 出し 書き込みを制御することによって、 前段階の処理を行うサ ブプロセッサ 2 3が、 処理済みのデータをメイ ンメモリ 2 6上の 所定のア ドレスに書き込んだ後に即座に、 後段階の処理を行う別 のサブプロセッサ 2 3が前処理後のデータ を読み出すことが可 能となる。
第 2 B図に示すように、 各サブプロセッサ 2 3内の L S 2 4 も、 複数のァ ド レスを指定できるメモリ ロケ一ショ ンによって構成 される。 各メモリ ロケーショ ンに対しては、 同様に追加セグメン トが割り振られる。 追加セグメン トは、 ビジービッ トを含むもの とされる。
サブプロセッサ 2 3がメイ ンメモリ 2 5 内のデータを自身の L S 2 4のメモリ ロケーショ ンに読み出す ときには、 対応するビ ジービッ トを 1 に設定して予約する。 ビジービッ トが 1 であるメ モリ ロケ一ショ ンには、 他のデータは格納する ことができない。
L S 2 4のメモリ ロケーショ ンに読み出し後、 ビジービッ トは 0 になり、 任意の目的に使用できるようになる。 第 2 A図に示すように、 さ らに、 各情報処理コン トローラと接 続されたメインメモリ 2 6 には、 複数のサン ドボックスが含まれ る。 サンドボックスは、 メインメモリ 2 6内の領域を画定するも のであり、 各サン ドボックスは、 各サブプロセッサ 2 3 に割り当 てられ、 そのサブプロセッサが排他的に使用することができる。 すなわち、 各々のサブプロセッサ 2 3 は、 自身に割り 当てられた サンドボックスを使用できるが、 この領域を超えてデ一夕のァク セスを行う ことはできない。
メインメモリ 2 6 は、 複数のメモリ ロケーショ ンから構成され るが、 サンドボックスは、 これらのメモリ ロケーショ ンの集合で ある。
さらに、 メイ ンメモリ 2 6の排他的な制御を実現するために、 第 2 C図に示すようなキー管理テーブルが用いられる。 キー管理 テーブルは、 情報処理コントローラ内の S R A Mのような比較的 高速のメモリ に格納され、 D M A C 2 5 と関連付けられる。 キー 管理テーブル内の各エントリ には、 サブプロセッサ I D、 サブプ 口セッサキーおよびキ一マスクが含まれる。
サブプロセッサ 2 3がメイ ンメモリ 2 6 を使用する際のプロ セスは、 以下のとおりである。 まず、 サブプロセッサ 2 3 は D M A C 2 5 に、 読み出しまたは書き込みのコマンドを出力する。 こ のコマン ドには、 自身のサブプロセッサ I Dと、 使用要求先であ るメインメモリ 2 6のアドレスが含まれる。
D M A C 2 5は、 このコマン ドを実行する前に、 キー管理テ一 ブルを参照して、 使用要求元のサブプロセッサのサブプロセッサ キーを調べる。 次に、 D M A C 2 5 は、 調べた使用要求元のサブ プロセッサキーと、 使用要求先であるメイ ンメモリ 2 6内の第 2 A図に示したメモリ ロケーショ ンに割り振られたアクセスキー とを比較して、 2つのキーが一致した場合にのみ、 上記のコマン ドを実行する。
第 2 C図に示したキ一管理テーブル上のキーマスクは、 その任 意のビッ トが 1 になることによって、 そのキーマスクに関連付け られたサブプロセッサキーの対応するビッ トが 0 または 1 にな ることができる。
例えば、 サブプロセッサキーが 1 0 1 0であるとする。 通常、 このサブプロセッサキーによって 1 0 1 0 のアクセスキーを持 つサン ドボックスへのアクセスだけが可能になる。 しかし、 この サブプロセッサキーと関連付けられたキ一マス クが 0 0 0 1 に 設定されている場合には、 キーマスクのビッ 卜が 1 に設定された 桁のみにつき、 サブプロセッサキーとアクセスキーとの一致判定 がマスクされ、 このサブプロセッサキ一 1 0 1 0 によってァクセ スキーが 1 0 1 0 または 1 0 1 1 のいずれかであるアクセスキ 一を持つサンドボックスへのアクセスが可能となる。
以上のようにして、 メイ ンメモリ 2 6 のサン ドボックスの排他 性が実現される。 すなわち、 1つの情報処理コン トローラ内の複 数のサブプロセッサによってデータを多段階に処理する必要が ある場合、 以上のように構成することによって、 前段階の処理を 行うサブプロセッサと、 後段階の処理を行うサブプロセッサのみ が、 メイ ンメモリ 2 6 の所定ア ドレスにアクセスできるようにな り、 データを保護することができる。
例えば、 以下のように使用することが考えられる。 まず、 情報 処理装置の起動直後においては、 キ一マスクの値は全てゼロであ る。 メインプロセッサ内のプログラムが実行され、 サブプロセッ サ内のプログラムと連携動作するものとする。 第 1 のサブプロセ ッサによ り 出力された処理結果データを一旦メイ ンメモリ に格 納し、 第 2 のサブプロセッサに入力したいときには、 該当するメ インメモリ領域は、 当然どちらのサブプロセッサか らもアクセス 可能である必要がある。 そのような場合に、 メイン プロセッサ内 のプログラムは、 キーマスクの値を適切に変更し、 複数のサブプ 口セッサからアクセスできるメイ ンメモリ領域を穀ける ことに より、 サブプロセッサによる多段階的の処理を可能にする。 より具体的には、 他の情報処理装置からのデータ→第 1 のサブ プロセッサによる処理→第 1 のメイ ンメモリ領域→第 2 のサブ プロセッサによる処理→第 2 のメインメモリ領域、 という手順で 多段階処理が行われるときには、
第 1 のサブプロセッサのサブプロセッサキー : 0 1 0 0 、 第 1 のメインメモリ領域のアクセスキー : 0 1 0 0 、 第 2のサブプロセッサのサブプロセッサキー : 0 1 0 1 、 第 2のメインメモリ領域のアクセスキー : 0 1 0 1 のような設定のままだと、 第 2のサブプロセッサは第 1 のメイ ン メモリ領域にアクセスすることができない。 そこで、 第 2 のサブ プロセッサのキ一マスクを 0 0 0 1 にすることによ り、 第 2 のサ ブプロセッサによる第 1 のメイ ンメモリ領域へのアクセスを可 能にすることができる。
(ソフ トウェアセルの生成および構成)
第 1 図のネッ トワークシステムでは、情報処理装置 1 、 2 、 3 、 4間での分散処理のために、 情報処理装置 1 、 2 、 3 、 4間でソ フ トウェアセルが伝送される。 すなわち、 ある情報処理装置内の 情報処理コン トローラに含まれるメインプロセッサ 2 1 は、 コマ ンド、 プログラムおよびデータを含むソフ トウエアセルを生成し、 ネッ トワーク 9 を介して他の情報処理装置に送信する こ とによ つて、 処理を分散することができる。
第 3図に、 ソフ トウェアセルの構成の一例を示す。 この例のソ フ トウェアセルは、 全体として、 送信元 I D、 送信先 I D、 応答 先 I D、 セルイ ン夕一フエ一ス、 D M Aコマン ド、 プログラム、 およびデータによって構成される。
送信元 I Dには、 ソフ トウェアセルの送信元である情報処理装 置のネッ トワークァ ド レスおよび当該装置内の情報処理コ ン ト ローラの情報処理装置 I D、 さ らに、 その情報処理装置内の情報 処理コン トローラが備えるメイ ンプロセッサ 2 1 および各サブ プロセッサ 2 3 の識別子 (メインプロセッサ I Dおよびサブプロ セッサ I D ) が含まれる。
送信先 I Dおよび応答先 I Dには、 それぞれ、 ソフ トウエアセ ルの送信先である情報処理装置、 およびソフ トウエアセルの実行 結果の応答先である情報処理装置についての、 同じ情報が含まれ る。
セルインタ一フェースは、 ソフ トウエアセルの利用に必要な情 報であり、 グロ一バル I D、 必要なサブプロセッサの情報、 サン ドボックスサイズ、 および前回のソフ トウエアセル I Dから構成 される。
グロ一バル I Dは、 ネッ トワーク全体を通して当該のソフ トウ エアセルを一意的に識別できるものであり、 送信元 I D、 および ソフ トウェアセルの作成または送信の日時 (日付および時刻) に 基づいて作成される。
必要なサブプロセッサの情報は、 当該ソフ トウエアセルの実行 に必要なサブプロセッサの数が設定される。 サンドボックスサイ ズは、 当該ソフ トウェアセルの実行に必要なメインメモリ 2 6内 およびサブプロセッサ 2 3 の L S 2 4内のメモリ量が設定され る。
前回のソフ トウェアセル I Dは、 ス ト リーミングデータなどの シーケンシャルな実行を要求する 1 グループのソフ トウエアセ ル内の、 前回のソフ トウェアセルの識別子である。
ソフ トウェアセルの実行セクショ ンは、 D M Aコマンド、 プロ グラムおよびデータから構成される。 D M Aコマン ドには、 プロ グラムの起動に必要な一連の D M Aコマン ドが含まれ、 プログラ ムには、 サブプロセッサ 2 3 によって実行されるサブプロセッサ プログラムが含まれる。 ここでのデ一夕は、 このサブプロセッサ プログラムを含むプログラムによって処理されるデータであ る。 さ らに D M Aコマン ドには、 ロー ドコマン ド 、 キ Vク nマン F 、 機能プロダラム実行コマンド、 ステータス要求コマン H 、 あ びステ一夕ス返信コマンドが含まれる。
ロード 7ンドは、 メインメモリ 2 6 内の情報をサブプ πセッ サ 2 3内の L S 2 4に口一ドするコマン ドであり π ― マン 自体のほかに、 メイ ンメモリ ア ドレス、 サブプ口セッサ I Dお よび L Sァ ドレスを含む。 メイ ンメモリア ドレスは、 '1 報の ϋ― ド元であるメイ ンメモリ 2 6 内の所定頜域のア ドレスを示す。 サ ブプロセッサ I Dおよび L Sア ドレスは、 情報のロー ド先で る サブプロセッサ 2 3 の識別子および L S 2 4のア ドレスを示す。
キックコマン ドは、 プログラムの実行を開始するコマンドであ り、 キックコマン ド自体のほかに、 サブプロセッサ I Dおよびプ ログラムカウンタを含む。 サブプロセッサ I Dは、 キック対象の サブプロセッサ 2 3 を識別し、 プログラムカウンタは、 プ Dグラ ム実行用プ Dダラムカウン夕のためのァ ドレスを与える。
機能プログラム実行コマンドは、 後述のように、 ある倩報処理 装置が他の情報処理装置に対して、 機能プログラムの実佇を要求 するコマン である。 機能プログラム実行コマンドを受信した情 報処理装置内の情報処理コン トローラは、 後述の機能プロ グラム
I Dによつて 、 動すべき機能プログラムを識別する。
ステ一夕ス要求コマンドは、 送信先 I Dで示される情幸艮処理お 置の現在の動作状態 (状況) に関する装置情報を、 応答先 I Dで 示される情報処理装置宛に送信要求するコマンドである。 機能プ ログラムについては後述するが、 第 6図に示す情報処理コ ン P ーラのメイ ンメモリ 2 6 が記憶するソフ トウェアの構成図にお いて機能プログラムにカテゴライズされるプログラムである。 機 能プログラムは、 メインメモリ 2 6 にロードされ、 メイ ンプロセ ッサ 2 1 によ り実行される。
ステ―タス返信コマンドは、 上記のステータス要求コマン を 受信した情報処理装置が、 自身の装置情報を当該ステ一夕ス要求
3マン ドに含まれる応答先 I Dで示される情報処理装置に Jib-答 するコマン ドである。 ステータス返信コマンドは、 実行セクシ 3 ンの 7 夕領域に装置情報を格納する。
第 4図に、 D M Aコマンドがステータス返信コマン ドである場 合におけるソフ トウエアセルのデ一夕領域の構造を示す。
情報処理装置 I Dは、 情報処理コントローラを備える情報処理 装置を識別するための識別子であり、 ステータス返信コマンド、を 送信する情報処理装置の I Dを示す。 情報処理装置 I D ま 、 電源 投入時、 その情報処理装置内の情報処理コントローラに含まれる メインプロセッサ 2 1 によって、 電源投入時の日時、 情報処理装 置のネッ 卜ワークァ ド レスおよび情報処理装置内の情報処理 =1 ン トローラに含まれるサブプロセッサ 2 3 の数などに基づいて 生成される。
情報処理装置種別 I Dには、 当該の情報処理装置の特徴を表す 値が含まれる。 情報処理装置の特徴とは、 例えば、 後述のハード ディスク レコーダ、 P DA (P e r s o n a l D i g i t a 1 A s s i s t a n t s ) , ポータブル C D ( C o m p a c t D i s c ) プレーヤなどである。 また、 情報処理装置種別 I Dは、 映像音声記録、 映像音声再生など、 情報処理装置の機能を表すち のであってもよい。 情報処理装置の特徴や機能を表す値は予め决 定されているものとし、 情報処理装置種別 I Dを読み出すことに より、 当該情報処理装置の特徴や機能を把握することが可能で る。
M S (マスター/"スレーブ) ステータスは、 後述のように情幸艮 処理装置がマスター装置またはスレーブ装置のいずれで動作し ているかを表すもので、 これが 0に設定されている場合にはマス 夕一装置として動作していることを示し、 1 に設定されている場 合にはスレーブ装置として動作していることを示す。
メイ ンプロセッサ動作周波数は、 情報処理コン トローラ内のス イ ンプロセッサ 2 1の動作周波数を表す。 メイ ンプロセッサ使用 率は、 メイ ンプロセッサ 2 1で現在動作している全てのプロダラ ムについての、 メインプロセッサ 2 1での使用率を表す。 メイ ン プロセッサ使用率は、 対象メイ ンプロセッサの全処理能力に対す る使用中の処理能力の比率を表した値で、 例えばプロセッサ処理 能力評価のための単位である M I P Sを単位として算出され、 ま たは単位時間あたりのプロセッサ使用時間に基づいて算出され る。 後述のサブプロセッサ使用率についても同様である。
サブプロセッサ数は、 当該の情報処理コントローラが備えるサ ブプロセッサ 2 3の数を表す。 サブプロセッサ I Dは、 当該の情 報処理コン トローラ内の各サブプロセッサ 2 3を識別するため の識別子である。
サブプロセッサステータスは、 各サブプロセッサ 2 3の状態を 表すものであり、 u n u s e d , r e s e r v e d , b u s yな どの状態がある。 u n u s e dは、 当該のサブプロセッサが現在 使用されてなく、 使用の予約もされていないことを示す。 r e s e r v e dは、 現在は使用されていないが、 予約されている状態 を示す。 b u s yは、 現在使用中であることを示す。
サブプロセッサ使用率は、 当該のサブプロセッサで現在実行し ている、 または当該のサブプロセッサに実行が予約されているプ ログラムについての、 当該サブプロセッサでの使用率を表す。 す なわち、 サブプロセッサ使用率は、 サブプロセッサステータスが b u s yである場合には、 現在の使用率を示し、 サブプロセッサ ステータスが r e s e r v e dである場合には、 後に使用される 予定の推定使用率を示す。
サブプロセッサ I D、 サブプロセッサステータスおよびサブプ 口セッサ使用率は、 1つのサブプロセッサ 2 3に対して一組設定 され、 1つの情報処理コン トローラ内のサブプロセッサ 2 3に対 応する組数が設定される。
メインメモリ総容量およびメイ ンメモリ使用量は、 それぞれ、 当該の情報処理コン トローラに接続されているメイ ンメモリ 2
6の総容量および現在使用中の容量を表す。 外部記録部数は、 当該の情報処理コントローラに接続されてい る外部記録部 2 8の数を表す。 外部記録部 I Dは、 当該の情報処 理コン ト ローラに接続されている外部記録部 2 8 を一意的に識 別する情報である。 外部記録部種別 I Dは、 当該の外部記録部の 種類 (例えば、 ハー ドディスク、 C D土 R W、 D V D 土 R W、 モリディスク、 S R A M、 R O Mなど) を表す。
外部記録部総容量および外部記録部使用量は、 それぞれ、 外部 記録部 I Dによって識別される外部記録部 2 8 の総容量および 現在使用中の容量を表す。
外部記録部 I D、 外部記録部種別 I D、 外部記録部総容量およ ぴ外部記録部使用量は、 1 つの外部記録部 2 8 に対して一組設定 されるものであり、 当該の情報処理コントローラに接続されてい る外部記録部 2 8の数の組数だけ設定される。 すなわち、 1つの 情報処理コ ン トローラに複数の外部記録部が接続されている場 合、 各々の外部記録部には異なる外部記録部 I Dが割り当てられ、 外部記録部種別 I D、 外部記録部総容量および外部記録部使用量 も別々に管理される。
(ソフ トウエアセルの実行)
ある情報処理装置内の情報処理コン ト ローラに含まれるメイ ンプロセッサ 2 1 は、 以上のような構成のソフ トウエアセルを生 成し、 ネッ 卜ワーク 9 を介して他の情報処理装置および当該装置 内の情報処理コントローラに送信する。 送信元の情報処理装置、 送信先の情報処理装置、 応答先の情報処理装置、 および各装置内 の情報処理コン トローラは、 それぞれ、 上記の送信元 I D、 送信 先 I Dおよび応答先 I Dによって識別される。
ソフ トウェアセルを受信した情報処理装置内の情報処理コ ン トロ一ラに含まれるメイ ンプロセッサ 2 1 ¾:、 そのソフ トウエア セルをメイ ンメモリ 2 6 に格納する。 さら(こ、 送信先のメイ ンプ 口セッサ 2 1 は、 ソフ トウェアセルを読み tBし、 それに含まれる D M Aコマンドを処理する。
具体的に、 送信先のメインプロセッサ 2 L は、 まず、 ロー ドコ マンドを実行する。 これによつて、 ロード 3マン ドで指示された メインメモリアドレスから、 口一 ドコマン ドに含まれるサブプロ セッサ I Dおよび L S ァ ドレスで特定され るサブプロセッサ内 の L S 2 4の所定領域に、 情報がロー ドされる。 こ こでロー ドさ れる情報は、 受信したソフ トウエアセルに^"まれるサブプロセッ サプログラムまたはデータ、 あるいはその teの指示されたデータ である。
次に、 メイ ンプロセッサ 2 1 は、 キックコマン ドを、 これに含 まれるサブプロセッサ I Dで指示されたサブプロセッサに、 同様 にキッ クコマン ドに含まれるプログラム力 ゥン夕 と共に出力す る。
指示されたサブプロセッサは、 そのキック コマン ドおよびプロ グラムカウンタに従って、 サブプロセッサプログラムを実行する。 そして、 実行結果をメインメモリ 2 6 に格 內した後、 実行を完了 したことをメイ ンプロセッサ 2 1 に通知する。
なお、 送信先の情報処理装置内の情報処理コン トローラにおい てソフ トウエアセルを実行するプロセッサ はサブプロセッサ 2 3 に限定されるものではなく、 メイ ンプロセッサ 2 1 がソフ トゥ エアセルに含まれる機能プログラムなどの メイ ンメモ リ用プロ グラムを実行するように指定することも可言 である。
この場合には、 送信元の情報処理装置は、 送信先の情報処理装 置宛に、 サブプロセッサプログラムの代わりに、 メインメモリ用 プログラムおよびそのメイ ンメモリ用プログラムによって処理 されるデータを含み、 D M Aコマン ドがロードコマンドであるソ フ トウェアセルを送信し、 メインメモリ 2 6 にメインメモリ用プ ログラムおよびそれによつて処理されるデータを記憶させる。 次 に、 送信元の情報処理装置は、 送信先の情報処理装置宛に、 送信 先の情報処理装置内の情報処理コン ト ローラについてのメイ ン プロセッサ I D、 メインメモリア ドレス、 メインメモリ用プログ ラムを識別するための後述の機能プログラム I Dなどの識別子、 およびプログラムカウンタを含み、 D M Aコマンドがキックコマ ン ドまたは機能プログラム実行コマン ドであるソフ トウェアセ ルを送信して、 メイ ンプロセッサ 2 1 に当該メインメモリ用プロ グラムを実行させる。
以上のように、 この発明のネッ トワークシステムでは、 送信元 の情報処理装置は、 サブプロセッサプログラムまたはメインメモ リ用プログラムをソフ トウェアセルによって送信先の情報処理 装置に送信するとともに、 当該サブプロセッサプログラムを送信 先の情報処理装置内の情報処理コン ト ローラに含まれるサブプ 口セッサ 2 3 にロー ドさせ、 当該サブプロセッサプログラムまた は当該メイ ンメモリ用プログラムを送信先の情報処理装置に実 行させることができる。
送信先の情報処理装置内の情報処理コン トローラでは、 受信し たソフ トウェアセルに含まれるプログラムがサブプロセッサプ ログラムである場合には、 当該サブプロセッサプログラムを指定 されたサブプロセッサにロードさせる。 そして、 ソフ トウェアセ ルに含まれるサブプロセッサプログラムまたはメイ ンメモリ用 プログラムを実行させる。
したがって、 ユーザが送信先の情報処理装置を操作しなくても 自動的に、 当該サブプロセッサプログラムまたは当該メイ ンメモ リ用プログラムを送信先の情報処理装置内の情報処理コン ト 口 —ラに実行させることができる。
このようにして情報処理装置は、 自装置内の情報処理コント口 ーラがサブプロセッサプログラムまたは機能プログラムなどの メインメモリ用プログラムを有していない場合には、 ネッ トヮ一 クに接続された他の情報処理装置からそれらを取得することが できる。 さ らに、 各サブプロセッサ間では D M A方式によりデー 夕転送を行い、 また上述したサンドボックスを使用することによ つて、 1つの情報処理コン トローラ内でデータを多段階に処理す る必要がある場合でも、 高速かつ高セキュリティ に処理を実行す ることができる。
〔ネッ トワークシステムとしての分散処理:第 5図〜第 1 5図〕 ソフ トウェアセルの使用による分散処理の結果、 第 5図の上段 に示すよう にネッ トワーク 9 に接続されている複数の情報処理 装置 1 、 2 、 3 、 4は、 第 5図の下段に示すように、 仮想的な 1 台の情報処理装置 7 として動作する。 ただし、 そのためには、 以 下のような構成によって、 以下のような処理が実行される必要が ある。
(システムのソフ トウエア構成とプログラムのロード) 第 6図に、 個々の情報処理コン トローラのメイ ンメモリ 2 6が 記憶するソフ トウェアの構成を示す。 これらのソフ トウェア (プ ログラム) は、 情報処理装置に電源が投入される前においては、 当該の情報処理コン トローラに接続される外部記録部 2 8 に記 録されているものである。
各プログラムは、 機能または特徴によって、 制御プログラム、 機能プログラムおよびデバイス ドライバにカテゴライズされる。 制御プログラムは、 各情報処理コントローラが同じものを備え、 各情報処理コン トローラのメインプロセッサ 2 1 が実行するも ので、 後述の M S (マスタ一/スレーブ) マネージャおよび能力 交換プログラムを含む。
機能プログラムは、 メインプロセッサ 2 1 が実行するもので、 記録用、 再生用、 素材検索用など、 情報処理コン トローラごとに 情報処理装置に応じたものが備えられる。
デバイス ドライバは、 情報処理コン トローラ (情報処理装置) の入出力 (送受信) 用で、 放送受信、 モニタ出力、 ビッ トス トリ ーム入出力、 ネッ トワーク入出力など、 情報処理コン トローラご とに情報処理装置に応じたものが備えられる。
ケーブルの差し込みなどによって情報処理装置が物理的にネ ッ トワーク 9 に接続された状態で、 情報処理装置に主電源が投入 され、 情報処理装置が電気的 ·機能的にもネッ トワーク 9 に接続 されると、 その情報処理装置の情報処理コントローラのメイ ンプ 口セッサ 2 1 は、 制御プログラムに属する各プログラム、 および デバイス ドライバに属する各プログラムを、 メインメモリ 2 6 に 口一 ドする。
口一 ド手順としては、 メインプロセッサ 2 1 は、 まず、 D C 2 7 に読み出し命令を実行させることによって、 外部記録部 2 8か らプログラムを読み出し、 次に、 D M A C 2 5 に書き込み命令を 実行させることによって、 そのプログラムをメインメモリ 2 6 に 書き込む。 機能プログラムに属する各プログラムについては、 必要なとき に必要なプログラムだけをロー ドするように構成してもよく、 ま たは、 他のカテゴリ に属するプログラムと同様に、 主電源投入直 後に各プログラムをロー ドするように構成してもよい。
ここで、 機能プログラムに属する各プログラムは、 ネッ トヮ一 クに接続された全ての情報処理装置の外部記録部 2 8 に記録さ れている必要はなく、 いずれか 1 つの情報処理装置の外部記録部 2 8 に記録されていれば、 前述の方法によって他の情報処理装置 からロー ドすることができるので、 結果的に第 5 図の下段に示す ように、 仮想的な 1台の情報処理装置 7 として機能プログラムを 実行することができる。
第 3図のソフ トウエアセルに示したように、 機能プログラムに は、 プログラムごとにプログラムを一意的に識別できる識別子が、 機能プログラム I Dとして割り当てられる。 機能プログラム I D は、 機能プログラムの作成の段階で、 作成日時や情報処理装置 I
Dなどから決定される。
メイ ンプロセッサ 2 1 は、 自身が動作する情報処理装置の 置 情報 (動作状態に関する情報) を格納するための領域をメィンメ モリ 2 6 に確保し、 当該情報を自装置の装置情報テ一ブルとして 記録する。 ここでの装置情報は、 第 4図に示した情報処理装置 I
D以下の各情報である。
(システムにおけるマスター Zスレーブの決定)
上述したネッ トワークシステムでは、 ある情報処 ¾装置への主 電源投入時、 その情報処理装置の情報処理コン ト口ーラのメィン プロセッサ 2 1 は、 マスター スレーブマネージャ (以下 、 M S マネージャ) をメインメモリ 2 6 にロー ドし、 実行する。 M Sマネージャは、 自身が動作する情報処理装置がネッ トヮー ク 9に接続されていることを検知すると、 同じネッ トワーク 9 に 接続されている他の情報処理装置の存在を確認する。 ここでの 「接続」 または 「存在」 は、 上述したように、 情報処理装置が物 理的にネッ トワーク 9 に接続されているだけでなく、 電気的 · 機 能的にもネッ トワーク 9 に接続されていることを示す。
また、 自身が動作する情報処理装置を自装置、 他の情報処理装 置を他装置と称する。 当該装置も、 当該情報処理装置を示すもの とする。
M Sマネージャが同じネッ トワーク 9 に接続されている他の 情報処理装置の存在を確認する方法を以下に示す。
M Sマネージャは、 D M Aコマン ドがステータス要求コマンド であり、 送信元 I Dおよび応答先 I Dが当該情報処理装置で、 送 信先 I Dを特定しないソフ トウェアセルを生成して、 当該情報処 理装置が接続されたネッ トワーク上に送信して、 ネッ トワーク接 続確認用のタイマーを設定する。 タイマーのタイムァゥ ト時間は、 例えば 1 0分とされる。
当該ネッ ト ワークシステム上に他の情報処理装置が接続され ている場合、 その他装置は、 上記ステータス要求コマン ドのソフ トウエアセルを受信し、 上記応答先 I Dで特定されるステータス 要求コマン ドを発行した情報処理装置に対して、 D M Aコマンド がステータス返信コマンドで、 かつデータとして自身 (その他装 置) の装置情報を含むソフ トウェアセルを送信する。 このステー タス返信コマン ドのソフ トウエアセルには、 少なく とも当該他装 置を特定する情報 (情報処理装置 I D、 メインプロセッサに関す る情報、 サブプロセッサに関する情報など) および当該他装置の M Sステータスが含まれる。
ステータス要求コマン ドを発行した情報処理装置の M Sマネ ージャは、 上記ネッ トワーク接続確認用のタイマーがタイムァゥ トするまで、 当該ネッ トワーク上の他装置から送信されるステー タス返信コマン ドのソフ トウエアセルの受信を監視する。 その結 果、 M Sステータス = 0 (マスタ一装置) を示すステータス返信 コマンドが受信された場合には、 自装置の装置情報テーブルにお ける M Sステータスを 1 に設定する。 これによつて、 当該装置は、 スレーブ装置となる。
一方、 上記ネッ トワーク接続確認用のタイマ一がタイムアウ ト するまでの間にステータス返信コマン ドが全く受信されなかつ た場合、 または M Sステータス = 0 (マスター装置) を示すステ 一タス返信コマン ドが受信されなかった場合には、 自装置の装置 情報テ一ブルにおける M Sステータスを 0 に設定する。 これによ つて、 当該装置は、 マスタ一装置となる。
すなわち、 いずれの装置もネッ トワーク 9 に接続されていない 状態、 またはネッ トワーク 9上にマスタ一装置が存在しない状態 において、 新たな情報処理装置がネッ トワーク 9 に接続されると、 当該装置は自動的にマスター装置として設定される。 一方、 ネッ トワーク 9上に既にマスター装置が存在する状態において、 新た な情報処理装置がネッ トワーク 9 に接続されると、 当該装置は自 動的にスレーブ装置として設定される。
マスター装置およびスレーブ装置のいずれについても、 M Sマ ネージャは、 定期的にステータス要求コマンドをネッ トワーク 9 上の他装置に送信してステータス情報を照会することにより、 他 装置の状況を監視する。 その結果、 ネッ トワーク 9 に接続されて いる情報処理装置の主電源が遮断され、 またはネッ トワーク 9か ら情報処理装置が切り離されることによ り、 あらかじめ判定用に 設定された所定期間内に特定の他装置からステータス返信コマ ンド'が返信されなかった場合や、 ネッ 卜ワーク 9 に新たな情報処 理装置が接続された場合など、 ネッ トワーク 9 の接続状態に変化 がめつた場合には、 その情報を後述の能力交換プログラムに通知 する
(マスタ一装置およびスレーブ装置における装置情報の取得) メインプロセッサ 2 1 は、 M Sマネージャから、 ネッ トワーク 9上の他装置の照会および自装置の M Sステ一タスの設定完了 の通知を受けると、 能力交換プログラムを実行する。
能力交換プログラムは、 自装置がマスタ一装置である場合には、 ネッ トワーク 9に接続されている全ての他装置の装置情報、 すな わち各スレーブ装置の装置情報を取得する。
他装置の装置情報の取得は、 上述したように、 D M Aコマンド がステータス要求コマン ドであるソフ トウエアセルを生成して 他装置に送信し、 その後、 D M Aコマンドがステータス返信コマ ンドで、 かつデ一夕として他装置の装置情報を含むソフ トウエア セルを他装置から受信することによって可能である。
能力交換プログラムは、 マスター装置である自装置の装置情報 テーブルと同様に、 ネッ トワーク 9 に接続されている全ての他装 置 (各スレーブ装置) の装置情報を格納するための領域を自装置 のメインメモリ 2 6 に確保し、 これら情報を他装置 (スレーブ装 置) の装置情報テ一ブルとして記録する。
すなわち、 マスタ一装置のメインメモリ 2 6 には、 自装置を含 むネッ トワーク 9 に接続されている全ての情報処理装置の装置 情報が、 装置情報テーブルとして記録される。
一方、 能力交換プログラムは、 自装置がスレーブ装置である場 合には、 ネッ トワーク 9 に接続されている全ての他装置の装置情 報、 すなわちマスタ一装置および自装置以外の各スレーブ装置の 装置情報を取得し、 これら装置情報に含まれる情報処理装置 I D および M Sステータスを、 自装置のメインメモリ 2 6 に記録する。 すなわち、 スレーブ装置のメイ ンメモリ 2 6 には、 自装置の装 置情報が、 装置情報テーブルとして記録されるとともに、 自装置 以外のネッ トワーク 9 に接続されているマスタ一装置および各 スレーブ装置についての情報処理装置 I Dおよび M Sステ一夕 スが、 別の装置情報テーブルとして記録される。
また、 マスタ一装置およびスレーブ装置のいずれについても、 能力交換プログラムは、 上記のように M Sマネージャから、 新た にネッ トワーク 9 に情報処理装置が接続されたこ とが通知され たときには、 その情報処理装置の装置情報を取得し、 上述したよ うにメインメモリ 2 6 に記録する。
なお、 M Sマネージャおよび能力交換プログラムは、 メインプ 口セッサ 2 1で実行されることに限らず、 いずれかのサブプロセ ッサ 2 3で実行されてもよい。 また、 M Sマネージャおよび能力 交換プログラムは、 情報処理装置の主電源が投入されている間は 常時動作する常駐プログラムであることが望ましい。
(情報処理装置がネッ トワークから切断された場合)
マスタ一装置およびスレーブ装置のいずれについても、 能力交 換プログラムは、 上記のように M Sマネージャから、 ネッ トヮ一 ク 9に接続されている情報処理装置の主電源が遮断され、 または ネッ トワーク 9から情報処理装置が切り離されたことが通知さ れたときには、 その情報処理装置の装置情報テーブルを自装置の メインメモリ 2 6から削除する。
さらに、 このようにネッ トワーク 9から切断された情報処理装 置がマスタ一装置である場合には、 以下のような方法によって、 新たにマスター装置が決定される。
具体的に、 例えば、 ネッ トワーク 9から切断されていない情報 処理装置は、 それぞれ、 自装置および他装置の情報処理装置 I D を数値に置き換えて、 自装置の情報処理装置 I Dを他装置の情報 処理装置 I Dと比較し、 自装置の情報処理装置 I Dがネッ トヮ一 ク 9から切断されていない情報処理装置中で最小である場合、 そ のスレーブ装置は、 マスタ一装置に移行して、 M Sステータスを 0 に設定し、 マスタ一装置として、 上述したように、 ネッ トヮ一 ク 9 に接続されている全ての他装置 (各スレーブ装置) の装置情 報を取得して、 メイ ンメモリ 2 6 に記録する。
(装置情報に基づく分散処理)
第 5 図の下段に示したよう にネッ ト ワーク 9 に接続されてい る複数の情報処理装置 1 、 2 、 3 、 4を仮想的な 1台の情報処理 装置 7 として動作させるためには、 マスター装置がユーザの操作 およびスレーブ装置の動作状態を把握する必要がある。
第 7 図に、 4台の情報処理装置が仮想的な 1台の情報処理装置 7 として動作する様子を示す。 情報処理装置 1がマス夕一装置、 情報処理装置 2 、 3 、 4がスレーブ装置 A、 B 、 Cとして、 動作 しているものとする。
ユーザがネッ トワーク 9 に接続されている情報処理装置を操 作した場合、 操作対象がマスター装置 1 であれば、 その操作情報 は、 マスタ一装置 1 において直接把握され、 操作対象がスレーブ 装置であれば、 その操作情報は、 操作されたスレーブ装置からマ スター装置 1 に送信される。 すなわち、 ユーザの操作対象がマス 夕一装置 1 とスレーブ装置のいずれであるかにかかわらず、 その 操作情報は常にマス夕一装置 1 において把握される。 操作情報の 送信は、 例えば、 D M Aコマン ドが操作情報送信コマン ドである ソフ トウエアセルによって行われる。
そして 、 マスタ一装置 1内の情報処理コン トローラ 1 1 に含ま れるメイ ンプロセッサ 2 1 — 1 は、 その操作情報に従って 実行 する機能プログラムを選択する。 その際、 必要であれば、 マス夕 一装置 1 内の情報処理コ ン トローラ 1 1 に含まれるメイ ンプ Π セッサ 2 1 - 1 は、 上記の方法によって自装置の外部記録部 2 8 一 1 2 8 — 2からメインメモリ 2 6 — 1 に機能プロダラムを □
— ドするが、 他の情報処理装置 (スレーブ装置) がマスタ 置
1 に機能プログラムを送信してもよい。
機能プログラムには、 その実行単位ごとに必要となる、 第 4図 に示した各情報として表される情報処理装置種別 I D、 メィ ンプ 口セッサまたはサブプロセッサの処理能力、 メインメモリ使 直、 外部記録部に関する条件などの、 装置に関する要求スぺックが規 定されている。
マスター装置 1 内の情報処理コン ト ローラ 1 1 に含まれるメ ィンプロセッサ 2 1 一 1 は、 各機能プログラムについて必要とな る上記要求スペックを読み出す。 また、 あらかじめ能力交換プロ グラムによってメイ ンメモリ 2 6 — 1 に記録された装置情報テ 一ブルを参照し、 各情報処理装置の装置情報を読み出す。 こで の装置情報は、 第 4図に示した情報処理装置 I D以下の各情報を 示し 、 メインプロセッサ、 サブプロセッサ、 メインメモリおよび 外部記録部に関する情報である。
マスタ一装置 1 内の情報処理コ ン トローラ 1 1 に含まれるメ インプロセッサ 2 1 一 1 は、 ネッ トワーク 9上に接続された各情 報処理装置の上記装置情報と、 機能プログラム実行に必要となる 上記要求スペックとを順次比較する。
そして、 例えば、 機能プログラムが録画機能を必要とする場合 には、 情報処理装置種別 I Dに基づいて、 録画機能を有する情報 処理装置のみを特定して抽出する。 さらに、 機能プログラムを実 行するために必要なメイ ンプロセッサまたはサブプロセッサの 処理能力、 メインメモリ使用量、 外部記録部に関する条件を確保 できるスレーブ装置を、 実行要求候補装置として特定する。 ここ で、 複数の実行要求候補装置が特定された場合には、 当該候補装 置から 1つの実行要求候補装置を特定して選択する。
実行要求するスレーブ装置が特定されたら、 マスタ一装置 1 内 の情報処理コン トローラ 1 1 に含まれるメイ ンプロセッサ 2 1 一 1 は、 その特定されたスレーブ装置について、 自装置内の情報 処理コ ン ト ローラ 1 1 に含まれるメイ ンメモリ 2 6 — 1 に記録 されている当該スレーブ装置の装置情報テーブルを更新する。 さらに、 マスター装置 1 内の情報処理コン トローラ 1 1 に含ま れるメインプロセッサ 2 1 — 1 は、 D M Aコマン ドがロー ドコマ ンドおよびキックコマンドであるソフ トウエアセルを生成し、 当 該ソフ トウエアセルのセルインタ一フェースに、 当該機能プログ ラムに関する必要なサブプロセッサの情報おょぴサン ドボック スサイズ (第 3図参照) を設定して、 上記実行要求されるスレー ブ装置に対して送信する。
機能プログラムの実行を要求されたスレーブ装置は、 その機能 プログラムを実行するとともに、 自装置の装置情報テーブルを更 新する。 その際、 必要であれば、 スレーブ装置内の情報処理コン
Dーラに含まれるメインプロセッサ 2 1 は、 上記の方法によつ て白装置の外部記録部 2 8からメイ ンメモリ 2 6 に機能プログ ラムをロー ドする。
機能プログラムの実行を要求されたスレーブ装置の外部記録 部 2 8 に、 必要な機能プログラムが記録されていない場合には、 他の情報処理装置が上記のメイ ンメモリ用プログラムとして当 該の機能プログラムを、 その機能プログラム実行要求先スレーブ 装置に送信するように、 システムを構成すればよい。
さ らに、 メインメモリ用プログラムと同様に、 サブプロセッサ プ グラムも、 必要であれば、 ソフ トウェアセルによって他の情 報処理装置に送信して、 他の情報処理装置のサブプロセッサ 2 3 に Πー ドさせ、 他の情報処理装置に実行させることができる。 機能プログラムの実行終了後、 機能プログラムを実行したスレ 一ブ装置内の情報処理コン トローラに含まれるメイ ンプロセッ サ 2 1 は、 終了通知をマスタ一装置 1 内の情報処理コントローラ
1 1 に含まれるメイ ンプロセッサ 2 1 ― 1 に送信するとともに、 自装置の装置情報テ一ブルを更新する。 マスター装置 1 内の情報 処理コントローラ 1 1 に含まれるメインプロセッサ 2 1 — 1 は、 その終了通知を受信して、 機能プログラムを実行したスレーブ装 置の装置情報テーブルを更新する。
マスター装置 1 内の情報処理コン トローラ 1 1 に含まれるメ ィンプロセッサ 2 1— 1 は、 自装置および他装置の装置情報テー ブルの参照結果から、 当該の機能プログラムを実行することがで る情報処理装置として、 自身を選択する場合もあり得る。 その 場合には、 マスター装置 1が当該の機能プログラムを実行する。 第 7 図の例で、 ユーザがスレーブ装置 A (情報処理装置 2 ) を 操作し、 当該操作に応じた機能プログラムを別のスレーブ装置 B (情報処理装置 3 ) が実行する場合につき、 第 8 図に以上の分散 処理の例を示す。
第 8 図の例では、 ユーザがスレーブ装置 Aを操作することによ つて、 スレーブ装置 Aを含むネッ トワークシステム全体の分散処 理が開始して、 まず、 スレーブ装置 Aは、 ステップ 8 1で、 その 操作情報をマスター装置 1 に送信する。
マスタ一装置 1 は、 ステップ 7 2 で、 その操作情報を受信し、 さらにステップ 7 3 に進んで、 自装置のメインメモリ 2 6 - 1 に 記録されている自装置および他装置の装置情報テーブルから、 各 情報処理装置の動作状態を調べて、 受信した操作情報に応じた機 能プログラムを実行することができる情報処理装置を選択する。 この例は、 スレーブ装置 Bが選択される場合である。
次に、 マスター装置 1 は、 ステップ 7 4で、 その選択したスレ —ブ装置 Bに対して機能プログラムの実行を要求する。
スレーブ装置 Bは、 ステップ 9 5で、 その実行要求を受信し、 さらにステップ 9 6 に進んで、 実行要求された機能プログラムを 実行する。
以上のように、 ユーザは、 1台の情報処理装置のみを操作する ことによって、 他の情報処理装置を操作することなく、 複数の情 報処理装置 1 、 2 、 3 、 4を仮想的な 1台の情報処理装置 7 とし て動作させることができる。
(各情報処理装置およびシステムの具体例)
ネッ トワーク 9 を介して互いに接続される情報処理装置 1 、 2 、 3 、 4は、 基本的に上記のような情報処理コン トローラ 1 1 、 1 2 、 1 3 、 1 4によって情報処理を行うものであれば、 どのよう なものでもよいが、 第 9図に、 その一例を示す。
この例では、 情報処理コン トローラ 1 1 を備える情報処理装置 1 は、 ハー ドディスク レコーダで、 第 1 0図に示すように、 ハー ドウエア構成としては、 第 1 図に示した外部記録部 2 8 - 1 とし て、 ハードディスクを内蔵し、 第 1 図に示した外部記録部 2 8— 2 として、 D V D土 Rノ R W、 C D土 R Z R W、 B 1 u - r a y D i s c (登録商標) などの光ディスクを装着できるよう に構成 されるとともに、 情報処理コン トローラ 1 1 のパス 2 9 — 1 に接 続されたバス 3 1 — 1 に、 放送受信部 3 2— 1 、 映像入力部 3 3 _ 1 、 音声入力部 3 4— 1 、 映像出力部 3 5— 1 、 音声出力部 3 6 _ 1 、 操作パネル部 3 7 _ 1 、 リモコン受光部 3 8 — 1 および ネッ トワーク接続部 3 9 — 1が接続されたものである。
放送受信部 3 2 - 1 、 映像入力部 3 3 — 1 および音声入力部 3 4 一 1 は、 放送信号を受信し、 または情報処理装置 1 の外部から 映像信号および音声信号を入力し、 それぞれ所定フォーマツ トの デジタルデータに変換して、 情報処理コントローラ 1 1 での処理 のためにバス 3 1 一 1 に送出するものであり、 映像出力部 3 5 - 1および音声出力部 3 6 — 1 は、 情報処理コン トローラ 1 1から バス 3 1 一 1 に送出された映像データおよび音声データを処理 して、 デジタルデータのまま、 またはアナログ信号に変換して、 情報処理装置 1 の外部に送出するものであり、 リモコン受光部 3 8— 1 は、 リモコン送信器 4 3 — 1からのリモコン (遠隔操作) 赤外線信号を受信するものである。
第 9図および第 1 0 図に示すように、 情報処理装置 (ハードデ イスク レコーダ) 1の映像出力部 3 5 — 1および音声出力部 3 6 一 1 には、 モニタ表示装置 4 1およびスピーカ装置 4 2が接続さ れる。
第 9図の例の、 情報処理コントローラ 1 2 を備える情報処理装 置 2 も、 ハー ドディスクレコーダで、 第 1 0図において括弧内に 参照番号を付して示すように、 情報処理装置 1 と同様に構成され たものである。 ただし、 例えば、 第 9図に示すように、 情報処理 装置 (ハー ドディスク レコーダ) 2には、 モニタ表示装置および スピーカ装置は接続されない。
情報処理装置 (ハー ドディスク レコーダ) 1および 2、 すなわ ち情報処理コ ン トローラ 1 1および 1 2 のソフ トウェア構成と しては、 第 1 1 図に示すように、 制御プログラムとして、 M Sマ ネージャおよび能力交換プログラムを備え、 機能プログラムとし て、 映像音声記録、 映像音声再生、 素材検索および番組録画予約 のためのプログラムを備え、デバイス ドライバとして、放送受信、 映像出力、 音声出力、 外部記録部入出力およびネッ トワーク入出 力のためのプログラムを備える。
第 9図の例の、 情報処理コントローラ 1 3 を備える情報処理装 置 3は、 P D A ( P e r s o n a l D i i t l A s s i s t a n t s ) で、 第 1 2図に示すように、 ハー ドウェア構成と しては、 第 1 図に示した外部記録部 2 8 — 5 として、 メモリ力一 ドディスクを装着できるように構成されるとともに、 情報処理コ ン トローラ 1 3のパス 2 9 — 3に接続されたバス 5 1 に、 液晶表 示部 5 2、 音声出力部 5 3、 カメラ部 5 4、 音声入力部 5 5、 キ —ポ一 ド部 5 6およびネッ トワーク接続部 5 7が接続されたも のである。 なお、 第 1図では内部を省略した情報処理コン トローラ 1 3は、 メインプロセッサ 2 1 — 3、サブプロセッサ 2 3 — 7 , 2 3 — 8, 2 3 - 9 , D MA C (ダイ レク トメモリアクセスコントローラ)
2 5 - 3 , D C (ディ スクコン トローラ) 2 7 — 3およびバス 2 9 一 3 を備え、 そのメインプロセッサ 2 1 — 3 は、 L S (ロー力 ルス トレージ) 2 2 — 3 を有し、 各サブプロセッサ 2 3 — 7, 2
3 — 8, 2 3 — 9は、 L S (ローカルス トレ一ジ) 2 4— 7 , 2
4 - 8 , 2 4 - 9 を有する。
情報処理装置 (P D A) 3、 すなわち情報処理コントローラ 1 3 のソフ トウェア構成としては、 第 1 3図に示すように、 制御プ ログラムとして、 M Sマネージャおよび能力交換プログラムを備 え、 機能プログラムとして、 映像音声記録、 映像音声再生、 電話 帳、 ワープロおよび表計算のためのプログラム、 および W e bプ ラウザを備え、 デバイス ドライバとして、 映像出力、 音声出力、 カメラ映像入力、 マイク音声入力およびネッ トワーク入出力のた めのプログラムを備える。
第 9図の例の、 情報処理コン トローラ 1 4を備える情報処理装 置 4は、 ポータブル C Dプレーヤで、 第 1 4図に示すように、 ノ、 一ドウエア構成としては、 第 1 図に示した外部記録部 2 8 — 6 と して、 C D ( C o m p a c t D i s c ) を装着できるように構 成されるとともに、 情報処理コン トローラ 1 4のパス 2 9 — 4に 接続されたパス 6 1 に、 液晶表示部 6 2、 音声出力部 6 3、 操作 ポタン部 6 4およびネッ トワーク接続部 6 5が接続されたもの である。
なお、 第 1 図では内部を省略した情報処理コン トローラ 1 4は、 メインプロセッサ 2 1 — 4、 サブプロセッサ 2 3 - 1 0, 2 3 - 1 1 , 2 3 — 1 2、 DMA C (ダイ レク トメモリ アクセスコン ト 口一ラ) 2 5 — 4、 D C (ディ スクコン トローラ) 2 7— 4およ びバス 2 9 — 4を備え、 そのメイ ンプロセッサ 2 1 — 4は、 L S (口一カルス トレ一ジ) 2 2— 4を有し、 各サブプロセッサ 2 3 — 1 0, 2 3 — 1 1, 2 3— 1 2は、 L S (ローカルス ト レージ) 2 4 - 1 0 , 2 4 - 1 1 , 2 4— 1 2を有する。
情報処理装置 (ポータブル C Dプレーヤ) 4、 すなわち情報処 理コン トローラ 1 4のソフ トウェア構成としては、 第 1 5図に示 すように、 制御プログラムとして、 M Sマネージャおよび能力交 換プログラムを備え、 機能プログラムとして、 音楽再生のための プログラムを備え、 デパイス ドライバとして、 音声出力、 C D制 御およびネッ トワーク入出力のためのプログラムを備える。
以上のような第 9図の例のネッ トワークシステムにおいて、 情 報処理装置 1、 3および 4がネッ トワーク 9上に接続されており、 情報処理装置 1がマスタ一装置 (M Sステータス = 0 ) として、 情報処理装置 3および 4がスレーブ装置 (M Sステータス = 1 ) として、 設定されているものとする。
この状態で、 新たに情報処理装置 2がネッ トワーク 9に接続さ れると、 上述した方法によって、 情報処理装置 2内の情報処理コ ン トローラ 1 2 に含まれるメイ ンプロセッサ 2 1 — 2で実行さ れている M Sマネージ は、 他の情報処理装置 1、 3および 4に M Sステータスを照会して、 情報処理装置 1が既にマスタ一装置 として存在することを認識し、 自装置 (情報処理装置 2 ) をスレ ーブ装置 (M Sステータス = 1 ) に設定する。 また、 マスター装 置に設定されている情報処理装置 1は、 新たに追加された情報処 理装置 2を含む各装置の装置情報を収集して、 メイ ンメモリ 2 6 一 1 内の装置情報テーブルを更新する。
このような状態で、 ユーザによってスレーブ装置である情報処 理装置 ( P D A ) 3で 2時間の放送番組の録画予約の操作が行わ れた場合を示す。
この場合、 スレーブ装置である情報処理装置 ( P D A ) 3 は、 ユーザから録画開始時刻、録画終了時刻、録画対象放送チャネル、 録画品質などの情報を含む録画予約情報の入力を受け付け、 当該 録画予約情報および D M Aコマン ドとしての録画予約コマン ド を含むソフ トウエアセルを生成して、 マス夕一装置である情報処 理装置 1 に送信する。
D M Aコマン ドが録画予約コマン ドであるソフ トウエアセル を受信した情報処理装置 1 内の情報処理コン ト ローラ 1 1 に含 まれるメイ ンプロセッサ 2 1 一 1 は、 録画予約コマン ドを読み出 すとともに、 メインメモリ 2 6— 1 内の装置情報テーブルを参照 して、 当該録画予約コマン ドを実行可能な情報処理装置を特定す る。
まず、 メインプロセッサ 2 1 — 1 は、 装置情報テーブルに含ま れる各情報処理装置 1、 2、 3、 4の情報処理装置種別 I Dを読 み出して、 録画予約コマンドを実行可能な情報処理装置を抽出す る。 ここでは、 録画機能を示す情報処理装置種別 I Dを有する情 報処理装置 1、 2が候補装置として特定され、 情報処理装置 3、 4は候補装置から除外される。
次に、 マスタ一装置である情報処理装置 1 内の情報処理コント ローラ 1 1 に含まれるメイ ンプロセッサ 2 1 — 1 は、 装置情報テ 一ブルを参照して、 情報処理装置 1、 2 のメインプロセッサまた はサブプロセッサの処理能力, メインメモリ に関する情報などの、 装置に関する情報を読み出し、 情報処理装置 1、 2が録画予約コ マン ドの実行に必要な要求スペックを満足するか否かを判断す る。 ここでは、 情報処理装置 1、 2 とも、 録画予約コマンドの実 行に必要な要求スペックを満足するものとする。
さらに、 メインプロセッサ 2 1 — 1 は、 装置情報テーブルを参 照して、 情報処理装置 1、 2の外部記録部に関する情報を読み出 し、 外部記録部の空き容量が当該録画予約コマンドの実行に必要 な容量を満足するか否かを判断する。 情報処理装置 1、 2は八一 ドディスクレコーダであるので、 それぞれハー ドディスク 2 8 — 1、 2 8 — 3の、 総容量と使用量との差分が、 それぞれの空き容 量に相当する。
この場合、 情報処理装置 1 のハー ドディスク 2 8 - 1 の空き容 量が、 録画時間に換算して 1 0分であり、 情報処理装置 2のハー ドディスク 2 8— 3の空き容量が、 録画時間に換算して 2 0時間 であるとする。
このとき、 マスター装置である情報処理装置 1 内の情報処理コ ン トロ一ラ 1 1 に含まれるメイ ンプロセッサ 2 1 — 1 は、 当該録 画予約コマン ドの実行に必要な 2時間分の空き容量を確保でき る情報処理装置を、 実行要求先スレーブ装置として特定する。 その結果、 情報処理装置 2のみが実行要求先スレーブ装置とし て選択され、 マスタ一装置である情報処理装置 1 内の情報処理コ ントロ一ラ 1 1 に含まれるメイ ンプロセッサ 2 1 — 1 は、 ユーザ によ り操作された情報処理装置 3から送信された録画予約情報 を含む当該録画予約コマンドを情報処理装置 2 に送信して、 上記 2時間の放送番組の録画予約の実行を要求する。
そして、 情報処理装置 2内の情報処理コン トローラ 1 2 に含ま れるメインフ。口セッサ 2 1 — 2は、 当該録画予約コマン ドを解析 して、 録画に必要な機能プログラムを外部記録部であるハードデ イスク 2 8 — 3からメインメモリ 2 6 — 2 にロー ドし、 録画予約 情報に従って録画を実行する。 その結果、 録画予約された 2時間 の放送番組の映像音声データが情報処理装置 2 の八一 ドデイス ク 2 8 — 3 に記録される。
このように、 第 9 図の例のネッ トヮ一クシステムにおいても、 ユーザは、 1台の情報処理装置のみを操作することによって、 他 の情報処理装置を操作することなく、複数の情報処理装置 1 、 2 、 3 、 4を仮想的な 1台の情報処理装置 7 として動作させることが できる。

Claims

請求の範囲
1 . ネッ トワークを介して他の情報処理装置と接続され、 所定 のコマン ドに従って情報処理を行う情報処理装置であって、 前記他の情報処理装置から動作状態に関する情報を収集して、 装置情報テーブルを作成する能力交換手段と、
前記コマン ドが発生した際、 当該コマンドの実行に要する資源 に関する情報と、 前記装置情報テーブルの動作状態に関する情報 とを比較して、 当該コマンドを実行可能な情報処理装置を特定す る装置特定手段と、
を備えることを特徴とする情報処理装置。
2 . 前記能力交換手段は、 前記他の情報処理装置の情報処理能 力を収集して前記装置情報テーブルに保存し、
前記装置特定手段は、 前記コマン ドの実行に要する情報処理能 力と、 前記他の情報処理装置の情報処理能力とを比較して、 前記 コマン ドを実行可能な情報処理装置を特定する こ とを特徴とす る請求の範囲第 1項に記載の情報処理装置。
3 . 前記能力交換手段は、 前記他の情報処理装置のメモリ容量 を収集して前記装置情報テーブルに保存し、
前記装置特定手段は、 前記コマン ドの実行に要するメモリ容量 と、 前記他の情報処理装置のメモリ容量とを比較して、 前記コマ ン ドを実行可能な情報処理装置を特定することを特徴とする請 求の範囲第 1項に記載の情報処理装置。
4 . 前記能力交換手段は、 前記他の情報処理装置の外部記録手 段の容量を収集して前記装置情報テーブルに保存し、
前記装置特定手段は、 前記コマン ドの実行に要する外部記録手 段の容量と、 前記他の情報処理装置の外部記録手段の容量とを比 較して、 前記コマンドを実行可能な情報処理装置を特定すること を特徴とする請求の範囲第 1項に記載の情報処理装置。
5 . 前記能力交換手段は、 前記他の情報処理装置の機能を特定 可能な情報処理装置種別識別子を収集して前記装置情報テ一ブ ルに保存し、
前記装置特定手段は、 前記コマンドの実行に要する機能と、 前 記他の情報処理装置の情報処理装置種別識別子とを比較して、 前 記コマン ドを実行可能な情報処理装置を特定する ことを特徴と する請求の範囲第 1項に記載の情報処理装置。
6 . 前記能力交換手段は、 前記装置特定手段によって特定され た情報処理装置に対して前記コマン ドを送信して実行要求する ことを特徴とする請求の範囲第 1項に記載の情報処理装置。
7 . 前記能力交換手段は、 前記他の情報処理装置のネッ トヮー クへの接続が変更された場合に、 前記他の情報処理装置の動作状 態に関する情報を収集して、 前記装置情報テーブルを更新するこ とを特徴とする請求の範囲第 1項に記載の情報処理装置。
8 . 前記能力交換手段は、 所定の時間間隔で前記他の情報処理 装置の動作状態に関する情報を収集して、 前記装置情報テーブル を更新することを特徴とする請求の範囲第 1項に記載の情報処 理装置。
9 . 前記他の情報処理装置は、 前記コマンドを処理するプロセ ッサ手段を複数備え、 前記能力交換手段は、 前記複数のプロセッ サ手段各々の動作状態に関する情報を収集して、 前記装置情報テ 一ブルに保存する ことを特徴とする請求の範囲第 1 項に記載の 情報処理装置。 1 o . 請求の範囲第 1項に記載の情報処理装置は、 さ らに、 前 記ネッ トワーク上に他の情報処理装置が接続されたか否かを判 断するマネージャ手段を備え、
このマネージャ手段によって前記ネッ トワーク上に他の情報 処理装置が接続されたと判断された場合には、 前記能力交換手段 による処理を実行する ことを特徴とする請求の範囲第 1項に記 載の情報処理装置。
1 1 . ネッ トワークを介して他の情報処理装置と接続される情 報処理装置が所定のコマン ドに従って情報処理を行う情報処理 方法であって、
前記他の情報処理装置から動作状態に関する情報を収集して、 装置情報テーブルを作成する能力交換工程と、
前記コマン ドが発生した際、 当該コマン ドの実行に要する資源 に関する情報と、 前記装置情報テーブルの動作状態に関する情報 とを比較して、 当該コマン ドを実行可能な情報処理装置を特定す る装置特定工程と、
を備えることを特徴とする情報処理方法。
1 2 . 前記情報処理方法は、 さ らに、 前記装置特定工程で特定 された情報処理装置に対して前記コマン ドを送信して実行要求 する実行要求工程を備えることを特徴とする請求の範囲第 1 1 項に記載の情報処理方法。
1 3 . 前記他の情報処理装置は、 前記コマン ドを処理するプロ セッサ手段を複数備え、 前記能力交換工程では、 前記複数のプロ セッサ手段各々の動作状態に関する情報を収集して、 前記装置情 報テーブルに保存する ことを特徴とする請求の範囲第 1 1項に 記載の情報処理方法。
1 4 . 前記情報処理方法は、 さ らに、 前記ネッ トワーク上に他 の情報処理装置が接続されたか否かを判断する管理工程を備え、 この管理工程で前記ネッ トワーク上に他の情報処理装置が接 続されたと判断された場合には、 前記能力交換工程を実行するこ とを特徴とする請求の範囲第 1 1項に記載の情報処理方法。
1 5 . 一の情報処理装置と他の情報処理装置がネッ トワークを 介して接続され、 所定のコマン ドに従って情報処理を行う情報処 理システムであって、
前記一の情報処理装置は、 前記他の情報処理装置から動作状態 に関する情報を収集して、 装置情報テーブルを作成する能力交換 手段と、 前記コマン ドが発生した際、 当該コマン ドの実行に要す る資源に関する情報と、 前記装置情報テーブルの動作状態に関す る情報とを比較して、 当該コマン ドを実行可能な情報処理装置を 特定する装置特定手段とを備えることを特徴とする情報処理シ ステム。
1 6 . 前記能力交換手段は、 前記装置特定手段によって特定さ れた情報処理装置に対して前記コマン ドを送信して実行要求す ることを特徴とする請求の範囲第 1 5項に記載の情報処理シス テム。
1 7 . 前記他の情報処理装置は、 前記コマン ドを処理するプロ セッサ手段を複数備え、 前記能力交換手段は、 前記複数のプロセ ッサ手段各々の動作状態に関する情報を収集して、 前記装置情報 テーブルに保存することを特徴とする請求の範囲第 1 5項に記 載の情報処理システム。
1 8 . 前記一の情報処理装置は、 さ らに、 前記ネッ トワーク上 に他の情報処理装置が接続されたか否かを判断するマネージャ 手段を備え、 このマネージャ手段によって前記ネッ トワーク上に 他の情報処理装置が接続されたと判断された場合には、 前記能力 交換手段による処理を実行する こ とを特徴とする請求の範囲第 1 5項に記載の情報処理システム。
1 9 . 一の情報処理装置と他の情報処理装置がネッ トワークを 介して接続された情報処理システムにおいて所定のコマン ドに 従って情報処理を行うために、 前記一の情報処理装置が備えるコ ンピュー夕を、
前記他の情報処理装置から動作状態に関する情報を収集して、 装置情報テーブルを作成する能力交換手段、 および、 前記コマン ドが発生した際、 当該コマンドの実行に要する資源に関する情報 と、 前記装置情報テーブルの動作状態に関する情報とを比較して、 当 コマン ドを実行可能な情報処理装置を特定する装 特定手
として機能させるための情報処理用プログラム。
2 0 . 前記コンピュータを、 前記特定された情報処理装置に対 して前記コマン ドを送信して実行要求する手段と しても機能さ せる ことを特徴とする請求の範囲第 1 9項に記載の情報処理用 プ Dグラム。
2 1 . 前記他の情報処理装置は、 前記コマンドを処理するプ口 セッサ手段を複数備え、 前記情報処理用プログラムは、 刖記コン ピュ一夕を、 前記能力交換手段としては、 前記複数のプ Dセッサ 手段各々の動作状態に関する情報を収集して、 前記装置 報テ― ブルに保存する手段と して機能させる ことを特徴とする S冃求の 範囲第 1 9項に記載の情報処理用プログラム。
2 2 . 前記情報処理用プログラムは、 前記コンビュ―タを前記 ネッ トワーク上に他の情報処理装置が接続されたか否かを判断 するマネージャ手段としても機能させ、 このマネージャ手段とし ての機能によって前記ネッ トワーク上に他の情報処理装置が接 続されたと判断された場合には、 前記コンピュータを前記能力交 換手段と して機能させる ことを特徴とする請求の範囲第 1 9項 に記載の情報処理用プログラム。
PCT/JP2005/001866 2004-02-03 2005-02-02 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム WO2005076131A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/549,427 US8103771B2 (en) 2004-02-03 2005-02-02 Distributing processing apparatus, method, and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004026454 2004-02-03
JP2004-026454 2004-02-03

Publications (1)

Publication Number Publication Date
WO2005076131A1 true WO2005076131A1 (ja) 2005-08-18

Family

ID=34835850

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/001866 WO2005076131A1 (ja) 2004-02-03 2005-02-02 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム

Country Status (3)

Country Link
US (1) US8103771B2 (ja)
TW (1) TW200532466A (ja)
WO (1) WO2005076131A1 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7562143B2 (en) 2004-01-13 2009-07-14 International Business Machines Corporation Managing escalating resource needs within a grid environment
US7406691B2 (en) 2004-01-13 2008-07-29 International Business Machines Corporation Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
US7464159B2 (en) * 2004-01-14 2008-12-09 International Business Machines Corporation Managing analysis of a degraded service in a grid environment
US7552437B2 (en) 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
US7266547B2 (en) 2004-06-10 2007-09-04 International Business Machines Corporation Query meaning determination through a grid service
US7712100B2 (en) * 2004-09-14 2010-05-04 International Business Machines Corporation Determining a capacity of a grid environment to handle a required workload for a virtual grid job request
US7502850B2 (en) * 2005-01-06 2009-03-10 International Business Machines Corporation Verifying resource functionality before use by a grid job submitted to a grid environment
US7761557B2 (en) 2005-01-06 2010-07-20 International Business Machines Corporation Facilitating overall grid environment management by monitoring and distributing grid activity
US7590623B2 (en) 2005-01-06 2009-09-15 International Business Machines Corporation Automated management of software images for efficient resource node building within a grid environment
US7793308B2 (en) 2005-01-06 2010-09-07 International Business Machines Corporation Setting operation based resource utilization thresholds for resource use by a process
US7707288B2 (en) * 2005-01-06 2010-04-27 International Business Machines Corporation Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment
US7533170B2 (en) * 2005-01-06 2009-05-12 International Business Machines Corporation Coordinating the monitoring, management, and prediction of unintended changes within a grid environment
US7571120B2 (en) 2005-01-12 2009-08-04 International Business Machines Corporation Computer implemented method for estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms
US7562035B2 (en) 2005-01-12 2009-07-14 International Business Machines Corporation Automating responses by grid providers to bid requests indicating criteria for a grid job
US7472079B2 (en) * 2005-01-12 2008-12-30 International Business Machines Corporation Computer implemented method for automatically controlling selection of a grid provider for a grid job
JP2008146541A (ja) * 2006-12-13 2008-06-26 Fujitsu Ltd Dma転送システム、dmaコントローラ及びdma転送方法
US20080307134A1 (en) * 2007-06-05 2008-12-11 Geissler Andrew J I2C bus interface and protocol for thermal and power management support
US8479216B2 (en) * 2009-08-18 2013-07-02 International Business Machines Corporation Method for decentralized load distribution in an event-driven system using localized migration between physically connected nodes and load exchange protocol preventing simultaneous migration of plurality of tasks to or from a same node
US8479215B2 (en) * 2009-08-18 2013-07-02 International Business Machines Corporation Decentralized load distribution to reduce power and/or cooling costs in an event-driven system
KR101748318B1 (ko) * 2010-11-22 2017-06-27 삼성전자 주식회사 휴대 단말기의 어플리케이션 실행 방법 및 장치
US9135037B1 (en) 2011-01-13 2015-09-15 Google Inc. Virtual network protocol
US8874888B1 (en) 2011-01-13 2014-10-28 Google Inc. Managed boot in a cloud system
US8812586B1 (en) * 2011-02-15 2014-08-19 Google Inc. Correlating status information generated in a computer network
US9237087B1 (en) 2011-03-16 2016-01-12 Google Inc. Virtual machine name resolution
US8533796B1 (en) 2011-03-16 2013-09-10 Google Inc. Providing application programs with access to secured resources
US9063818B1 (en) 2011-03-16 2015-06-23 Google Inc. Automated software updating based on prior activity
US9075979B1 (en) 2011-08-11 2015-07-07 Google Inc. Authentication based on proximity to mobile device
US8966198B1 (en) 2011-09-01 2015-02-24 Google Inc. Providing snapshots of virtual storage devices
US8958293B1 (en) 2011-12-06 2015-02-17 Google Inc. Transparent load-balancing for cloud computing services
US8800009B1 (en) 2011-12-30 2014-08-05 Google Inc. Virtual machine service access
US8983860B1 (en) 2012-01-30 2015-03-17 Google Inc. Advertising auction system
US8996887B2 (en) 2012-02-24 2015-03-31 Google Inc. Log structured volume encryption for virtual machines
US8677449B1 (en) 2012-03-19 2014-03-18 Google Inc. Exposing data to virtual machines
US9069806B2 (en) 2012-03-27 2015-06-30 Google Inc. Virtual block devices
US9430255B1 (en) 2013-03-15 2016-08-30 Google Inc. Updating virtual machine generated metadata to a distribution service for sharing and backup

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0534123A (ja) * 1991-07-29 1993-02-09 Toshiba Corp 欠陥検査装置
JPH06250984A (ja) * 1993-02-23 1994-09-09 Hitachi Ltd 分散処理システム
JPH06266643A (ja) * 1993-03-17 1994-09-22 Yokogawa Electric Corp サーバプログラム管理方法
JPH09212467A (ja) * 1996-01-30 1997-08-15 Fujitsu Ltd 負荷分散制御システム
JP2000112908A (ja) * 1998-10-06 2000-04-21 Toshiba Corp 負荷分散dnsシステム
JP2002366533A (ja) * 2001-03-22 2002-12-20 Sony Computer Entertainment Inc コンピュータ・ネットワーク及びコンピュータ可読媒体
JP2004013866A (ja) * 2002-06-12 2004-01-15 Nec Corp 分散処理システム、タスク割り当て装置及びそれらに用いるタスク割当て方法並びにそのプログラム

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5031089A (en) * 1988-12-30 1991-07-09 United States Of America As Represented By The Administrator, National Aeronautics And Space Administration Dynamic resource allocation scheme for distributed heterogeneous computer systems
JPH05342123A (ja) 1992-06-09 1993-12-24 Nec Corp ネットワークシステムのコマンド転送方式
FR2727540B1 (fr) * 1994-11-30 1997-01-03 Bull Sa Outil d'aide a la repartition de la charge d'une application repartie
US6088516A (en) * 1995-03-30 2000-07-11 Kreisel; Glenn M. Method for cloning a source application with assignment of unique identifier to clone application
US6128657A (en) * 1996-02-14 2000-10-03 Fujitsu Limited Load sharing system
JPH09244940A (ja) * 1996-03-12 1997-09-19 Hitachi Ltd 分散計算機資源の管理方法
US5978560A (en) * 1997-11-07 1999-11-02 Xerox Corporation Load balancing of distributed printing systems using enhanced printer attributes
JP3966598B2 (ja) * 1998-03-04 2007-08-29 富士通株式会社 サーバ選択システム
US6327622B1 (en) * 1998-09-03 2001-12-04 Sun Microsystems, Inc. Load balancing in a network environment
US6535977B1 (en) * 1999-09-30 2003-03-18 Microsoft Corporation Replacing a unique identifier in a cloned computer system using program module that runs only once during the next boot sequence
US6314447B1 (en) * 1999-10-04 2001-11-06 Sony Corporation System uses local registry and load balancing procedure for identifying processing capabilities of a remote device to perform a processing task
US6728905B1 (en) * 2000-03-03 2004-04-27 International Business Machines Corporation Apparatus and method for rebuilding a logical device in a cluster computer system
JP2002091936A (ja) * 2000-09-11 2002-03-29 Hitachi Ltd 負荷分散装置及び負荷見積もり方法
US6809734B2 (en) 2001-03-22 2004-10-26 Sony Computer Entertainment Inc. Resource dedication system and method for a computer architecture for broadband networks
US6526491B2 (en) 2001-03-22 2003-02-25 Sony Corporation Entertainment Inc. Memory protection system and method for computer architecture for broadband networks
US6826662B2 (en) 2001-03-22 2004-11-30 Sony Computer Entertainment Inc. System and method for data synchronization for a computer architecture for broadband networks
US7093104B2 (en) 2001-03-22 2006-08-15 Sony Computer Entertainment Inc. Processing modules for computer architecture for broadband networks
JP2003248668A (ja) * 2002-02-26 2003-09-05 Hitachi Ltd データセンタ資源管理方法及び運用方法
US7418712B2 (en) * 2004-08-31 2008-08-26 Microsoft Corporation Method and system to support multiple-protocol processing within worker processes
US8140678B2 (en) * 2004-12-28 2012-03-20 Sap Ag Failover protection from a failed worker node in a shared memory system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0534123A (ja) * 1991-07-29 1993-02-09 Toshiba Corp 欠陥検査装置
JPH06250984A (ja) * 1993-02-23 1994-09-09 Hitachi Ltd 分散処理システム
JPH06266643A (ja) * 1993-03-17 1994-09-22 Yokogawa Electric Corp サーバプログラム管理方法
JPH09212467A (ja) * 1996-01-30 1997-08-15 Fujitsu Ltd 負荷分散制御システム
JP2000112908A (ja) * 1998-10-06 2000-04-21 Toshiba Corp 負荷分散dnsシステム
JP2002366533A (ja) * 2001-03-22 2002-12-20 Sony Computer Entertainment Inc コンピュータ・ネットワーク及びコンピュータ可読媒体
JP2004013866A (ja) * 2002-06-12 2004-01-15 Nec Corp 分散処理システム、タスク割り当て装置及びそれらに用いるタスク割当て方法並びにそのプログラム

Also Published As

Publication number Publication date
TW200532466A (en) 2005-10-01
US8103771B2 (en) 2012-01-24
US20060294218A1 (en) 2006-12-28

Similar Documents

Publication Publication Date Title
WO2005076131A1 (ja) 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム
KR101089965B1 (ko) 네트워크 시스템, 분산 처리 방법, 및 정보 처리 장치
KR20060043201A (ko) 정보 처리 시스템 및 정보 처리 방법과, 컴퓨터 프로그램
CN100534159C (zh) 信息处理系统以及信息处理方法
JP4599923B2 (ja) 情報処理システム及び情報処理方法、並びにコンピュータプログラム
KR101119870B1 (ko) 정보 처리 시스템 및 정보 처리 방법
KR101210114B1 (ko) 정보 처리 시스템, 정보 처리 방법, 및 컴퓨터 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
US7970137B2 (en) Content reproduction apparatus, content recording apparatus, network system, and content recording/reproduction method
EP1577771A2 (en) Information processing apparatus, information processing method, information processing system and information processing program
JP4349189B2 (ja) ネットワークシステム、番組録画予約方法および情報処理装置
JP2005339174A (ja) 情報処理システム及び情報処理方法、並びにコンピュータプログラム
JP2005339401A (ja) 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム
JP2005251163A (ja) 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム
JP2005267150A (ja) 情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP2005235246A (ja) サーバ装置
JP4552116B2 (ja) 録画システム、録画依頼装置および録画依頼方法、録画予約装置および録画予約方法、録画装置および録画方法、並びにプログラム
KR20060071069A (ko) 정보 처리 장치, 정보 처리 방법, 정보 처리 시스템 및정보 처리용 컴퓨터 프로그램
JP2005293418A (ja) 情報処理装置、ネットワークシステム、処理能力呈示方法および処理能力呈示用プログラム
JP2005301678A (ja) ネットワークシステム、代理表示方法、情報処理装置
JP2005332009A (ja) 情報処理装置および方法、記録媒体、並びにプログラム

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006294218

Country of ref document: US

Ref document number: 10549427

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWP Wipo information: published in national office

Ref document number: 10549427

Country of ref document: US

122 Ep: pct application non-entry in european phase