GB2329268A - Arithmetic apparatus with resume function - Google Patents

Arithmetic apparatus with resume function Download PDF

Info

Publication number
GB2329268A
GB2329268A GB9815598A GB9815598A GB2329268A GB 2329268 A GB2329268 A GB 2329268A GB 9815598 A GB9815598 A GB 9815598A GB 9815598 A GB9815598 A GB 9815598A GB 2329268 A GB2329268 A GB 2329268A
Authority
GB
United Kingdom
Prior art keywords
storage device
program
data
arithmetic apparatus
executing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB9815598A
Other versions
GB9815598D0 (en
Inventor
Takahiro Chiba
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nabtesco Corp
Original Assignee
Teijin Seiki Co Ltd
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 Teijin Seiki Co Ltd filed Critical Teijin Seiki Co Ltd
Publication of GB9815598D0 publication Critical patent/GB9815598D0/en
Publication of GB2329268A publication Critical patent/GB2329268A/en
Withdrawn legal-status Critical Current

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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation

Abstract

An arithmetic apparatus (110) for enabling a program (160) to be activated with a shorter startup time afterthe arithmetic apparatus (110) restarts. Data relating to the current state of a predetermined application program (160) is temporarily stored in a volatile main storage device (103) (e.g. RAM). A data saving means saves the current state data to a nonvolatile storage device (106) (e.g. flash memory) while an executing means (101) (e.g. CPU) is still executing the application program (160) under the control of a operating system (161). This data is stored even when the power to the arithmetic apparatus (110) is disconnected. After the arithmetic apparatus (110) restarts and before the application program (160) is executed by the executing means (101), a transmitting means transmits the previously saved data from the nonvolatile storage device (106) to the main storage device (103). A producing means then produces a previous state on the basis of the previously saved data allowing the executing means (101) to execute the application program (160) in the produced previous state.

Description

is 2329268 ARITHMETIC APPARATUS9 METHOD AND PROGRAM STORAGE DEVICE FOR
CONTROLLING THE ARITHMETIC APPARATUS, ELECTRONIC CIRCUIT APPARATUS CONTROLLED BY ARITHMETIC APPARATUS, METHOD AND PROGRAM STORAGE DEVICE FOR CONTROLLING THE. ELECTRONIC CIRCUIT APPARATUS
BACKGROUND OF THE INVENTION 1. Field of the Invention
The present invention relates to an arithmetic apparatus, method and program storage device for controlling the arithmetic apparatus, and an electronic circuit apparatus utilizing an arithmetic apparatus and method and program storage device for controlling the electronic circuit apparatus. More particularly, the present invention relates to an apparatus for enabling a program to he activated for a shorten starting time after the apparatus restarts.
2. Description of the Related Art
Conventionally, it is well known that a resuming function for resuming the execution of a program in an arithmetic apparatus, so-called "digital computer" (hereinlater referred to simply as "computer"), particularly a personal computer or a workstation. The arithmetic apparatus comprises a central processing unit (hereinlater referred to simply as "CPLM) for executing a program, and a main storage device (hereinlater referred to simply as "RAW) for storing a state in which the program is executed by the CPU and data are read and written by the CPU. In the conventional resuming function is achieved by applying the power to the RAM so as to save the data after the power is disconnected from the computer, and by recalling the state saved on the RAM to execute the program in the recalled state when the computer restarts.
Typical computer is shown in FIG. 6 and comprises a CPU 1, a nonvolatile storage device 2, a RAM 3, a power supplying unit 8, an input-output unit 4, a register 5, and a buttery 7. The CPU 1 is operated to execute a plurality of application programs previously stored into the nonvolatile storage device 2. The RAM 3 is accessed by the CPU 1 when the CPU executes the program and capable of storing the state in which he program is executed by the CPU 1. The power supplying unit 8 is electrically connected to the RAM 3 and designed to supply the power to the RAM 3. The inputoutput unit 4 is designed to input and output from and to a peripheral device (not shown in the drawings) including a printer, various storage devices and a console having a key board, a mouse and a display unit. The register 5 is capable of registering information to be read out at the initial time when the computer starts. 'The buttery 7 is electrically - 2 connected to the register 5 to supply the power to the register 5.
The CPU 1, the storage device 2, the RAM 3, the input-output unit 4 and the register 5 are connected with each other through a bus cable 9. The RAM 3 is supplied with the power by the power supply unit 8 while the register 5 is supplied with the power by the buttery 7, thereby saving the data on the RAM 3 and the register 5 after the power is disconnected from the computer.
The aforementioned computer operat6s the CPU 1 to execute a predetermined application program underan operating system (OS). The storage device 2 is such as a fixed disk device and loaded therein the OS and a plurality of application programs. It is known that the OS includes DOS, Windows 3.1, Windows 95, Windows NT, Linux, Free BSI), Net BSI) and NEXTSTEP utilized for a machine compatible with a PC/AT machine produced by IBM Corporation, Mac OS utilized for a personal computer produced by Apple Computer Inc. and compatible with this, and UNIX and NEXTSTEP utilized for a workstation. These aforementioned names of the OS include a registered trademark or a trademark. The operator selects the desired application programs to be activated.
FIG. 7 is a flowchart showing procedures of executing each of the selected application programs when the resuming function is invalid. When the power is applied to the computer, a BIOS (Basic Input Output System) is operated to read out information stored in the register 5 in the step 11 to initialize the computer. In the step 12, the OS is loaded from the storage device 2 to the RAM 3 and activated. lle computer will be operated by the OS to perform the following processes.
In the step 13, the computer waits for an operator's response by inputting a command. The command includes a program activate request command for activating the application program and is selectively inputted by the operator through the keyboard or the mouse (not shown). In response to the inputted program activate request command, the step 13 leads to the step 14 in which the selected application program is loaded from the storage device 2 to the RAM 3. The control is passed to the application pro the step 14 is returned back to the step 13 in which the computer waits for the response.
Referring to FIG. 8 of the drawings, there is shown an example of a conventional electronic circuit analysis system for analyzing an electronic circuit with the aid of a computer.
As shown in FIG. 8, the electronic circuit analysis system for analyzing an electronic circuit 30 (hereinlater referred to as "target") comprises a computer 10, and a ROM emulator 20. The target 30 is designed to execute a predetermined target program to achieve a predetermined function. The electronic circuit analysis system has a main 3 object to debug the target program of the target 30.
The computer 10 has an OS, an analysis program 60 for analyzing the target 30, the target program of the target 30 and optional application programs previously installed therein. The computer 10 is electrically connected to the ROM emulator 20 through a cable 40 while the ROM emulator 20 is electrically connected to the target 30 through a cable 50. The cable 40 may be a general serial cable utilized for a recommendation standard 232C type interface. The computer 10 and the ROM emulator 20 are connected with each other through serial ports not shown in the drawings.
The computer 10 is operated to execute the analysis program 60 under the control of the OS and instruct the ROM emulator 20 to perform the emulation of the target 30 so as to analyze the target 30. 71e analysis program 60 includes a monitor program for making the ROM emulator 20 to perform the emulation of the target 30. The target program and the monitor program are transmitted from the computer 10 to the ROM emulator 20. Ile ROM emulator 20 is operated to perform the emulation of the target 30 in accordance with the program.
The analysis of the target 30 performed by the above electronic circuit analysis system in accordance with the procedures of the flowchart shown in FIG. 9 by executing the analysis program 60 previously installed in the computer 10. When the computer 10 starts executing the analysis program 60, data needed for the ROM emulator 20 to perform the emulation of the target 30 are transmitted from the computer 10 to the ROM emulator 20 in the step 21. 7be transmitted data may include the monitor program and the target program.
In the step 22, the CPU of the target 30 is reset to activate the monitor program.
At this time, the ROM emulator 20 starts performing the emulation while the computer 10 passes the control to the analysis routine represented by the reference numeral "23".
In the analysis routine 23 including steps 31 to 33, the steps 31 to 33 are repeated as required in order to make a predetermined analysis. More specifically, in the step 31, the command is transmitted from the computer 10 to the ROM emulator 20. The ROM emulator 20 is operated in response to the command requested by the computer 10 to obtain a result to be transmitted to the computer 10. In the step 32, the result transmitted from the ROM emulator 20 is read out by the computer 10. In the step 33, the computer 10 is operated to analyze the target 30 on the basis of the read result.
Ile above conventional computer and electronic circuit analysis system including the computer, however, has a drawback to be encountered as follows:
The computer has a large number of application programs installed therein, but a few of the application programs customarily used. Furthermore, the application programs which were executed at the last time are also executed every time.
4 Nevertheless, the conventional computer 10 is operated to perform the steps as shown in FIG. 7, when the computer 10 cannot resume executing the application programs. In the step 12, the OS is loaded from the storage device 2 to the RAM 3. When the application programs are selected to be executed, the selected application programs are 5 loaded from the storage device 2 to the RAM 3 in the step 14.
It takes therefore considerable time to achieve a condition under which the operator can use the computer to activate the desired application program after the power is applied to the computer. 7he time includes a few minutes to initialize the computer and prepare the OS which is loaded from the storage device 2 to the RAM 3, and a few minutes to prepare the application programs which are loaded from the storage device 2 to the RAM 3 after the operator selects desired application programs from among a large number of application programs.
- Furthermore, the conventional computer needs a power supply unit for supplying the power to the RAM 3 in order to retain data stored in the RAM 3 and resume executing the application programs according to the held data. 7he power supply unit should be controlled to refresh data stored in the RAM 3 by periodically supplying the power.
In the conventional electronic circuit analyzing system, it also takes a considerable time to perform the analysis of the target 30 by executing the analysis program 60 after the monitor program and the target programs are transmitted from the computer 10 to the ROM emulator 20. This transmitting step in which the monitor program and the target program are transmitted from the computer 10 to the ROM emulator 20 is always performed even if the monitor programs and the target programs has been stored in the ROM emulator 20.
SUNEVIARY OF THE PqVENTTON It is an object of the present invention to provide an arithmetic apparatus having a shorten starting time to activate a desired application program after the arithmetic apparatus restarts.
It is another object of the present invention to provide an electronic circuit apparatus controlled by an arithmetic apparatus and having a shorten starting time to start to execute a program in the electronic circuit apparatus after the arithmetic apparatus restarts to access the electronic circuit apparatus.
It is also an object of the present invention to provide a method of controlling an arithmetic apparatus having a shorten starting time to activate a desired application program after the arithmetic apparatus restarts.
It is further an object of the present invention to provide a method of controlling an electronic circuit apparatus controlled by an arithmetic apparatus and having a shorten starting time to start to execute a program in the electronic circuit apparatus after the arithmetic apparatus restarts to access the electronic circuit apparatus.
It is yet object of the present invention to provide a program storage device readable by an arithmetic apparatus and storing therein an operating system to perform a method of controlling an arithmetic apparatus having a shorten starting time to activate a desired application program after the arithmetic apparatus restarts.
It is further yet of the present invention to provide a program storage device readable by an arithmetic apparatus and storing therein a basic input output system to perform a method of controlling an arithmetic apparatus having a shorten starting time to activate a desired application program after the arithmetic apparatus restarts.
It is further yet of the present invention to provide a program storage device readable by an arithmetic apparatus and storing therein a program executed by the arithmetic apparatus to perform a method of controlling an electronic circuit apparatus, thereby reducing a starting time to activate a program after the arithmetic apparatus restarts to control the electronic circuit apparatus.
In accordance with a first aspect of the present invention, there is provided an arithmetic apparatus comprising:
nonvolatile program storing means for storing an operating system and a predetermined application program therein; executing means for executing said application program under the control of said operating system; and a volatile main storage device capable of temporally storing data therein and being accessed by said executing means while executing said application program, further comprising:
a nonvolatile storage device electrically connected to said main storage device and being capable of permanently storing data therein; transmitting means for transmitting the data from said nonvolatile storage device to said main storage device when said arithmetic apparatus restarts and before said application program is executed by said executing means; and data saving means for allowing said nonvolatile storage device to save thereon the data on a current state in which said application program is executed under the control of said operating system by said executing means before the power is disconnected from said arithmetic apparatus, and producing means for producing a previous state on the basis of the data saved on said nonvolatile storage device to operate said executing means to execute said application program under the control of said operating system in said produced previous 6 - state when said arithmetic apparatus restarts.
The arithmetic apparatus may further comprise instruction input means for allowing an operator to input an instruction to decide whether said current state is stored in said nonvolatile storage device as said previous state or not, said data saving means allowing said nonvolatile storage device to save thereon the data on said current state before the power is disconnected from said arithmetic apparatus in response to the instruction inputted into said instruction input means to decide that said current state is be stored in said nonvolatile storage device.
In the arithmetic apparatus, said data on said current state may be temporally stored in said main storage device while said executing means is executing said application program under the control of said operating system.
In the arithmetic apparatus, said program storing means may have a plurality of application programs stored therein, said executing means being capable of simultaneously executing said plurality of application programs under the control of said operating system, said instruction input means allowing said operator to input an instruction to select at lease one from among the application programs simultaneously executed by said executing means, said data saving means allowing said nonvolatile storage device to save thereon the data on said current state in which the selected application program is executed under the control of said operating system before the power is disconnected from said arithmetic apparatus.
The arithmetic apparatus may further comprise:
a nonvolatile register having a data save bit, said data save bit of said register being set so as to indicate that said data are saved on said nonvolatile storage device when said data saving means allows said nonvolatile storage device to save said data thereon; and judging means for judging whether said data save bit is set or not, and said transmitting means transmitting said data from said nonvolatile storage device to said main storage device when said arithmetic apparatus restarts and said judgment is made by said judging means upon that said data save bit of said register is set.
In accordance with a second aspect of the present invention, there is provided an electronic circuit apparatus comprising executing means fof executing a predetermined program and a volatile main storage device being capable of temporally storing said program to be executed by said executing means, in which said electronic circuit apparatus controlled by an arithmetic apparatus comprising a nonvolatile program storing 7 means for permanently storing said program therein, further comprising: judging means for judging whether there is a program stored in said main storage device or not when said arithmetic apparatus restarts to control said electronic circuit apparatus; and transmitting means for transmitting the program from said program storing means of said arithmetic apparatus to said main storage device when said judging means judges that there is no program stored in said main storage device, so that said executing means executes the program transmitted from said program storing means of said arithmetic apparatus and stored in said main storage device.
The electronic circuit apparatus may further comprise a nonvolatile register having a data save bit, said judging means making said judgment on the basis of said data save bit of said register. In accordance with a third aspect of the present invention, there is provided a method of controlling an arithmetic apparatus comprising: nonvolatile program storing means for storing an operating system and a predetermined application program therein; executing means for executing said application program under the control of said operating system; and a volatile main storage device capable of temporally storifig data therein and being accessed by said executing means while executing said application progrm in which said method comprising the steps of.. (a) preparing a nonvolatile storage device electrically connected to said main storage device and being capable of permanently storing data therein; (b) applying the power to said arithmetic apparatus; (c) operating said executing means to execute said application program under the control of said operating system; (d) disconnecting the power from said arithmetic apparatus; (e) saving, on said nonvolatile storage device, the data on a current state in which said application program is executed under the control of said operating system by said executing means in said step (c) before the power is disconnected from said arithmetic apparatus in said step (d); (f) transmitting the data from said nonvolatile storage device to said main storage device after said arithmetic apparatus restarts in said step (b) and before the application program is executed by said executing means in said step (c); and (g) producing a previous state on the basis of the data saved on said nonvolatile storage device in said step (e) to operate said executing means to execute said application 8 program under the control of said operating system in said produced previous state in said step (c) after said arithmetic apparatus restarts in said step (b).
Ile method may further comprise the step of (h) allowing an operator to input an instruction to decide whether said current state is stored in said nonvolatile storage device as said previous state or not, said data on said current state being saved on said nonvolatile storage device in said step (e) before the power is disconnected from said arithmetic apparatus in said step (d) in response to said instruction inputted in said step (h) to decide that said current state is stored in said nonvolatile storage device.
In the method, said data on said current state may be temporally stored in said main storage device while said executing means is executing said application program under the control of said operating system in said step (c).
Ile method may further comprise the step of (i) preparing a plurality of application programs to be stored in said program storing means, said plurality of application programs being simultaneously executed by said executing means in said step (c), in which said step (h) having the step of (h 1) allowing said operator to input an instruction to select at least one from among the application programs simultaneously executed by said executing means in said step (c), and said data on said current state, in which the application program selected in said step (M) is executed under the control of said operating system in said step (c), being saved on said nonvolatile storage device in said step (c) before the power is disconnected from said arithmetic apparatus in said step (d).
The method may further comprise the steps of.
G) preparing a nonvolatile register having a data save bit, (k) setting said data save bit of said register so as to indicate that said data are saved on said nonvolatile storage device when said data are saved on said nonvolatile storage device in said step (e); (1) judging whether said data save bit is set in said step (k) or not; the data being transmitted from said nonvolatile storage device to said main storage device after said arithmetic apparatus restarts in said step (a) and when the judgment is made in said step (1) upon that said data save bit of said register is set in said step (k).
In accordance with a fourth aspect of the present invention, there is provided a method of controlling an electronic circuit apparatus with the aid of an arithmetic apparatus comprising:
controlling means for controlling said electronic circuit apparatus; and 9 program storing means for storing a predetermined program therein, said electronic circuit apparatus comprising: executing means for executing said program; and a volatile main storage device being capable of temporally storing said program therein to be executed by said executing means, in which said method comprising the steps of: (a) transmitting said program from said program storing means of said arithmetic apparatus to said main storage device of said electronic circuit apparatus; (b) operating said executing means to execute the program transmitted in said step (a); and (c) judging whether there is a program stored in said main storage device of said electronic circuit apparatus or not when said control means of said arithmetic apparatus restarts to control said electronic circuit apparatus, said program being transmitted from said program storing means of said arithmetic apparatus to said main storage device of said electronic circuit apparatus in said step (a) when the judgment is made upon in said step (c) that there is no program saved on said main storage device of said electronic circuit apparatus The method may further comprise the step of preparing a nonvolatile register having a data save bit, said judgment is made in said step (c) on the basis of said data save bit of said register.
In accordance with a fifth aspect of the present invention, there is provided a program storage device readable by an arithmetic apparatus and storing therein an operating system for operating said arithmetic apparatus comprising: nonvolatile storing means for permanently storing said operating system and a predetermined application program therein; executing means for executing said application program under the control of said operating system; a volatile main storage device being capable of temporally storing data therein and being accessed by said executing means while executing said application program a nonvolatile storage device electrically connected to said main storage device and being capable of permanently storing data therein; in which said operating system performs a method of operating said arithmetic apparatus, said method comprising the steps of:
(a) applying the power to said arithmetic apparatus; (b) operating said executing means of said electronic circuit apparatus to execute said application program under the control of said operating system; - (c) disconnecting the power from said arithmetic apparatus; (d) saving, on said nonvolatile storage device of said arithmetic apparatus, the data on a current state in which said application program is executed under the control of said operating system by said executing means in said step (b) before the power is 5 disconnected from said arithmetic apparatus in said step (c); (e) transmitting the data from said nonvolatile storage device of said arithmetic apparatus to said main storage device of said arithmetic apparatus when said arithmetic apparatus restarts in said step (a) before the application program is executed by said executing means of said arithmetic apparatus in said step (b); and (f) producing a previous state on the basis of the data saved on said nonvolatile storage device of said arithmetic apparatus in said step (d) to operate said executing means of said electronic circuit apparatus to execute said application program under the control of said operating system in said produced previous state in said step (b) after said arithmetic apparatus restarts in said step (a).
is In the program storage device, said method may further comprise the step of (g) allowing an operator to input an instruction to decide whether said current state is stored in said nonvolatile storage device of said arithmetic apparatus as said previous state or not, in which said data on said current state is saved on said nonvolatile storage device of said arithmetic apparatus in said step (d) before the power is disconnected from said arithmetic apparatus in said step (c) in response to said instruction inputted in said step (g) to decide that said current state is stored in said nonvolatile storage device of said arithmetic apparatus.
In the program storage device, said data on said current state may be temporally stored in said main storage device while said executing means of said arithmetic apparatus is executing said application program under the control of said operating system in said step (b).
In the program storage device, said method may further comprise the step of (h) preparing a plurality of application prograrns to be stored in said program storing means, said plurality of application programs being simultaneously executed by said executing means in said step (h), in which said step (g) having the step of (gl) allowing said operator to input an instruction to select at least one from among said application programs simultaneously executed by said executing means in said step (b), said data on said current state, in which the application program selected in said step (gl) is executed under the control of said operating system in said step (b), being saved on said nonvolatile storage device of said arithmetic apparatus in said step (d) - 11 before the power is disconnected from said arithmetic apparatus in said step (c).
In accordance with a sixth aspect of the present invention, there is provided a program storage device readable by an arithmetic apparatus and storing therein a basic input output system (BIOS) for operating said arithmetic apparatus comprising:
nonvolatile storing means for permanently storing a predetermined application program; executing means for executing said application program; a volatile main storage device being capable of temporally storing data therein and being accessed by said executing means while executing said application program; a nonvolatile storage device electrically connected to said main storage device and being capable of permanently storing data therein; and a nonvolatile register having a data save bit; in which said basic input output system performs a method of operating said arithmetic apparatus, said method comprising the steps of.
(a) transmitting said program from said nonvolatile storage device of said arithmetic appafatus to said main storage device of said arithmetic apparatus; (d) operating said executing means of said arithmetic apparatus to execute the program transmitted in said step (a); (e) saving said program on said main storage device of said arithmetic apparatus; and (f) judging whether there is a program stored in said main storage device of said arithmetic apparatus or not, and said program being transmitted from said program storing means of said arithmetic apparatus to said main storage device of said arithmetic apparatus in said step (a) when the judgment is made in said step (d) upon that there is no program saved on said main storage device of said arithmetic apparatus. In accordance with a seventh aspect of the present invention, there is
provided a program storage device readable by an arithmetic system and storing therein a program executed by said arithmetic apparatus comprising program storing means for storing a predetermined program to perform a method of controlling an electronic circuit apparatus comprising:
executing means for executing said program; and a volatile main storage device being capable of temporally storing said program therein to be executed by said executing means, in which said method comprising the steps of:
(a) transmitting said program from said program storing means of said arithmetic apparatus to said main storage device of said electronic circuit apparatus; and (b) judging whether there is a program stored in said main storage device of said 12 - electronic circuit apparatus or not, said program being transmitted from said program storing means of said arithmetic apparatus to said main storage device of said electronic circuit apparatus in said step (a) when the judgment is made in said step (c) upon that there is no program saved on said main storage device of said electronic circuit apparatus.
In the program storage device, said electronic circuit may have a nonvolatile register having a data save bit, and said judgment is made in said step (c) on the basis of said data save bit of said register.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention and many of the advantages thereof win be better understood from the following detailed description when considered in connection with the accompanying drawings, wherein:
FIG. 1 is a block diagram of the configuration of a computer system showing a preferred embodiment of the arithmetic apparatus according to the present invention; FIG. 2 is a flowchart showing the flows of the end process of ending the computer shown in FIG. 1; FIG. 3 is a flowchart showing the flows of the activating process of activating the computer shown in FIG. 1; FIG. 4 is a block diagram of the configuration of an electronic circuit analyzing system to which the arithmetic apparatus according to the present invention is adapted; FIG. 5 is a flowchart showing the flows of processing the ROM emulator shown in FIG. 4; FIG. 6 is a block diagram showing the conventional computer system; FIG. 7 is a flowchart showing the flows of processing the conventional computer shown in FIG. 6 when the computer starts; FIG. 8 is a block diagram showing the electronic circuit analysis system including the conventional computer; and FIG. 9 is a flowchart showing the flows of processing the analysis program of the conventional electronic circuit analysis system shown in FIG. 8.
DESCRIPTION OF THE PREFERRED EM1BODU4ENTS
Referring now to FIGS 1 to 3 of the drawings, a preferred embodiment of the arithmetic apparatus according to the present invention will be explained hereinafter.
FIG 1 is a block diagram showing the arithmetic apparatus according to the present invention comprising a typical computer, such as a personal computer or a workstation.
13 As shown in FIG. 1, the computer 110 comprises a CPU 101, a storage device 102, a RAM 103, an input-output unit 104, a register 105, a nonvolatile memory 106 and a battery 107.
The CPU 101 is operable to execute a plurality of predetermined programs 160 under the control of an OS (Operating System) 161 which is previously installed into the storage device 102. Each of the application programs 160 is stored into various kinds of storage media and executed under the control of the OS 161 to perform a predetermined function.
The storage device 102 is a nonvolatile storage device, such as a fixed disk device, having a large capacity and previously stored therein the application programs 160 as well as the OS 10 1. The operator can operate the computer 110 to execute at least a desired application program which is selected from the plurality of application programs 160. lle RAM 103 serves as a work area to be accessed by the CPU 101 for temporary storing data when the CPU 101 executes the program. 'Me RAM 102 may be a volatile storage device such as a DRAM (Dynamic Random Access Memory).
is The input and output unit 104 is designed to operate a peripheral device (not shown) of the computer 110 to input and output data between the computer 110 and the peripheral device. The peripheral device of the computer 110 may be a printer, an external storage device, or a console including a keyboard, a mouse or a display unit.
For instance, the operator inputs a request command through the console in order to activate the application program 160. In response to the request command, the input and output unit 104 receives the inputted request command to be passed to the CPU 101.
Tle register 105 is a nonvolatile memory, such as a CMOS (Complementary Metal-Oxide Semiconductor), to which the auxiliary power is applied by the buttery 107 so as not to lose data stored in the register 105 even if the main power is disconnected from the computer 110. The power consumption of the buttery 107 is smaller than that of the conventional buttery for supplying the power to a RAM in order to hold data stored therein. The register 105 has a plurality of bits and is designed to register information in each bit. The information may be utilized for the initialization of the computer 110. In general, when the main power is applied to the computer 110, the computer 110 has a BIOS (not shown) activated. The BIOS is a kind of the OS, and designed to manage a hardware section of the computer 110. The BIOS is previously stored into a ROM (Read Only Memory) which is mounted on a mother board of the computer 110 (not shown). When the BIOS is activated, the BIOS is operated to read out the information from the register 105 to initialize the computer 10 on the basis of the information of the register 105.
Tle nonvolatile memory 106 may be a nonvolatile storage device, such as a flush memory, and have a capacity which is larger than that of the RAM 103. The flush 14 memory is capable of transferring data to the RAM 103 at the higher speed than the storage device 102 dose as well as relatively inexpensive. The CPU 101, the storage device, the RAM 103, the input output unit 104, the register 105 and the nonvolatile memory 106 are electrically connected with each other through a bus cable 109, so as to transmit data between them and be communicated with each other.
The computer 110 described above in this embodiment has the same constitutional elements as those described in the prior art as shown in FIG. 6 except for the power supply unit 8 and further comprises a nonvolatile memory 106.
It will be explained hereinafter how the computer 110 thus constructed can be operated to save a state in which the application programs are executed before the main power is disconnected from the computer 110 and to resume executing the application programs in the saved state when the computer 110 restarts.
Referring to FIG. 2 of the drawings, there is shown a flowchart explaining the flow of the processes of saying the state in which the application programs are executed before the main power is disconnected from the computer 110 and comprising the steps 131 through 141.
Throughout the steps 131 to 141 shown in FIG. 2, the computer 110 is waiting for the operator's response and operable to process the steps in response to the operator's request. Furthermore, the computer 110 is running at least one of the application programs 160 at the start point in the flowchart shown in FIG. 2.
In the step 13 1, the computer 110 is waiting for a command inputted through the console by the operator. The inputted command may include a program activate command for activating the application program 160, a program terminate command for terminating the application program 160 and a computer stop command for stopping the process of the computer 110. 7herefore, the judgment is made upon in the step 131 whether the computer stop command is requested by the operator or not. When the answer in the step 131 is in an affirmative "YES" wherein the computer stop command is requested by the operator, the step 131 leads to the step 132. When the answer in the step 131 is in a negative "NO" wherein the computer stop command is not requested by the operator, the process is held in the step 13 1.
In the step 132, the computer 110 requests the operator to decide whether the data, which is needed to resume executing the application programs 160 under the control of the OS 161, are saved onto the nonvolatile memory 106 or not. Here, the data may indicate the state in which the application programs 160 are executed under the control of the OS 161.
In the step 133, the judgment is made upon whether the request to save the data is made or not. When the answer in the step 133 is in an affirmative "YES" wherein the - 15 request to save the data is made, the step 133 leads to the step 134. When the answer in the step 133 is in the negative "NO" wherein there is no request to save the data, the step 133 leads to the step 140 in which the data stored in the nonvolatile memory 106 and the register 105 are not updated but kept therein.
In the step 134, the computer 110 requests the operator to decide which of the application programs are selected from the application programs 160 to save a current state so as to resume executing the selected application programs in the saved state when the computer 110 will restart afterward. In the following step 135, the judgment is made upon whether there is the selected program or not. When the answer in the step 135 is in an affirmative "YES" wherein there are some selected application programs, the step 135 leads to the step 136. When the answer is in a negative "NO" wherein there is no selected program, the step 135 leads to the step 139.
In the step 136, there are prepared with data which are needed to resume executing the programs selected in the step 134 and information which are needed to synchronize the data resumed from the nonvolatile memory 106 with the data stored into a predetermined storage area in the storage device 102 of the computer 110 when the computer 110 will restarts afterward. The prepared data are stored in the RAM 103.
Here, the data which are needed to resume executing the OS and the selected programs may include a program data of the selected application programs 160, an image data on an image which is displayed while the selected programs are executed, various parameter data, information on the condition of using the work area while the OS and the application programs are executed. The computer 110 therefore can resume executing the application programs 160 on the basis of the saved data and information when the computer 110 will restart afterward.
In the following step 137, the prepared data are transmitted from the RAM 103 to the nonvolatile memory 106. In the step 138, one of the bits of the register 105 is set to "I". Here, this one of the bits of the register 105 is referred to as a data save bit.
When the data save bit is set to "I", this means that the data has been saved on the nonvolatile memory 106 from the RAM 103.
In the step 139, the data save bit of the register 105 is set to T". The step 139, then, leads to the step 140 in which the end process of ending the execution of the application programs 160 and the OS 161 is performed. The end process in the step 140 may be proceeded after confirming that the data transmission step 137 of transmitting the data to the nonvolatile memory 106 is normally terminated. When the data transmission step 137 is abnormally terminated, the data transmission step 137 is retried or interrupted. In the step 14 1, the main power is disconnected from the computer 110.
This operation may be performed by a manual control or an automatic control.
16 - Referring to FIG. 3 of the drawings, there is shown a flowchart having the steps 151 to 158 to perform the process of resuming executing the application programs in the saved state as described above when the computer 110 restarts.
When the main power is applied to the computer 110, the process as shown in FIG. 3 is started. In the step 151, the BIOS is activated to read the information registered in the bits of the register 105 except the data save bit of the register 105 and to initialize the computer 110 according to the read information registered in the bits of the register 105.
In the step 152, the data save bit of the register 105 is also read out. In the following step 153, the judgment is made upon whether the data save bit is equal to - 1 " or not. When the answer in the step 153 is in an affirmative "YES", the step 153 leads to the step 157. When the answer in the step 153 is in a negative "NO", the step 153 leads to the step 154 in which the computer 110 starts by way of the normal procedures.
In the step 154, the OS 161 is loaded from the storage device 102 to the RAM 103 and activated. In the following step 155, the computer 110 is waiting for the program activate command inputted by the operator. When the program activate command indicating that the operator selects at least one desired application program from a plurality of predetermined application programs 160 to be executed is inputted, the step leads to the step 156. In the step 156, the selected application program 160 is loaded from the storage device 102 to the RAM 103 and activated. This routine passes the control to the application programs 160 and returned from the step 156 to the step 155. The process through the steps 154 to 156 is the same as the initialization process of the conventional computer.
On the other hand, when the data save bit is equal to " 1 ", the process in the steps 157 and 158 is performed to resume executing the application program in the saved state.
In the step 157, the data, which have been saved when the computer 110 was terminated at the last time, are transmitted from the nonvolatile memory 106 to the RAM 103, so that the OS and application programs which were saved when the computer 110 was terminated at the last time can be executed. Then the step 157 leads to the step 158 when the data are completely transmitted in the step 157. In the step 158, the transmitted application programs 160 are activated. At the same time, the contents of the storage device 102 are synchronized with those of RAM 103 on the basis of the information stored in the storage area of the storage device 102. Then, the control is passed to the application programs 160. lle step 158 leads to the step 155 as described above. In the above step 157, the process of confirming that the data is normally transmitted which is the same as the step 107 shown in FIG. 2 may be performed.
In this embodiment, the register 105 has, but not limited to, the data save bit 17 indicating whether the data is saved on the nonvolatile memory 106 or not. In another case when the register 105 has no data save bit, the computer 110 may always start to reproduce the saved state to resume executing the application program in the saved state. Tle step 139 is omitted from the process shown in FIG. 2. The steps 152 to 154 are also omitted from the process shown in FIG. 3. 71e computer 110 thus constructed always has not to load the OS 161 from the storage device 102 to the RAM 103. As a result, there is no need for a lot of time to activate the computer 110. The nonvolatile memory 106 may be designed to previously store data utilized for the initialization and activation of the OS 161. As a result, the computer 110 can reduce the starting time to activate the application program.
Moreover, there may be provided with a resume file to be stored in the storage device 102 in order to always resume executing the predetermined application programs in the step 158 according to the resume file. lle resume file may include data on a predetermined state in which predetermined application programs 160 are executing under the control of the OS 161. Accordingly, the steps 134 to 136 may be omitted from the process shown in FIG. 2.
Moreover, the computer 110 may further comprise means for indicating information on the application programs to be executed in the state saved in the nonvolatile memory 106. 71e information may have a list of the application programs to be executed in the state saved in the nonvolatile memory 106, and if desired, display this list on the display unit of the computer 110. This information may be saved on the nonvolatile memory 106 when the data is transmitted from the RAM 103 to the nonvolatile memory 106 in the step 137 shown in FIG. 2. This results in the fact that the operator can confirm the displayed list of the application programs to be executable in the saved pervious state and, if desired, can select at least one from among the application programs to be executed. This means that the operability of the computer including the arithmetic apparatus according to the present invention is greatly improved.
Alternatively, the nonvolatile memory 106 may be replaced with part of the area of the storage device 102 to be used for saving the programs.
77he computer 110 thus constructed has an advantage over the prior art in reducing the starting time to activate the computer because of the fact that the computer 110 can be resume executing the application programs in the previous state saved in the nonvolatile storage device 106.
Moreover, the arithmetic apparatus in this embodiment has no need to supply the power to the storage device but has a nonvolatile storage device, thereby simplifying the arithmetic apparatus capable of resuming executing the application program. Moreover, the arithmetic apparatus may use a flush memory as the nonvolatile storage device, 18 thereby making it possible to construct the arithmetic apparatus at low cost.
Referring to FIGS. 4 and 5, there is shown another embodiment of the arithmetic apparatus according to the present invention adaptable to an electronic circuit analyzing system for anaIyzing an electronic circuit with the aid of the arithmetic apparatus. FIG.
4 shows a block diagram of the electronic circuit analyzing system comprising a computer 210 and a ROM emulator 220 to designed to analyze a target electronic circuit (hereinlater referred to as target) 230. Ile target 230 comprises a CPU 231, a ROM (not shown) which is previously stored in a predetermined target program to be executed by the CPU 23 1, and a RAM (not shown) which serves as a work area when the CPU 231 executes the target program. The electronic circuit analyzing system is designed to debug the target program to be executed by the CPU 231 of the target 230.
The computer 210 may be a general personal computer having a CPU 201, a predetermined program 260 including an analysis program to be executed by the CPU 201 in order to analyze the target 230, and a storage device 202 in which the program 260 is previously installed.
The ROM emulator 220 comprises an emulation executing unit 221 for accessing the target 230 to perform the emulation of the target 230, an emulation area 222 in which data used for the emulation processes are stored, and a register 223 having a data save bit which indicates that the data used for the emulation process are stored in the emulation area 222.
Ile computer 2 10 is electrically connected to the ROM emulator 220 through a cable 240. The ROM emulator 220 is electrically connected to the target 230 through a cable 250. The cable 240 may be an all-purpose cable for serially transmitting data, such as a type of RS-232C. The computer 210 and the ROM emulator 220 may have serial ports to connect the computer 210 to the ROM emulator 220 through the serial cable 240. Ile cable 250 have a pod 251 at its one end. The pod 251 has a plurality of pins arranged in the same arrangement as that of the ROM of the target 230. The target 230 has the ROM removed from a ROM socket 232 and the pod 251 of the cable 250 plugged into the ROM socket 232.
The process of analyzing the target 230 in the electronic circuit analysis system is performed by executing the analysis program included in the program 260 which is previously installed into the computer 2 10. Ile computer 2 10 has a monitor program and a target program previously installed as well as the analysis program. The monitor program is executed to operate the ROM emulator 220 to perform the emulation of the target 130. The target program is previously loaded into the ROM of the target 230 to be executed by the CPU 231 of the target 230 after the target program is completely debugged by the electronic circuit analyzing system. When the target program is 1 19 debugged by the electronic circuit analysis system, the target program is installed into the computer 2 10.
When the computer 210 starts to execute the analysis program the analysis process is performed in accordance with the steps shown in FIG. 5. As shown in FIG. 5, data of bits of the register 223 of the ROM emulator 220 are read out in the step 301. In the following step 302, the judgment is made upon whether the data save bit of the register 223 is equal to 'T' or not. When the answer in the step 302 is in a negative "NO", the step 302 leads to the step 303. Vaen the answer in the step 302 is in an affirmative 'TES", the step 303 is by-passed and the step 302 goes to the step 304.
In the step 303, the data utilized for the emulation process are transmitted from the computer 210 to the ROM emulator 220 through the cable 240. 71e transmitted data include the monitor program and the target program.
In the step 304, the CPU 231 of the target 230 is reset to have the monitor program activated. As a result, the ROM emulator 220 starts the emulation process.
At the same time, the computer 210 passes the control to an analysis routine 305 which will be described below.
In the analysis routine 305, there are provided with the steps 311 to 313 to be repeatedly executed to perform a predetermined analysis of the target 230. More specifically, the command is sent from the computer 210 to control the ROM emulator 220 in the step 311. 7he ROM emulator 220 is operated in response to the command requested by the computer 210 to obtain a result. In the step 312, the result is transmitted from the ROM emulator 220 to the computer 210. In the step 313, the computer 210 is operated to analyze the target 230 on the basis of the transmitted result.
The steps 311 to 311 in the analysis routine 305 are repeatedly performed until the analysis of the target 230 is terminated.
The electronic circuit analysis system thus constructed has an advantage over the prior art in immediately starting to perform the analysis of the target 230 without transmitting data including the monitor program and the target program from the computer 210 to the ROM emulator 220. This means that the operability of the electronic circuit analyzing system including the arithmetic apparatus according to the present invention is greatly improved.
The many features and advantages of the invention are apparent from the detailed specification, and thus it is intended by the appended claims to cover all such features and advantages of the invention which fall within the true spirit nd scope thereof. Further, since numerous modifications and changes will readily occur to those skilled in the art, it is not desired to limit the invention to the exact construction and operation illustrated and described herein, and accordingly, all suitable modifications and equivalents may be construed as being encompassed within the scope of the invention.
21

