1. A magnetoresistive random access memory (MRAM) comprising:
a plurality of magnetic memory cell bodies in an array, where a magnetic memory cell body has a first resistance when a first variable magnetic orientation thereof is aligned with a second fixed magnetic orientation, and has a second resistance when the first variable magnetic orientation is anti-aligned with the second fixed magnetic orientation;
a plurality of bit lines wherein groups of magnetic memory cell bodies are coupled to bit lines, wherein the plurality of bit lines include at least a first bit line and a second bit line; and
a plurality of word lines, where word lines in the plurality of word lines wrap around multiple memory cell bodies such that a first word line individually wraps around only one memory cell body that is coupled to the first bit line and then individually wraps around only one memory cell body that is coupled to the second bit line.
2. The MRAM as defined in claim 1, wherein the magnetic memory cell bodies are giant magneto-resistance (GMR) cell bodies.
3. The MRAM as defined in claim 1, wherein the magnetic memory cell bodies are tunneling magneto-resistance (TMR) cell bodies.
4. The MRAM as defined in claim 1, wherein the MRAM device is embodied in a computer.
5. A method of selecting a magnetic memory cell from a plurality of magnetic memory cells in a magnetoresistive random access memory (MRAM), comprising:
passing current through a bit line corresponding to the magnetic memory cell;
allowing current to pass through a word row line that is electrically coupled to a word line of the magnetic memory cell; and
allowing current to pass through a word column line that is electrically coupled to a column line of the magnetic memory cell such that a word current passes through the word line of the magnetic memory cell.
6. The method as defined in claim 5, further comprising:
reading a stored content of the magnetic memory cell with the word current at a first current level by detecting a resistance of the bit line; and
storing data into the magnetic memory cell by providing the word current at a second current level higher than the first current level, wherein a direction of the word current determines the stored content.
7. The method as defined in claim 5, wherein the method is performed in an MRAM that is embodied in a computer.
8. A magnetoresistive random access memory (MRAM) device comprising:
a plurality of magnetic memory cell bodies in an array, where a magnetic memory cell body has a first resistance when a first variable magnetic orientation thereof is aligned with a second fixed magnetic orientation, and has a second resistance when the first variable magnetic orientation is anti-aligned with the second fixed magnetic orientation;
a plurality of first conductors that group related magnetic memory cell bodies together so that a first group of magnetic memory cell bodies corresponds to a first of the first conductors and a second group of magnetic memory cell bodies corresponds to a second of the second conductors; and
a plurality of second conductors, where second conductors wrap around multiple memory cell bodies such that a first of the second conductors individually wraps around only one memory cell body from the first group and then individually wraps around only one memory cell body from the second group.
9. The MRAM device as defined in claim 8, wherein the magnetic memory cell bodies are giant magneto-resistance (GMR) cell bodies.
10. The MRAM device as defined in claim 8, wherein the magnetic memory cell bodies are tunneling magneto-resistance (TMR) cell bodies.
11. The MRAM device as defined in claim 8, wherein the MRAM device is embodied in a computer.
12. A method of selecting a magnetic memory cell from a plurality of magnetic memory cells in a magnetoresistive random access memory (MRAM), comprising:
passing current through a first line corresponding to the magnetic memory cell;
allowing current to pass through a row line that is electrically coupled to a second line of the magnetic memory cell; and
allowing current to pass through a column line that is electrically coupled to a third line of the magnetic memory cell such that a current passes through the second line of the magnetic memory cell.
13. The method as defined in claim 12, further comprising:
reading a stored content of the magnetic memory cell with the current passing through the second line of the magnetic memory cell at a first current level by detecting a resistance of the first line; and
storing data into the magnetic memory cell by providing the current passing through the second line of the magnetic memory cell at a second current level higher than the first current level, wherein a direction of the current determines the stored content.
14. The method as defined in claim 12, wherein the method is performed in an MRAM that is embodied in a computer.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. An information processing method executed by at least one information processing apparatus, the information processing apparatus being provided with a storage and being connected to a network system which has a plurality of servers and at least one search server, comprising:
a first receiving step of requesting the search server to perform a search for at least one of the servers for performing desired data processing, and receiving a result of the search showing a first server from the search server;
a second receiving step of requesting the search server to perform a search for at least one of the servers for performing the desired data processing, and receiving a result of the search showing a second server which is different from the first server from the search server, when the first server cannot accept a request for performing the desired data processing from the information processing apparatus;
a registering step of registering the second server in the storage as a substitute server for the first server; and
a data processing requesting step of requesting the substitute server to perform the desired data processing without requesting the search server to perform the search for at least one of the servers for performing the desired data processing, when the first server cannot accept the request from the information processing apparatus, and the substitute server is registered in the storage.
2. An information processing method executed by at least one information processing apparatus, the information processing apparatus being provided with a storage and being connected to a network system which has a plurality of servers and at least one search server, comprising:
an output step of outputting an instruction to perform a search for at least one of the servers for performing desired data processing, to the search server;
a receiving step of receiving a result of the search responsive to the instruction to perform the search and showing a first server from the search server;
a first enquiry executing step of executing an inquiry to the first server to make a request for performing the desired data processing;
a second inquiry executing step of executing an inquiry to a second server which is different from the first server to make a request for performing the desired data processing, when the first server cannot accept the request;
a registering step of registering the second server in the storage as a substitute server for the first server, when the second server accepts the request;
a data processing requesting step of requesting the substitute server to perform the desired data processing without outputting the instruction to perform the search to the search server in said output step, when the first server cannot accept the request, and the substitute server is registered in the storage.
3. An information processing method according to claim 1, wherein said registering step comprises registering a number of times the first server rejects the request and an identifier which specifies the first server in association with each other in the storage, and registering the first server as an inquiry-excluded server in the storage when the number of times is not less than a predetermined number of times, and wherein said data processing requesting step comprises requesting the substitute server to perform the desired data processing, when the first server is registered in the storage as the inquiry-excluded server.
4. An information processing method according to claim 2, wherein said registering step comprises registering a number of times the first server rejects the request and an identifier which specifies the first server in association with each other in the storage, and registering the first server as an inquiry-excluded server in the storage when the number of times is not less than a predetermined number of times, and wherein said data processing requesting step comprises requesting the substitute server to perform the desired data processing, when the first server is registered in the storage as the inquiry-excluded server.
5. An information processing method according to claim 1, wherein said registering step comprises registering the second server as the substitute server when a use charge for a service of the second server for performing the desired data processing is not more than a predetermined upper limit.
6. The information processing method according to claim 2, wherein said registering step comprises registering the second server as the substitute server when a use charge for a service of the second server for performing the desired data processing is not more than a predetermined upper limit.
7. An information processing program executed by at least one information processing apparatus, the information processing apparatus being provided with a storage and being connected to a network system which has a plurality of servers and at least one search server, comprising:
a first receiving module for requesting the search server to perform a search for at least one of the servers for performing desired data processing, and receiving a result of the search showing a first server from the search server;
a second receiving module for requesting the search server to perform a search for at least one of the servers for performing the desired data processing, and receiving a result of the search showing a second server which is different from the first server from the search server, when the first server cannot accept a request for performing the desired data processing from the information processing apparatus;
a registering module for registering the second server in the storage as a substitute server for the first server; and
a data processing requesting module for requesting the substitute server to perform the desired data processing without requesting the search server to perform the search for at least one of the servers for performing the desired data processing, when the first server cannot accept the request from the information processing apparatus, and the substitute server is registered in the storage.
8. An information processing program executed by at least one information processing apparatus, the information processing apparatus being provided with a storage and being connected to a network system which has a plurality of servers and at least one search server, comprising:
an output module for outputting an instruction to perform a search for at least one of the servers for performing desired data processing, to the search server;
a receiving module for receiving a result of the search responsive to the instruction to perform the search and showing a first server from the search server;
a first inquiry executing module for executing an inquiry to the first server to make a request for performing the desired data processing;
a second inquiry executing module for executing an inquiry to a second server which is different from the first server to make a request for performing the desired data processing, when the first server cannot accept the request;
a registering module for registering the second server in the storage as a substitute server for the first server, when the second server accepts the request;
a data processing requesting module for requesting the substitute server to perform the desired data processing without outputting the instruction to perform the search to the search server by the output module, when the first server cannot accept the request, and the substitute server is registered in the storage.
9. An information processing program according to claim 7, wherein said registering module comprises registering a number of times the first server rejects the request and an identifier which specifies the first server in association with each other in the storage, and registering the first server as an inquiry-excluded server in the storage when the number of times is not less than a predetermined number of times, and wherein said data processing requesting module comprises requesting the substitute server to perform the desired data processing, when the first server is registered in the storage as the inquiry-excluded server.
10. An information processing program according to claim 8, wherein said registering module comprises registering a number of times the first server rejects the request and an identifier which specifies the first server in association with each other in the storage, and registering the first server as an inquiry-excluded server in the storage when the number of times is not less than a predetermined number of times, and wherein said data processing requesting module comprises requesting the substitute server to perform the desired data processing, when the first server is registered in the storage as the inquiry-excluded server.
11. An information processing program according to claim 7, wherein said registering module comprises registering the second server as the substitute server when a use charge for a service of the second server for performing the desired data processing is not more than a predetermined upper limit.
12. An information processing program according to claim 8, wherein said registering module comprises registering the second server as the substitute server when a use charge for a service of the second server for performing the desired data processing is not more than a predetermined upper limit.
13. An information processing apparatus which is capable of communicating with a plurality of servers and at least one search server, comprising:
a storage;
a first receiving device that requests the search server to perform a search for at least one of the servers for performing desired data processing, and receives a result of the search showing a first server from the search server;
a second receiving device that requests the search server to perform a search for at least one of the servers for performing the desired data processing, and receives a result of the search showing a second server which is different from the first server from the search server, when the first server cannot accept a request for performing the desired data processing from the information processing apparatus;
a registering device that registers the second server in said storage as a substitute server for the first server; and
a data processing requesting device that requests the substitute server to perform the desired data processing without requesting the search server to perform the search for the at least one of the servers for performing the desired data processing, when the first server cannot accept the request from the information processing apparatus, and the substitute server is registered in said storage.
14. An information processing apparatus which is capable of communicating with a plurality of servers and at least one search server, comprising:
a storage;
an output device that outputs an instruction to perform a search for at least one of the servers for performing desired data processing, to the search server;
a receiving device that receives a result of the search responsive to the instruction to perform the search and showing a first server from the search server;
a first inquiry executing device that executes an inquiry to the first server to make a request for performing the desired data processing;
a second inquiry executing device that executes an inquiry to a second server which is different from the first server to make a request for performing the desired data processing, when the first server cannot accept the request;
a registering device that registers the second server in said storage as a substitute server for the first server, when the second server accepts the request;
a data processing requesting device that requests the substitute server to perform the desired data processing without outputting the instruction to perform the search to the search server by said output device, when the first server cannot accept the request, and the substitute server is registered in said storage.