Claims (21)

1. An arithmetic apparatus (110) comprising:
nonvolatile program storing means (102) for storing an operating system (161) and a predetermined application program (160) therein; executing means (101) for executing said application program (160) under the control of said operating system (161); and a volatile main storage device (103) capable of temporally storing data therein and being accessed by said executing means (101) while executing said application program (160), further comprising:
a nonvolatile storage device (106) electrically connected to said main storage device (103) and being capable of permanently storing data therein; transmitting means (101) for transmitting the data from said nonvolatile storage device (106) to said main storage device (103) when said arithmetic apparatus (110) restarts and before said application program (160) is executed by said executing means (101); and data saving means (101) for allowing said nonvolatile storage device (106) to save thereon the data on a current state in which said application program (160) is executed under the control of said operating system (16 1) by said executing means (10 1) before the power is disconnected from said arithmetic apparatus (110), and producing means (101) for producing a previous state on the basis of the data saved on said nonvolatile storage device (106) to operate said executing means (101) to execute said application program (160) under the control of said operating system (161) in said produced previous state when said arithmetic apparatus (110) restarts.
2. The arithmetic apparatus as set forth in claim 1, further comprising instruction input means (104) for allowing an operator to input an instruction to decide whether said current state is stored in said nonvolatile storage device (106) as said previous state or not, said data saving means (101) allowing said nonvolatile storage device (106) to save thereon the data on said current state before the power is disconnected from said arithmetic apparatus (110) in response to the instruction inputted into said instruction input means (104) to decide that said current state is be stored in said nonvolatile storage device (106).
3. 77he arithmetic apparatus as set forth in claim 1, in which said data on said current state are temporally stored in said main storage device (103) while said executing means - 22 (101) is executing said application program (160) under the control of said operating system (161).
4. The arithmetic apparatus as set forth in claim 2, in which said program storing means (102) hag a plurality of application programs (160) stored therein, said executing means (101) being capable of simultaneously executing said plurality of application programs (160) under the control of said operating system (16 1), said instruction input means (104) allowing said operator to input an instruction to select at lease one from among the application programs (160) simultaneously 10 executed by said executing means (101), said data saving means (101) allow,ng said nonvolatile storage device (106) to save thereon the data on said current state in which the selected application program (160) is executed under the control of said operating system (161) before the power is disconnected from said arithmetic apparatus (110).
5. The arithmetic apparatus as set forth in claim 2, further comprising a nonvolatile register (105) having a data save bit, said data save bit of said register (105) being set so as to indicate that said data are saved on said nonvolatile storage device (106) when said data saving means (101) allows said nonvolatile storage 20 device (106) to save said data thereon; and judging means (101) forjudging whether said data save bit is set or not, and said transmitting means (101) transmitting said data from said nonvolatile storage device (106) to said main storage device (103) when said arithmetic apparatus (110) restarts and said judgment is made by said judging means (10 1) upon that said data save 25 bit of said register (105) is set.
6. An electronic circuit apparatus comprising executing means (221) for executing a predetermined program (260) and a volatile main storage device (222) being capable of temporally storing said program (260) to be executed by said executing means (221), in 30 which said electronic circuit apparatus (220) controlled by an arithmetic apparatus (201) comprising a nonvolatile program storing means (202) for permanently storing said program (260) therein, further comprising: judging means (201 and 223) for judging whether there is a program stored in said main storage device (222) or not when said arithmetic' apparatus (210) restarts to 35 control said electronic circuit apparatus (220); and transmitting means (201 and 240) for transmitting the program (260) from said program storing means (202) of said arithmetic apparatus (210) to said main storage 23 device (222) when said judging means (201 and 223) judges that there is no program stored in said main storage device (222), so that said executing means (221) executes the program (260) transmitted from said program storing means (202) of said arithmetic apparatus (210) and stored in said main storage device (222).
7. The electronic circuit apparatus as set forth in claim 6, further comprising a nonvolatile register (223) having a data save bit, said judging means (201 and 223) making said judgment on the basis of said data save bit of said register (223).
8. A method of controlling an arithmetic apparatus (110) comprising:
nonvolatile program storing means (102) for storing an operating system (161) and a predetermined application program (160) therein; executing means (101) for executing said application program (160) under the control of said operating system (161); and a volatile main storage device (103) capable of temporally storing data therein and being accessed by said executing means (101) while executing said application program (160), in which said method comprising the steps of:
(a) preparing a nonvolatile storage device (106) electrically connected to said main storage device (103) and being capable of permanently storing data therein; (b) applying the power to said arithmetic apparatus (110); (c) operating said executing means (101) to execute said application program (160) under the control of said operating system (16 1); (d) disconnecting the power from said arithmetic apparatus (110); (c) saying, on said nonvolatile storage device (106), the data on a current state in which said application program (160) is executed under the control of said operating system (161) by said executing means (101) in said step (c) before the power is disconnected from said arithmetic apparatus (110) in said step (d); (f) transmitting the data from said nonvolatile storage device (106) to said main storage device (103) after said arithmetic apparatus (110) restarts in said step (b) and before the application program (160) is executed by said executing means (101) in said step (c); and (g) producing a previous state on the basis of the data saved on said nonvolatile storage device (106) in said step (e) to operate said executing means (101) to execute said application program (160) under the control of said operating system (161) in said produced previous state in said step (c) after said arithmetic apparatus (110) restarts in 24 said step (b).
is
9. The method as set forth in claim 8, further comprising the step of (h) allowing an operator to input an instruction to decide whether said current state is stored in said nonvolatile storage device (106) as said previous state or not, said data on said current state being saved on said nonvolatile storage device (106) in said step (e) before the power is disconnected from said arithmetic apparatus (110) in said step (d) in response to said instruction inputted in said step (h) to decide that said current state is stored in said nonvolatile storage device (106).
10. The method as set forth in claim 8, in which said data on said current state are temporally stored in said main storage device (103) while said executing means (101) is executing said application program (160) under the control of said operating system (161) in said step (c).
11. The method as set forth in claim 9, further comprising the step of (i) preparing a plurality of application programs (160) to be stored in said program storing means (102), said plurality of application programs (160) being simultaneously executed by said executing means (10 1) in said step (c), in which said step (h) having the step of (h 1) allowing said operator to input an instruction to select at least one from among the application programs (160) simultaneously executed by said executing means (101) in said step (c), and said data on said current state, in which the application program (160) selected in said step (h I) is executed under the control of said operating system (161) in said step (c), being saved an said nonvolatile storage device (106) in said step (e) before the power is disconnected from said arithmetic apparatus (110) in said step (d).
12.
G) The method as set forth in claim 9 further comprising the steps of: preparing a nonvolatile register (105) having a data save bit, (k) setting said data save bit of said register (105) so as to indicate that said data are saved on said nonvolatile storage device (106) when said data are saved on said nonvolatile storage device (106) in said step (c); (1) judging whether said data save bit is set in said step (k) or not; the data being transmitted from said nonvolatile storage device (106) to said main storage device (103) after said arithmetic apparatus (110) restarts in said step (a) and when the judgment is made in said step (1) upon that said data save bit of said register - 25 (105) is set in said step (k).
13. A method of controlling an electronic circuit apparatus (220) with the aid of an arithmetic apparatus (210) comprising:
controlling means (201) for controlling said electronic circuit apparatus (220); and program storing means (202) for storing a predetermined program (260) therein, said electronic circuit apparatus (220) comprising: executing means (22 1) for executing said program (260); and a volatile main storage device (222) being capable of temporally storing said program (260) therein to be executed by said executing means (221), in which said method comprising the steps of: (a) transmitting said program (260) from said program storing means (202) of said arithmetic apparatus (210) to said main storage device (222) of said electronic circuit apparatus (220); (b) operating said executing means (221) to execute the program (260) transmitted in said step (a); and (c) judging whether there is a program stored in said main storage device (222) of said electronic circuit apparatus (220) or not when said control means (201) of said arithmetic apparatus (2 10) restarts to control said electronic circuit apparatus (220), said program (260) being transmitted from said program storing means (202) of said arithmetic apparatus (210) to said main storage device (222) of said electronic circuit apparatus (220) in said step (a) when the judgment is made upon in said step (c) that there is no program saved on said main storage device (222) of said electronic circuit apparatus (220).
14. The method as set forth in claim 13, further comprising the step of preparing a nonvolatile register (223) having a data save bi said judgment is made in said step (c) on the basis of said data save bit of said 30 register (223).
15. A program storage device readable by an arithmetic apparatus (110) and storing therein an operating system (161) for operating said arithmetic apparatus (110) comprising:
nonvolatile storing means (102) for permanently storing said operating system (161) and a predetermined application program (160) therein; executing means (101) for executing said application program (160) under the 26 - 1 control of said operating system (161); a volatile main storage device (103) being capable of temporally storing data therein and being accessed by said executing means (101) while executing said application program (160), a nonvolatile storage device (106) electrically connected to said main storage device (103) and being capable of permanently storing data therein; in which said operating system (161) performs a method of operating said arithmetic apparatus (110), said method comprising the steps of:
(a) applying the power to said arithmetic apparatus (110); (b) operating said executing means (101) of said electronic circuit apparatus (110) to execute said application program (160) under the control of said operating system (161); (c) disconnecting the power from said arithmetic apparatus (110); (d) saving, on said nonvolatile storage device (103) of said arithmetic apparatus (110), the data on a current state in which said application program (160) is executed under the control of said operating system (161) by said executing means (101) in said step (b) before the power is disconnected from said arithmetic apparatus (110) in said step (c); (e) transmitting the data from said nonvolatile storage device (106) of said arithmetic apparatus (110) to said main storage device (103) of said arithmetic apparatus (110) after said arithmetic apparatus (110) restarts in said step (a) before the application program (160) is executed by said executing means of said arithmetic apparatus (110) in said step (b); and (f) producing a previous state on the basis of the data saved on said nonvolatile storage device (106) of said arithmetic apparatus (110) in said step (d) to operate said executing means (101) of said arithmetic apparatus (110) to execute said application program (160) under the control of said operating system (161) in said produced previous state in said step (b) after said arithmetic apparatus (110) restarts in said step (a).
16. Ile program storage device as set forth in claim 15, in which said method further comprises the step of 30 (g) allowing an operator to input an instruction to decide whether said current state is stored in said nonvolatile storage device (106) of said arithmetic apparatus (110) as said previous state or not, in which said data on said current state is saved on said nonvolatile storage device (106) of said arithmetic apparatus (110) in said step (d) before the power is disconnected from 35 said arithmetic apparatus (110) in said step (c) in response to said instruction inputted in said step (g) to decide that said current state is stored in said nonvolatile storage device (106) of said arithmetic apparatus (110).
27
17. The program storage device as set forth in claim 15, in which said data on said current state are temporally stored in said main storage device (103) while said executing means (101) of said arithmetic apparatus (110) is executing said application program (160) under the control of said operating system (16 1) in said step (b).
18. lle program storage device as set forth in claim 16, in which said method further comprises the step of (h) preparing a plurality of application programs (160) to be stored in said program 10 storing means (102), said plurality of application programs (160) being simultaneously executed by said executing means (101) in said step (b), in which said step (g) having the step of (g 1) allowing said operator to input an instruction to select at least one from among said application programs (160) simultaneously executed by said executing means (101) 15 in said step (b), said data on said current state, in which the application program (160) selected in said step (gl) is executed under the control of said operating system (161) in said step (b), being saved on said nonvolatile storage device (106) of said arithmetic apparatus (110) in said step (d) before the power is disconnected from said arithmetic apparatus (110) in 20 said step (c).
19. A program storage device readable by an arithmetic apparatus (110) and storing therein a basic input output system (BIOS) for operating said arithmetic apparatus (110) comprising:
nonvolatile storing means (106) for permanently storing a predetermined application program (160); executing means (101) for executing said application program (160); a volatile main storage device (103) being capable of temporally storing data therein and being accessed by said executing means (101) while executing said application program (160); a nonvolatile storage device (106) electrically connected to said main storage device (103) and being capable of permanently storing data therein; and a nonvolatile register (105) having a data save bit; in which said basic input output system performs a method of operating said arithmetic apparatus (110), said method comprising the steps of(a) transmitting said program (160) from said program storing means (102) of said arithmetic apparatus (110) to said main storage device (103) of said arithmetic apparatus 28 (110); (d) operating said executing means (101) of said arithmetic apparatus (110) to execute the program (160) transmitted in said step (a); (e) saving said program (260) on said main storage device (103) of said arithmetic apparatus (110); and (f) judging whether there is a program stored in said main storage device (103) of said arithmetic apparatus (110) or not, and said program (160) being transmitted from said nonvolatile storage device (106) of said arithmetic apparatus (110) to said main storage device (103) of said arithmetic apparatus (110) in said step (a) when the judgment is made in said step (d) upon that there is no program saved on said main storage device (103) of said arithmetic apparatus (110).
20. A program storage device readable by an arithmetic system (210) and storing 15 therein a program executed by said arithmetic apparatus (210) comprising program storing means (202) for storing a predetermined program (260) to perform a method of controlling an electronic circuit apparatus (220) comprising: executing means (221) for executing said program (260); and a volatile main storage device (222) being capable of temporally storing said 20 program (260) therein to be executed by said executing means (221), in which said method comprising the steps of: (a) transmitting said program (260) from said program storing means (202) of said arithmetic apparatus (210) to said main storage device (222) of said electronic circuit apparatus (220); and 25 (b) judging whether there is a program stored in said main storage device (222) of said electronic circuit apparatus (220) or not, said program (260) being transmitted from said program storing means (202) of said arithmetic apparatus (210) to said main storage device (222) of said electronic circuit apparatus (220) in said step (a) when the judgment is made in said step (c) upon 30 that there is no program saved on said main storage device (222) of said electronic circuit apparatus (220).
21. The program storage device as set forth in claim 20, in which said electronic circuit apparatus (220) having a nonvolatile register (223) having a data save bit, and said judgment is made in said step (c) on the basis of said data save bit of said register (223).
GB9815598A 1997-07-22 1998-07-20 Arithmetic apparatus with resume function Withdrawn GB2329268A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9194685A JPH1139143A (en) 1997-07-22 1997-07-22 Arithmetic unit, control method therefor, storage medium storing control program of the unit, electronic circuit device utilizing arithmetic unit, control method therefor and storage medium storing control program of the device

Publications (2)

Publication Number Publication Date
GB9815598D0 GB9815598D0 (en) 1998-09-16
GB2329268A true GB2329268A (en) 1999-03-17

Family

ID=16328589

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9815598A Withdrawn GB2329268A (en) 1997-07-22 1998-07-20 Arithmetic apparatus with resume function

Country Status (3)

Country Link
JP (1) JPH1139143A (en)
DE (1) DE19833035A1 (en)
GB (1) GB2329268A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006003920A1 (en) 2004-06-30 2006-01-12 Vodafone K.K. Linked operation method and mobile communication terminal device

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002065274A1 (en) * 2001-02-13 2002-08-22 Fujitsu Limited Information processing apparatus
JP4683218B2 (en) * 2004-01-27 2011-05-18 日本電気株式会社 Fast restart method, information processing apparatus, and program
JPWO2006001050A1 (en) * 2004-06-24 2008-04-17 富士通株式会社 Computer activation method, program, storage medium, and information processing apparatus
JP2006344113A (en) * 2005-06-10 2006-12-21 Matsushita Electric Ind Co Ltd Security system and security method for information processor
JP5406178B2 (en) * 2008-04-16 2014-02-05 パナソニック株式会社 Playback device, playback method, and program
JP5085406B2 (en) * 2008-04-25 2012-11-28 株式会社東芝 Information processing apparatus and information processing system
CN102073509A (en) * 2009-11-25 2011-05-25 上海摩波彼克半导体有限公司 Program carrier circuit structure and program loading method of electronic equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4691316A (en) * 1985-02-14 1987-09-01 Support Technologies, Inc. ROM emulator for diagnostic tester
WO1990003000A1 (en) * 1988-09-08 1990-03-22 Data I/O Corporation Method and apparatus for determining an internal state of an electronic component
EP0404061A2 (en) * 1989-06-23 1990-12-27 Kabushiki Kaisha Toshiba Computer having a resume function and operable on an internal power source
EP0415376A2 (en) * 1989-08-28 1991-03-06 Kabushiki Kaisha Toshiba Computer unit with a resume function
EP0518622A1 (en) * 1991-06-10 1992-12-16 Matsushita Electric Industrial Co., Ltd. Apparatus and method for suspending and resuming software on a computer
EP0518623A2 (en) * 1991-06-10 1992-12-16 Matsushita Electric Industrial Co., Ltd. Apparatus and method for suspending and resuming software on a computer

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4691316A (en) * 1985-02-14 1987-09-01 Support Technologies, Inc. ROM emulator for diagnostic tester
WO1990003000A1 (en) * 1988-09-08 1990-03-22 Data I/O Corporation Method and apparatus for determining an internal state of an electronic component
EP0404061A2 (en) * 1989-06-23 1990-12-27 Kabushiki Kaisha Toshiba Computer having a resume function and operable on an internal power source
EP0415376A2 (en) * 1989-08-28 1991-03-06 Kabushiki Kaisha Toshiba Computer unit with a resume function
EP0518622A1 (en) * 1991-06-10 1992-12-16 Matsushita Electric Industrial Co., Ltd. Apparatus and method for suspending and resuming software on a computer
EP0518623A2 (en) * 1991-06-10 1992-12-16 Matsushita Electric Industrial Co., Ltd. Apparatus and method for suspending and resuming software on a computer

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006003920A1 (en) 2004-06-30 2006-01-12 Vodafone K.K. Linked operation method and mobile communication terminal device
EP1762938A1 (en) * 2004-06-30 2007-03-14 Vodafone K.K. Linked operation method and mobile communication terminal device
EP1762938A4 (en) * 2004-06-30 2009-05-27 Vodafone Plc Linked operation method and mobile communication terminal device
US8826053B2 (en) 2004-06-30 2014-09-02 Vodafone Group Plc Coordination operation method and mobile communication terminal

Also Published As

Publication number Publication date
JPH1139143A (en) 1999-02-12
DE19833035A1 (en) 1999-01-28
GB9815598D0 (en) 1998-09-16

Similar Documents

Publication Publication Date Title
US6434696B1 (en) Method for quickly booting a computer system
US20080010446A1 (en) Portable apparatus supporting multiple operating systems and supporting method therefor
US20030056144A1 (en) Information processing apparatus with resume function and information processing system
US6460136B1 (en) Method and apparatus for loading an operating system kernel from a shared disk memory
US4703446A (en) Data processing unit diagnosis control apparatus
GB2329268A (en) Arithmetic apparatus with resume function
CN101145121B (en) Computer test method
JPH0855097A (en) Data processing system and its memory access method
CN112948315A (en) Storage area sharing method, storage medium and electronic device
KR920003279B1 (en) Method for loading os & nos in data processing device
WO2022249240A1 (en) Activation system and activation method
JP2584903B2 (en) External device control method
JPH04169929A (en) Boot priority changing device
JPS6363935B2 (en)
JPH10207703A (en) Remote programming for microprocessor through standard serial port
JPH09269896A (en) Booting method for firm cpu
JPH1153276A (en) Method and device for transferring data
JP2591002B2 (en) Information processing device
JPH10320366A (en) Nonresident program loading system
KR100477138B1 (en) Personal computer systems
JPH05324340A (en) Program loading method
JPH04308940A (en) Automatic assignment management system for resource in virtual computer system
JP2684663B2 (en) Micro program control circuit
JPH07219918A (en) System starting method for parallel computer
JP2000215042A (en) In-operation update system for control program

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)