Electronic apparatus and disk protection method

An electronic apparatus includes a body, a triaxial acceleration sensor which is built in the body and includes a long axis and a short axis, a disk device built in the body, a calculation unit that calculates a value on a basis of an acceleration value which is detected by the triaxial acceleration sensor and is output in a direction perpendicular to the long axis and to the short axis, a setting unit that sets a threshold in a state of the body in which a plane formed by the long axis and the short axis is approximately parallel to a direction of action of gravitational acceleration, and a controller that starts protection of the disk device on a basis of a result of comparison between the value calculated by the calculation unit and the threshold.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority from the prior Japanese Patent Applications No. 2004-366875, filed on Dec. 17, 2004; the entire contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a disk protection method and particularly to a method for protecting a disk device built in an electronic apparatus.

2. Description of the Related Art

Various electronic apparatuses such as computers have been equipped with magnetic disk devices in recent years. The magnetic disk devices have low tolerance to vibration and shock.

If vibration, shock, etc. occurs in a magnetic disk device in the middle of writing of data in a magnetic disk by use of a magnetic head of the magnetic disk device or in the middle of reading of data written in a magnetic disk by use of the magnetic head, there is a possibility that the magnetic head and the magnetic disk will collide with each other so as to be broken.

To avoid this trouble, a mechanism for setting a condition for retracting a magnetic head and executing retraction of the magnetic head on the basis of the set condition has been disclosed in JP-A-2004-146036 (see JP-A-2004-146036 (page 11, FIG. 6)).

Developers have proceeded with development of a triaxial acceleration sensor as a sensor for detecting fluctuation of an electronic apparatus with a built-in magnetic disk.

For example, the triaxial acceleration sensor can detect various fluctuations compared with a biaxial acceleration sensor. Accordingly, it is preferable that the triaxial acceleration sensor is used for detecting various fluctuations to prevent any trouble of the magnetic head and the magnetic disk from being caused by the various fluctuations detected.

SUMMARY OF THE INVENTION

The invention provides an electronic apparatus and a disk protection method in which a magnetic head is retracted on the basis of acceleration detected by a triaxial acceleration sensor.

According to an aspect of the present invention, an electronic apparatus includes a body, a triaxial acceleration sensor, a disk device which is built in the body, and a controller which executes protection of the disk device in accordance with a type of fluctuation related to a state of the electronic apparatus.

According to another aspect of the present invention, a disk protection method executed in an electronic apparatus including a body, a triaxial acceleration sensor, and a disk device built in the body, the disk protection method includes recognizing a state of the electronic apparatus is, and executing protection of the disk device in accordance with a type of fluctuation related to the recognized state of the electronic apparatus.

According to the invention, there can be provided an electronic apparatus and a disk protection method in which a magnetic head is retracted on the basis of acceleration detected by a triaxial acceleration sensor.

DETAILED DESCRIPTION OF THE INVENTION

An embodiment of the invention will be described below with reference to the drawings.

FIG. 1is a view showing a state in which a display unit3of a notebook type personal computer (hereinafter referred to as “computer”)1is opened with respect to a body2.

The computer1includes a body2, and a display unit3. A display device with an LCD (Liquid Crystal Display)4is incorporated in the display unit3. The LCD4is located approximately in the center of the display unit3.

The display unit3is attached to the body2so that the display unit3can rotate between an open position and a close position. The body2is substantially shaped like a box. A keyboard unit5, a power button6for powering the computer1on/off, etc. are disposed in an upper surface of the body2. The power button6is pushed down when use of the computer1starts.

A music reproducing switch7and a speaker8are disposed in a front surface of the body2. For example, the music reproducing switch7is a slide type switch which can take a music reproducing stop position and a music reproducing start portion. When a user does not want to listen to music, the music reproducing switch7is moved to the reproducing stop position. On the other hand, when the user wants to listen to music, the music reproducing switch7is moved to the reproducing start position.

The speaker a outputs sound.

The hardware configuration of the computer1will be described below with reference toFIG. 2.

A CPU10, a main memory13, a graphics controller15and an I/O hub20are connected to a host hub (first bridge circuit)11.

The host hub11is connected to the CPU10through a system bus12. The host hub11has a built-in memory controller for controlling access to the main memory13.

The CPU10is a main processor for controlling the operation of the computer1. The CPU10executes an operating system (OS)13band application and utility programs13cloaded from a hard disk drive (HDD)21as an external storage device to the main memory13through a memory bus14. The CPU10also executes a BIOS (Basic Input Output System)13aloaded from a BIOS-ROM29to the main memory13.

The graphics controller15connected to the host hub11through an AGP (Accelerated Graphics Port) bus16outputs a digital display signal to the LCD4. A video memory (VRAM)17is connected to the graphics controller15. Data drawn on the video memory17by the OS/application program are displayed on the LCD4by the graphics controller15.

The I/O hub (second bridge circuit)20connected to the host hub11through a private bus such as a hub interface controls respective devices on an LPC (low pin count) bus26.

The I/Q hub20has a built-in parallel ATA controller etc. The HDD21and an ODD27are connected to the I/O hub20through a parallel ATA21a. The operating system (OS), the application and utility programs and data generated by the user's using the application program are stored in the HDD21.

An audio codec23is connected to the I/O hub20through an AC (Audio codec)97(22). The audio codec23is a kind of sound input/output codec. The audio codec23has an input/output sound codec portion, and an analog modem data processing portion.

A modem24and an amplifier (AMP)25aare connected to the audio codec23. The AMP25aamplifies a sound signal generated by the audio codec23. The sound signal amplified by the AMP25ais fed to the speaker8, so that the speaker a outputs acoustic wave of an audible frequency band.

The modem24modulates a digital signal to an analog signal and demodulates an analog signal to a digital signal.

An embedded controller/keyboard controller In (EC/KBC)28and the BIOS-ROM29are connected onto the LPC bus26.

The BIOS (Basic Input Output System)13ais stored in the BIOS-ROM29.

The embedded controller/keyboard controller IC (EC/KBC)28is a one-chip microcomputer in which an embedded controller for performing power management, etc. and a keyboard controller for controlling the keyboard (KB) unit5are integrated.

The power button6, the music reproducing button, a PSC (Power Supply Controller)30, the keyboard5, a triaxial acceleration sensor39, an open-close detection portion40and a docking interface41are connected to the EC/KBC28. An AC adapter31and a secondary battery32are connected to the PSC30.

When the user operates the power button6, the EC/KBC28detects the operation of the power button6. When the operation of the power button6is detected, the EC/KBC28gives a notice to the PSC30to start power supply, for example, to the system of the computer1. The PSC30controls the AC adapter31or the secondary battery32to start power supply to the system of the computer1on the basis of the notice received from the EC/KBC28.

The PSC30detects removal of the AC adapter31from the computer1. The PSC30further gives the EC/KBC28notice of the removal of the AC adapter31from the computer1.

The music reproducing switch7is a switch for controlling music reproducing start/stop, etc. The user's operation of the music reproducing switch7is detected by the EC/KBC28. After the EC/KBC28detects a switch operating event, the EC/KBC28controls reproducing/stop of a music reproducing application. After the EC/KBC28detects a switch operating event, the EC/KBC28further recognizes the state of the computer1as a music reproducing mode.

The triaxial acceleration sensor39outputs the detected acceleration to the EC/KBC. The triaxial acceleration sensor39will be described later in detail.

The open-close detection portion40detects the opening/closing of the display unit4with respect to the body2. The open-close detection portion40detects movement of the display unit4from the open position to the close position and movement of the display unit4from the close position to the open position relative to the body2and gives the EC/KBC28notice of the detected movement.

A so called docker which is a functional expansion unit is connected to the docking interface41. When the docker is connected to the docking interface41, the EC/KBC28recognizes the connection of the docker.

Next, the relation between the output of the triaxial acceleration sensor39and axes of space coordinates will be described.

FIG. 3is a graph showing the relation between the output of the triaxial acceleration sensor and axes of space coordinates.

In space coordinates (X, Y, Z), a Z axis is located to be perpendicular to an X-Y plane. Force of gravity g acts in a direction opposite to the Z axis.

The triaxial acceleration sensor39is provided in the space coordinates (X, Y, Z). The relation between coordinates (Xs, Ys, Zs) of three axes of the triaxial acceleration sensor39and the space coordinates (X, Y, Z) is as follows. An angle α is formed between the Xs axis of the acceleration sensor39and the X-Y plane of the space coordinates (X, Y, Z). An angle β is formed between the Ys axis of the acceleration sensor39and the X-Y plane. An angle θ is formed between the Zs axis of the acceleration sensor39and the Z axis of the space coordinates (X, Y, Z). Assume now that the X-axis direction of the triaxial acceleration sensor39is a short axis and the Y-axis direction of the triaxial acceleration sensor39is a long axis.

Static acceleration output from the triaxial acceleration sensor39in a stationary state of the triaxial acceleration sensor39is given as measured values of acceleration components (Ax [G], Ay [G], AZ [G]) obtained by decomposing gravity g into the coordinates (Xs, YS, Zs) of the three axes of the acceleration sensor39.

Assume now that the specifications for the acceleration sensor39are defined so that the acceleration sensor39outputs the following acceleration components.
Ax=g×sin α[G]
Ay=g×sin β[G]
Az=g×cos θ[G]

The specifications for the acceleration sensor39are defined so that synthetic acceleration A in a stationary state of the acceleration sensor39satisfies the following equation.
A=√{square root over ((Ax2+Ay2+Az2))}=g=1[G]

Dynamic acceleration output from the triaxial acceleration sensor39in a moving state of the triaxial acceleration sensor39is given as measured values of acceleration components (Ax [G], Ay [G], Az [G]) obtained by decomposing a synthetic vector of external force and gravity into the coordinates (Xs, Ys, Zr) of the three axes of the acceleration sensor39.

Assume now that (Nx, Ny, Nz) are components obtained by decomposing external force N into the coordinates (Xs, Ys, Zs) of the three axes of the acceleration sensor39. The specifications for the triaxial acceleration sensor39are defined so that acceleration components of dynamic acceleration output from the triaxial acceleration sensor39can be given as follows in consideration of the respective components of the external force N.
Ax=Nx+g×sin α[G]
Ay=Ny+g×sin β[G]
Az=Nz+g×cos θ[G]

The specifications are defined so that synthetic acceleration A in a free fall state of the triaxial acceleration sensor39satisfies the following equation.
A=√{square root over ((Ax2+Ay2+Az2))}=0[G]

Next, the relation between the rotation angle of the triaxial acceleration sensor39and an acceleration value output from the triaxial acceleration sensor39will be described in the case where the triaxial acceleration sensor39is rotated on a specific axis.

FIG. 4is a graph showing the relation between the rotation angle of the triaxial acceleration sensor39and a static acceleration value output in the X-axis direction from the triaxial acceleration sensor39when the triaxial acceleration sensor39is rotated by ±180° on the Y axis.

An equation expressing the relation between the rotation angle of the triaxial acceleration sensor39on the Y axis and the static acceleration value output in the X-axis direction from the triaxial acceleration sensor39will be described below with reference toFIG. 3.

First, the coordinate axes (Xs, Ys, Zs) of the triaxial acceleration sensor39are made coincident with the space coordinate axes (X, Y, Z). In this case, the rotation angle α is equal to 0°.

Then, the rotation angle α is changed in a numerical value width of ±90°. When the horizontal axis of the graph expresses rotation angle α [°] and the vertical axis expresses static acceleration Ax [G], the rotation angle of the triaxial acceleration sensor39on the Y axis and the static acceleration value output in the X-axis direction from the triaxial acceleration sensor39satisfy the following relational equation.
Ax=g×sin α[G](g=1[G] in FIG.4)

Next, the relation between a constant acceleration variation ΔAx in the static acceleration Ax [G] output in the X-axis direction from the triaxial acceleration sensor39and an inclination angle variation Δα necessary for generating the constant acceleration variation ΔAx will be described.

FIG. 5is a graph showing the relation between a constant acceleration variation ΔAx in the static acceleration Ax [G] output in the X-axis direction from the triaxial acceleration sensor39and an inclination angle variation Δα necessary for generating the constant acceleration variation ΔAx.FIG. 6is a view showing a state in which the computer1is set horizontally and a state in which the computer1is set vertically.

Referring to the graph ofFIG. 5, for example, it can be said that the inclination angle variation Δα necessary for generating the X-axis static acceleration variation ΔAx=0.04 [G] has the following relation.Horizontal Setting: α (inclination angle)=0°, Δα (inclination angle variation)=2.3°45° inclination setting: α=±45°, Δα=3.2°Vertical setting: α=±90°, Δα=16.3°

The term “horizontal setting” means the state of the computer1encircled by a broken-line circle still shown inFIG. 6, that is, the state of the computer1in which a hinge3ais parallel to the X-Y plane.

The term “vertical setting” means the state of the computer1encircled by a broken-line circle sta2shown inFIG. 6, that is, the state of the computer1in which the hinge3ais vertical to the X-Y plane.

By referring to the aforementioned relation between the inclination angle α and the inclination angle variation Δα, static acceleration output characteristic in the X-axis direction can be evaluated so that the inclination angle variation Δα required for generating the static acceleration variation ΔAx=0.04 [G] in the X-axis direction in an inclination angle α range of from −45° to 45° takes a value of 2.3° to 3.2°. That is, it can be evaluated so that the value of the inclination angle variation Δα required for generating the static acceleration variation ΔAx=0.04 [G] in the X-axis direction in an inclination angle α range of from −45° to 45° is kept approximately constant.

On the other hand, it can be evaluated so that the inclination angle variation Δα required for generating the static acceleration variation ΔAx=0.04 [G] in the X-axis direction takes a larger value (e.g. inclination angle variation Δα=16.3° in the case of inclination angle α+±90°), for example, compared with the inclination angle variation Δα=3.2° in the case of the inclination angle α=±45° as the inclination angle approaches ±90°.

As will be described later in detail, the EC/KBC28detects the X-axis acceleration sensor output at intervals of a constant sampling period T [s] when the HDD protection function is on. The EC/KBC28predicts generation of impact applied on the HDD21by using the detected acceleration sensor output value. The term “prediction of generation of impact” means that “the EC/KBC28predicts the possibility that impact will be applied on the built-in HDD21of the computer1because of fluctuation of the computer1” when the acceleration variation ΔAx in the sampling period T [s] exceeds a predetermined threshold.

When, for example, the predetermined threshold is set to be 0.04 [G], detecting characteristic for fluctuation in the X-axis direction can be evaluated as the following characteristic.(1) When an X-axis acceleration variation corresponding to an angle variation of 2° to 3° approximately is generated in a sampling period in the case where the inclination angle α is in a range of from −45° to 45°, the EC/KBC28predicts “the possibility that impact will be generated”.(2) When an X-axis acceleration variation corresponding to an angle variation of 16° approximately is generated in a sampling period as the inclination angle α approaches 90°, the EC/KBC28predicts “the possibility that impact will be generated”.

Incidentally, the relation between the acceleration value Ay [G] and acceleration variation ΔAy [G] output in the Y-axis direction from the triaxial acceleration sensor39and the inclination angle β [°] of the triaxial acceleration sensor39in the case where the triaxial acceleration sensor39is rotated by ±180° on the X-axis direction can be evaluated in the same manner as in the aforementioned case where the triaxial acceleration sensor39is rotated by ±180° on the Y-axis direction

According to the evaluation, it can be said that characteristic of two axial components (X and Y) is as follows.(a) When the computer1is set approximately horizontally (with an inclination angle of −45° to +45°), the sensitivity for detection of fluctuation of the computer1is very high.(b) As the computer1is set unstably vertically (with an inclination angle of ±90°), the sensitivity for detection of fluctuation of the computer1becomes very low.

Next, the relation between the constant acceleration variation ΔAz with respect to the static acceleration Az [G] output in the Z-axis direction from the triaxial acceleration sensor39and the inclination angle variation Δθ required for generating the constant acceleration variation ΔAz will be described.

FIG. 7is a graph showing the relation between the rotation angle of the triaxial acceleration sensor39and the static acceleration value output in the Z-axis direction from the triaxial acceleration sensor39when the triaxial acceleration sensor39is rotated by ±180° on the Y-axis.

First, coordinate axes (Xs, Ys, Zs) of the triaxial acceleration sensor39are made coincident with the space coordinate axes (X, Y, Z). In this case, the rotation angle θ is equal to 0°.

Then, the rotation angle θ is changed in a numerical value width of ±90°. When the horizontal axis of the graph expresses rotation angle θ [°] and the vertical axis expresses static acceleration Az [G], the rotation angle of the triaxial acceleration sensor39on the Y axis and the static acceleration value output in the Z-axis direction from the triaxial acceleration sensor39satisfy the following relational equation.
Az=g×cos θ [G](g=1 [G] in FIG.7)

Next, the relation between a constant acceleration variation ΔAz in the static acceleration Az [G] output in the Z-axis direction from the triaxial acceleration sensor39and an inclination angle variation Δθ necessary for generating the constant acceleration variation ΔAz will be described.

FIG. 8is a graph showing the relation between a constant acceleration variation ΔAz in the static acceleration Az [G] output in the Z-axis direction from the triaxial acceleration sensor39and an inclination angle variation Δθ necessary for generating the constant acceleration variation ΔAz.

Referring to the graph ofFIG. 8, for example, it can be said that the inclination angle variation Δθ necessary for generating the Z-axis static acceleration variation ΔAz=0.04 [G] has the following relation.Horizontal Setting: θ (inclination angle)=0°, Δθ (inclination angle variation)=16.3°45° inclination setting: θ=±45°, Δθ=3.2°vertical setting: θ=±90°, Δθ=2.3°

By referring to the aforementioned relation between the inclination angle θ and the inclination angle variation Δθ, static acceleration output characteristic in the Z-axis direction can be evaluated so that the inclination angle variation Δθ required for generating the Z-axis static acceleration variation ΔAz=0.04 [G] in an inclination angle θ range of from −90° to −45° and from 45° to 90° takes a value of 2.3° to 3.2°. That is, it can be evaluated so that the value of the inclination angle variation Δθ required for generating the Z-axis static acceleration variation ΔAz=0.04 [G] in an inclination angle θ range of from −90° to −45° and from 45° to 90° is kept approximately constant.

On the other hand, it can be evaluated so that the inclination angle variation Δθ required for generating the Z-axis static acceleration variation ΔAz=0.04 [G] takes a larger value (e.g. inclination angle variation Δθ=16.3° in the case of inclination angle θ=±0°), for example, compared with the inclination angle variation Δθ=3.2° in the case of the inclination angle θ=±45° as the inclination angle θ approaches ±0°.

As will be described later in detail, the EC/KBC28detects the Z-axis acceleration sensor output at intervals of a constant sampling period T [s]. The EC/KBC28predicts generation of impact applied on the HDD21by using the detected acceleration sensor output value. The term “prediction of generation of impact” means that “the EC/KBC28predicts the possibility that impact will be applied on the built-in HDD21of the computer1because of fluctuation of the computer1” when the acceleration variation ΔAz in the sampling period T [S] exceeds a predetermined threshold.

When, for example, the predetermined threshold is set to be 0.04 [G], detecting characteristic for fluctuation in the Z-axis direction can be evaluated as the following characteristic.(3) When a Z-axis acceleration variation corresponding to an angle variation of 2° to 3° approximately is generated in a sampling period in the case where the inclination angle θ is in a range of from −90° to −45° and 45° to 90°, the EC/KBC28predicts “the possibility that impact will be generated”.(4) When a Z-axis acceleration variation corresponding to an angle variation of 16° approximately is generated in a sampling period as the inclination angle θ approaches 0°, the EC/KBC28predicts “the possibility that impact will be generated”.

According to the evaluations (3) and (4), it can be said that characteristic of the Z-axis component is as follows.(c) When the computer1is set approximately horizontally (with an inclination angle of 0°), the sensitivity for detection of fluctuation of the computer1is very low.(d) As the computer1is set unstably vertically (with an inclination angle of −90° to −45° and 45° to 90°), the sensitivity for detection of fluctuation of the computer1becomes very high.

Use of the characteristics (c) and (d) of the Z-axis component makes the following facts possible.(A) It is possible to prevent detection error in prediction of generation of impact for weak fluctuation generated when a computer1is used in a state in which the computer1is set relatively horizontally.(B) Weak fluctuation generated when a computer1is used in a state in which the computer1is set relatively vertically can be predicted as fluctuation having the possibility that impact will be generated. Next, the HDD protection function will be described in brief.

FIG. 9is a schematic view for explaining the HDD protection function.FIG. 10is a view showing an example of hardware configuration of the HDD21.

The triaxial acceleration sensor39detects triaxial (X, Y, Z) acceleration values. The triaxial acceleration sensor39sends the detected triaxial (X, Y, Z) acceleration values as analog voltage values to the EC/KBC28through signal lines39a,39band39crespectively.

An A/D converter28abuilt in the EC/KBC28converts the triaxial (X, Y, Z) acceleration values received from the triaxial acceleration sensor39into digital values.

The EC/KBC28measures triaxial (X, Y, Z) acceleration values at intervals of a constant sampling period T [s]. The EC/KBC28judges, on the basis of the measured acceleration values, “whether or not fluctuation having the possibility that impact will be applied on the built-in HDD21of the computer1occurs in the computer1” or “whether or not the computer1is free from fluctuation having the possibility that impact will be applied on the built-in HDD21of the computer1” at intervals of a constant period.

The EC/KBC28's judgment as to “whether or not fluctuation having the possibility that impact will be applied on the built-in HDD21of the computer1occurs in the computer1” is referred to as “prediction of generation of impact”. The EC/KBC28's judgment as to “whether or not the computer1is free from fluctuation having the possibility that impact will be applied on the built-in HDD21of the computer1” is referred to as “prediction of static state”.

When the EC/KBC28predicts generation of impact, a bit in a register28bprovided in the EC/KBC28is set in accordance with a result of the “prediction of generation of impact”. The fact that a bit is set in the register28bas a result of the S “prediction of generation of impact” means the fact that the computer1predicts that “impact will be generated in the HDD21”.

On the other hand, when the EC/KBC28predicts static state, the bit set in the register28bprovided in the SC/KBC28is reset in accordance with a result of the “prediction of static state”. The fact that the bit is reset in the register28bas a result of the “prediction of static state” means the fact that “fluctuation having the possibility of impact applied on the HDD21does not occur in the computer1”.

When the state of the register28bin the EC/KBC28is changed, the EC/KBC28sends an SMI (System Management Interrupt) signal to the I/O hub20. The BIOS13aexecuted by the CPU10executes an SMI (System Management Interrupt) process. The BIOS13areads the register28bin the EC/KBC28through an LPC bus20bby executing the SMI process.

The BIOS13asends the read contents of the register28bto a utility13coperating on the OS13bthrough an event manager13d. The utility13cis a software used for performing setting etc. necessary for implementing the HDD protection function. The function of the utility13cwill be described later in detail.

When the read contents of the register28bindicate “prediction of generation of impact”, the BIOS13asends a “request for execution of HDD21head retraction” as an event to the event manager13d.

Upon reception of the “request for execution of HDD21head retraction”, the event manager13dperforms control to prevent commands (e.g. data write process for the HDD21) managed by an HDD file system from being output.

Upon reception of the “request for execution of HDD21head retraction”, the event manager13dfurther outputs a command of a head211high-speed retraction process (Unload Immediate Command) to an IDE drive driver13e. The Unload Immediate Command is a command for temporarily interrupting a data read/write process between a cache213and a disk210, for example, by every track and retracting the head211to a ramp212. When the command of the head high-speed retraction process (unload immediate Command) is used, data in the cache213of the HDD21can be prevented from being lost even in the case where the head211is temporarily retracted to the ramp212in the middle of read/write.

The IDE drive driver13ereceives the command of the head high-speed retraction process and temporarily retracts the head211to the ramp212.

On the other hand, when the read contents of the register28bindicate “prediction of static state”, the BIOS13asends an “HDD21head retraction cancel request” as an event to the event manager13dof the OS13b.

Upon reception of the “HDD21head retraction cancel request”, the event manager13dperforms control so that commands (e.g. data write process for the HDD21) managed by the HDD file system are output.

Upon reception of the “HDD21head retraction cancel request”, for example, the event manager13dfurther outputs a read command to the IDE drive driver13e. Upon reception of the read command, the IDE drive driver13erestarts a process just before retraction of the head211. Next, an example of a control flow for achieving the HDD protection function will be described.

FIG. 11is a flow chart for explaining an example of a control flow executed in the EC/KBC for achieving the HDD protection function.

The EC/KBC28reads the register28cand judges whether the HDD protection function is on or not (step S101). The register28cwill be described later.

When the HDD protection function is on (Yes in the step S101) and it is the sampling period (Yes in step S102), the A/D converter28abuilt in the EC/KBC28converts the triaxial (X, Y, Z) acceleration values output from the triaxial acceleration sensor39into digital values and detects the triaxial (X, Y, Z) acceleration values as voltage values (step S103).

On the other hand, when the HDD protection function is off (No in the step S101), this control flow is terminated.

Generally, the output values of the triaxial acceleration sensor39have characteristic values defined by 0G-offset voltage values [V] and sensitivities [V/G]. The characteristic values of the triaxial acceleration sensor39have individual variations. To correct the variations, corrected values of 0G-off set voltages [V] and sensitivities [V/G] are stored, for example, in a nonvolatile memory, for example, in an inspection process before shipping of the computer1.

The EC/KBC28corrects the voltage values detected by the A/D converter28aby using the corrected values of 0G-offset voltages [V] and sensitivities [V/G] (step S104). The EC/KBC28calculates acceleration values, acceleration variations and a synthetic acceleration value (seeFIGS. 3,5,7, etc.) by using the corrected voltage values (step S105).

The EC/KBC28executes a routine of predicting occurrence of impact by using the values calculated in the step S105(step S106). The contents of processing executed by the routine of predicting occurrence of impact will be described later in detail.

The EC/KBC28further executes a routine of predicting static state by using the values calculated in the step S105(step S107).

After the routine of predicting occurrence of impact and the routine of predicting static state are executed, a bit “1” set in the register28bis read to thereby confirm the state in which “the BIOS is requested to retract the head of the HDD21” (step S108). (The register28bis read to thereby check whether “the BIOS is requested to retract the head of the HDD21or not”).

When the BIOS is not requested to retract the head of the HDD21, that is, when the bit of the register28bis zero (No in the step S108), a result of the impact occurrence predicting routine executed in the step S106is referred to (step S109).

When the prediction that “impact will occur onto the HDD21” is given (Yes in the step S109) as a result of execution of the impact occurrence predicting routine, a bit “1” is set in the register28bprovided in the EC/KBC28(to obtain the state that “the BIOS is requested to retract the head of the HDD21”) (step S110).

After the bit “1” is set in the register28b, the EC/KBC28sends an SMI signal (execution of head retraction) to the I/O hub20(step S111).

On the other hand, when the BIOS is requested to retract the head of the HDD21(Yes in the step S108), a result of the static state predicting routine executed in the step S106is referred to (step S111).

When the prediction that “the computer1is at a standstill” is given (Yes in the step S111) as a result of execution of the static state predicting routine, the register28bprovided in the EC/KBC28is reset (to obtain the state that “the BIOS is not requested to retract the head of the HDD 21”) (step S112).

After the bit of the register28bis reset, the EC/KBC28sends an SMI signal (cancel of execution of head retraction) to the I/O hub20(step S113). Next, the impact occurrence predicting routine will be described. First, the kind of fluctuation applied on the computer1and data concerned with acceleration used for judging the kind of fluctuation will be described.

FIG. 12is a table showing the relation between the kind of fluctuation applied on the computer1and data required for judging the kind of fluctuation.

Five kinds of fluctuation “free fall”, “fluctuation due to strong external force”, “fluctuation with rotation on the Z axis”, “fluctuation with rotation on the X axis” and “fluctuation with rotation on the Y axis” are defined as kinds of fluctuation applied on the computer1.

The synthetic acceleration value is used for judging whether the kind of fluctuation applied on the computer1is “free fall” or not. The term “free fall” means action of gravity on the computer1to make the computer1fall. Here, the synthetic acceleration is acceleration synthesized from acceleration acting in the X-axis direction, acceleration acting in the Y-axis direction and acceleration acting in the Z-axis direction. The reason why the synthetic acceleration value is used for judging whether the kind of fluctuation is “free fall” is in that the free fall can be detected regardless of the posture of the computer1which falls in the gravitational direction.

The synthetic acceleration value is also used for judging whether the kind of fluctuation applied on the computer1is “fluctuation due to strong external force” or not. The term “fluctuation due to strong external force” means fluctuation caused by action of force such as user's force on the computer1. The reason why the synthetic acceleration value is used for judging whether the kind of fluctuation is “fluctuation due to strong external force” is in that the “fluctuation due to strong external force” can be detected in all directions (X, Y, Z).

The value of acceleration acting in the Z-axis direction and the variation of acceleration acting in the Z-axis direction are used for judging whether the kind of fluctuation applied on the computer1is “fluctuation with rotation on the Z axis” or not. The value of acceleration acting in the X-axis direction and the variation of acceleration acting in the X-axis direction are used for judging whether the kind of fluctuation applied on the computer1is “fluctuation with rotation on the X axis” or not. The value of acceleration acting in the Y-axis direction and the variation of acceleration acting in the Y-axis direction are used for judging whether the kind of fluctuation applied on the computer1is “fluctuation with rotation on the Y axis” or not. Next, the impact occurrence predicting routine executed in the step S106will be described.

FIG. 13is a flow chart for explaining an example of the impact occurrence predicting routine.

The EC/KBC28predicts occurrence of impact by using thresholds concerned with synthetic acceleration, acceleration and acceleration variations. A method for setting the thresholds in the EC/KBC will be described later in detail.

To predict occurrence of impact on the HDD21, the EC/KBC28detects the five kinds of fluctuation “free fall”, “application of strong force”, “fluctuation with rotation on the X axis”, “fluctuation with rotation on the Y-axis” and “fluctuation with rotation on the Z axis”.

A threshold A_fall [G] for detecting the “free fall” and a threshold A_shuck [G] for detecting the “application of strong force” are used as thresholds of synthetic acceleration A(n). When the EC/KBC28makes a decision that “the value of synthetic acceleration A(n) is not larger than the threshold A_fall [G], that is, the computer1falls freely” (Yes in the step S201), the prediction that “impact will occur on the HDD21” is given as the state of the computer1(step S210).

When the EC/KBC28makes a decision that “the value of synthetic acceleration A(n) is not larger than the threshold A_shuck [G], that is, strong force is applied on the computer1” (Yes in the step S202), the prediction that “impact will occur on the HDD21” is given as the state of the computer1(step S210).

For example, the threshold for detecting the free fall and the threshold for detecting the application of strong external force can be set as A_fall=0.5 [G] and A_shuck=1.5 [G].

A threshold Ax_high [G] for detecting the X-axis acceleration component value causing fluctuation having the possibility that impact will be applied on the HDD21and a threshold ΔAx_high [G] for detecting the X-axis acceleration variation value causing fluctuation having the possibility that impact will be applied on the HDD21are used as thresholds of the X-axis acceleration component. When the EC/KBC28makes a decision that “the value of the X-axis acceleration component |Ax(n)| is not smaller than the threshold Ax_high [G]” (Yes in the step S203) and makes a decision that “the value of the X-axis acceleration variation |ΔAx(n)| is not smaller than the threshold ΔAx_high [G]” (Yes in the step S204), the prediction that “impact will occur on the HDD21” is given as the state of the computer1(step S210).

When, for example, ΔAx_high=0.04 [G] is set, occurrence of fluctuation causing the rotation of the computer1by about 2.3° on the X axis can be detected.

A threshold Ay_high [G] for detecting the Y-axis acceleration component value causing fluctuation having the possibility that impact will be applied on the HDD21and a threshold ΔAy_high [G] for detecting the Y-axis acceleration variation value causing fluctuation having the possibility that impact will be applied on the HDD21are used as thresholds of the Y-axis acceleration component. When the EC/KBC28makes a decision that “the value of the Y-axis acceleration component |Ay(n)| is not smaller than the threshold Ay_high [G]” (Yes in the step S205) and makes a decision that “the value of the Y-axis acceleration variation |ΔAy(n)| is not smaller than the threshold ΔAy_high [G]” (Yes in the step S206), the prediction that “impact will occur on the HDD21” is given as the state of the computer1(step S210).

A threshold Az_high [G] for detecting the Z-axis acceleration component value causing fluctuation having the possibility that impact will be applied on the HDD21and a threshold ΔAz_high [G] for detecting the Z-axis acceleration variation value causing fluctuation having the possibility that impact will be applied on the HDD21are used as thresholds of the Z-axis acceleration component. When the EC/KBC28makes a decision that “the value of the Z-axis acceleration component |Az(n)| is not smaller than the threshold Az_high [G]” (Yes in the step S207) and makes a decision that “the value of the Z-axis acceleration variation |ΔAz(n)| is not smaller than the threshold ΔAz_high [G]” (Yes in the step S208), the prediction that “impact will occur on the HDD21” is given as the state of the computer1(step S210).

On the other hand, when the EC/KBC28does not make a decision that “the value of the Z-axis acceleration variation |ΔAz(n)| is not smaller than the threshold ΔAz_high [G]” (No in the step S208), this concludes that no fluctuation having the possibility that impact will be applied on the HDD21is applied on the computer1. Next, the relation between the kind of fluctuation applied on the computer1and the sensitivity level will be described.

FIG. 14is a table for explaining an example of the relation between the kind of fluctuation applied on the computer1and the sensitivity level.

When acceleration applied on the computer1satisfies a predetermined condition, the computer1predicts that “impact will occur on the HDD21”. Referring toFIG. 8for explaining the HDD protection function, the “judgment of occurrence of fluctuation on the computer1having the possibility that impact will be applied on the built-in HDD21of the computer1” is defined as “prediction of occurrence of impact”. Here, the “sensitivity level” is provided as a parameter for deciding the “allowed number of kinds of fluctuation to be considered for prediction of occurrence of impact”.

For example, as shown inFIG. 14, “level3”, “level2” and “level1” are provided as sensitivity levels.

The sensitivity level “level3” means that occurrence of impact is predicted when any one of the five kinds of fluctuation “free fall”, “application of strong external force”, “fluctuation with rotation on the Z axis”, “fluctuation with rotation on the X axis” and “fluctuation with rotation on the Y axis” occurs on the computer1. The sensitivity level “level2” means that occurrence of impact is predicted when any one of the three kinds of fluctuation “free fall”, “application of strong external force” and “fluctuation with rotation on the Z axis” occurs on the computer1. The sensitivity level “level1” means that occurrence of impact is predicted when either of the two kinds of fluctuation “free fall” and “application of strong external force” occurs on the computer1.

For example, in comparison between the sensitivity levels “level3” and “level1” the sensitivity level “level3” allows the five kinds of fluctuation as kinds of fluctuation to be considered at the time of predicting occurrence of impact whereas the sensitivity level “level1” allows the two kinds of fluctuation as kinds of fluctuation to be considered at the time of predicting occurrence of impact. Accordingly, in comparison between the sensitivity levels “level3” and “level1”, it can be said that the sensitivity level “level3” is higher in sensitivity than the sensitivity level “level1”.

When, for example, the “fluctuation with rotation on the X axis” occurs, occurrence of impact is predicted in the sensitivity level “level3” because the sensitivity level “level3” allows the “fluctuation with rotation on the X axis” as a kind of fluctuation to be considered at the time of predicting occurrence of impact whereas occurrence of impact is not predicted in the sensitivity level “level1” because the sensitivity level “level1” does not allow the “fluctuation with rotation on the X axis” as a kind of fluctuation to be considered at the time of predicting occurrence of impact. That is, it can be said that the sensitivity level “level3” in which occurrence of impact is predicted on the basis of the “fluctuation with rotation on the X axis” is higher in sensitivity than the sensitivity level “level1” in which occurrence of impact is not predicted on the basis of the “fluctuation with rotation on the X axis”. Next, selection of the sensitivity level in accordance with the scene of use of the computer1will be described.

FIG. 15is a table for explaining an example of selection of the sensitivity level in accordance with the scene of use of the computer1.

When the computer1is used in the condition that the computer1is settled on a desk while an AC adapter is connected to the computer1, it is preferable that the sensitivity level is selected to be “level3”. That is, because it is conceived that fluctuation hardly occurs on the computer1when the computer1is used in the condition that the computer1is settled on a desk, it is preferable that “level3” with the highest sensitivity is selected from the sensitivity levels described above with reference toFIG. 14. When the sensitivity level is selected to be “level3” for the computer1which is used in the condition that the computer1is settled on a desk, the computer1goes to a state in which the prediction that “impact will occur on the HDD21” is made in accordance with fluctuation which occurs on the computer1at the time of carrying the computer1.

When the battery-driven computer1is used on a lap or in a car, it is preferable that the sensitivity level is selected to be “level2”. Because it is conceived that the “fluctuation with rotation on the X axis” and the “fluctuation with rotation on the Y axis” occur frequently when the Computer1is used on a lap or in a car, that is, when the computer1is used in an approximately horizontal state (seeFIG. 6), the possibility that the state of the computer1will be kept in a state of prediction that “impact will occur on the HDD21” becomes high if the sensitivity level is set so that occurrence of impact can be predicted in accordance with generation of the “fluctuation with rotation on the X axis” or the “fluctuation with rotation on the Y axis” when the computer1is used on a lap or in a car. It is therefore preferable that “level2” is selected from the sensitivity levels described above with reference toFIG. 12.

When the computer1is used while inclined approximately vertically (seeFIG. 6), it is preferable that the sensitivity level is selected to be “level1”. For example, the scene in which the computer1is held in one hand and carried while music is listened to may be conceived as the scene in which the computer1is used while inclined approximately vertically.

Because it is conceived that the “fluctuation with rotation on the X axis”, the “fluctuation with rotation on the Y axis” and the “fluctuation with rotation on the Z axis” occur frequently when the computer1is used while inclined vertically, the possibility that the state of the computer1will be kept in a state of prediction that “impact will occur on the HDD21” becomes high if the sensitivity level is set so that occurrence of impact can be predicted in accordance with generation of the “fluctuation with rotation on the X axis”, the “fluctuation with rotation on the Y axis” and the “fluctuation with rotation on the Z axis” when the computer1is used while inclined vertically.

It is therefore preferable that “level1” is selected from the sensitivity levels described above with reference toFIG. 14. Next, the on/off control of the HDD protection function after powering on the computer1will be described.

FIG. 16is a first flow chart for explaining an example of the on/off control of the HDD protection function.FIG. 17is a second flow chart for explaining an example of the on/off control of the HDD protection function.FIG. 18is a view showing an example of the procedure for making the utility13cstore various kinds of acceleration thresholds in the EC/KBC28through the BIOS13a.

When the user operates the power button6, the system of the computer1is powered on (Yes in step S401). When the system of the computer1is not powered on (No in the step S401), this control flow is terminated.

After the computer1is powered on, the BIOS13aand the OS13bare started. If the utility13cbegins to operate on the OS13b(Yes in step S402) after the start of the OS13b, the utility13cwhich begins to operate on the OS13bgives the BIOS13anotice of the value of the sensitivity level (seeFIG. 14) set in the utility13cin advance. (step S403) (no1inFIG. 21).

The BIOS13agives the EC/KBC28notice of the thresholds concerned with various kinds of acceleration (seeFIG. 14) in accordance with the value of the sensitivity level received from the utility13c(step S404) (no2inFIG. 21). Assume now that the BIOS13ais configured to have the thresholds concerned with various kinds of acceleration in accordance with the value of the sensitivity level in advance.

The EC/KBC28stores the thresholds received from the BIOS13ain a specific register (step S405). Further, the utility13csets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn on the HDD protection function through the BIOS13a(step S406).

If the stop process of the system of the computer1is being executed (Yes in step S407) in the condition that the is utility13chas already operated on the OS13b(No in the step S402) after the start of the OS13b, the utility13cresets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn off the HDD protection function through the BIOS13a(step S408).

On the other hand, if the user selects the sensitivity level by using the utility13c(Yes in S409) in the condition that the stop process of the system of the computer1is not executed in the process of the step S407, that is, the utility13chas already operated on the BIOS13b(No in the step S407), the utility13cresets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to temporarily turn off the HDD protection function through the BIOS13a(step S410),

Then, the utility13cinforms the BIOS13aof the selectivity level value selected by the user (step S411).

The BIOS13ainforms the EC/KBC28of the thresholds concerned with various kinds of acceleration corresponding to the sensitivity level value received from the utility13c(step S412).

The EC/KBC28stores the thresholds concerned with various kinds of acceleration received from the BIOS13ain a specific register (step S413). Further, the utility13csets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn on the HDD protection function through the BIOS13a(step S414). Next, an example of the utility13csetting screen displayed for the user to set the sensitivity level, etc. will be described.

FIG. 18is a view showing an example of the utility setting screen displayed for the user to set the sensitivity level, etc.

The user makes the LCD4display the setting screen shown inFIG. 18to select the sensitivity level. When the user wants to turn off the HDD protection function, the user must check the check ch2. When the user wants to turn on the HDD protection function by default, the check ch1is valid as default.

When the contents of settings change because the apply button bt1is pushed down after the on/off of the HDD protection function is checked, the utility13cinforms the EC/KBC28of the on/off of the HDD protection function through the BIOS13a.

Further, the user's selection of the sensitivity level in accordance with the case of use of the computer1will be described below. To set the sensitivity level in accordance with the case of use of the computer1to which the AC adapter is connected, the user can move the bar1to select the sensitivity level, for example, from “level1”, “level2” and “level3”.

To set the sensitivity level in accordance with the case of use of the battery-driven computer1, the user can move the bar2to select the sensitivity level, for example, from “level1”, “level2” and “level3”.

To set the sensitivity level in accordance with the ease of use of the battery-driven computer1in a tablet mode, the user can move the bar3to select the sensitivity level, for example, from “level1”, “level2” and “level3”.

For example, the term “tablet mode” means a mode in which the user inputs data by pen while holding the computer1. The state of the display unit relative to the hinge shaft can be discriminated to judge whether the tablet mode is used or not. When the user uses the computer1in the tablet mode, it is, for example, conceived that the user inputs data by pen while carrying the computer1without care of the inclination angle of the computer1. On the assumption of such a method for using the computer1, weak fluctuation with rotation can be prevented from being detected by mistake if “level1” is selected as the default value of the sensitivity level in the tablet mode, that is, if occurrence of impact is predicted on the basis of only synthetic acceleration (X, Y, Z) of the three axes.

To set the sensitivity level in accordance with the case of use of the battery-driven computer1in the music reproducing mode, the user can move the bar3to select the sensitivity level, for example, from “level1”, “level2” and “level3”.

For example, the term “music reproducing mode” means a mode in which the user uses an earphone to listen to music played back by the computer1while putting and carrying the computer1in a bag without care of the inclination angle of the computer1. On the assumption of such a method as the method for using the music reproducing mode, weak fluctuation with rotation can be prevented from being detected by mistake if occurrence of impact is predicted on the basis of only synthetic acceleration (X, Y, Z) of the three axes.

Incidentally, as the table shown inFIG. 19, the default value of the sensitivity level in the case of use of the computer1having the AC adapter connected thereto can be selected to be “level3”, the default value of the sensitivity level in the case of use of the battery-driven computer1can be selected to be “level2”, the default value of the sensitivity level in the case of use of the battery-driven computer1in the tablet mode can be selected to be “level1” and the default value of the sensitivity level in the case of use of the battery-driven computer1in the music reproducing mode can be selected to be “level1”. Next, an example of the utility13csetting screen displayed for performing setting to temporarily increase the sensitivity level of the computer1will be described.

FIG. 20is a view for explaining an example of the utility13csetting screen displayed for performing setting to temporarily increase the sensitivity level of the computer1.

The user can make the LCD4display the setting screen shown inFIG. 20to perform setting to temporarily increase the sensitivity level when a predetermined event occurs in the computer1.

The user can select (allow) the event “removal of the AC adapter from the computer1” or “closure of the display unit2” as a predetermined event to temporarily increase the sensitivity level.

For example, when the user wants to select the event “closure of the display unit2” as an event to temporarily increase the sensitivity level, the user can check ch3. After checking ch3, the user can push down the apply button bt2.

When the user closes the display unit2, for example, in the battery-driven computer1(in the sensitivity level “level2”) in the condition that the event “closure of the display unit2” is selected as an event to temporarily increase the sensitivity level, the sensitivity level temporarily increases to “level3”.

Incidentally, as the table shown inFIG. 22, the default values of the events “removal of the AC adapter from the computer1” and “closure of the display unit2” can be selected (allowed) as events to temporarily increase the sensitivity level. Next, a control flow for temporarily increasing the sensitivity level and a control flow for selecting the sensitivity level in accordance with the case of use of the computer1will be described.

FIG. 23is a flow chart showing an example of the control flow for temporarily increasing the sensitivity level.FIG. 24is a flow chart showing an example of the control flow for selecting the sensitivity level in accordance with the case of use of the computer1.

When the EC/KBC28detects removal of the AC adapter connected to the computer1(Yes in step S501) or when the EC/KBC28detects change of the display unit of the computer1from the open position to the close position relative to the body (Yes in step S502), the EC/KBC28sends an SMI (System Management Interrupt) signal to the I/O hub20. The BIOS13aexecuted by the CPU10executes an SMI (System Management Interrupt) process to inform the utility13cof occurrence of these events (step S503).

Upon reception of the notice from the BIOS13a, the utility13cstarts the operation of the timer counter included in the utility13c(step S504).

When the operation of the timer counter in the utility13cis started, the utility13cresets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to temporarily turn off the HDD protection function through the BIOS13a(step S505).

When the utility13cconfirms that “the EC/KBC28is informed of the turning-off of the HDD protection function”, the utility13cinforms the BIOS13aof the highest sensitivity level “level3” (step S506).

The BIOS13ainforms the EC/KBC28of the thresholds concerned with various kinds of acceleration in accordance with the sensitivity level “level3” received from the utility13c. The EC/KBC28stores the thresholds received from the BIOS13a(step S507). Further, the utility13csets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn on the HDD protection function through the BIOS13a(step S508).

On the other hand, when removal of the AC adapter connected to the computer1is not detected (No in the step S501) and when change of the display unit of the computer1from the open position to the close position relative to the body is not detected (No in the step S502), the utility13cjudges whether the timer counter is operative or not (step S509) when the timer counter is operative (Yes in the step S509), the utility13cjudges whether time is out or not (step S510).

When time is out (Yes in the step S510), the utility13cstops the operation of the timer counter (step S511).

When the utility13cstops the operation of the timer counter, the utility13cresets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn off the HDD protection function through the BIOS13a(step S512).

When the utility13cconfirms that “the EC/KBC28is informed of the turning-off of the HDD protection function”, the utility13cinforms the BIOS13aof the sensitivity level value selected by the user (step S513).

The BIOS13ainforms the EC/KBC28of the thresholds concerned with various kinds of acceleration in accordance with the sensitivity level value received from the utility13c. The EC/KBC28stores the thresholds received from the BIOS13a(step S514). Further, the utility13csets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn on the HDD protection function through the BIOS13a(step S515).

As described above, when the event “removal of the AC adapter from the computer1” or “change of the display unit from the open position to the close position relative to the body” occurs, the possibility that the user will carry the computer is high. Accordingly, when controlling is performed to increase the sensitivity level for a predetermined time after occurrence of these events, preparation can be made for occurrence of impact on the HDD21.

When the EC/KBC28detects that the power supply for driving the computer1is changed to AC-drive or battery-drive (Yes in step S516) or when the EC/KBC28detects that the mode of the computer1is changed to the tablet mode (Yes in step S517) or when the EC/KBC28detects that the mode of the computer1is changed to the music reproducing mode (Yes in step S518) in the case where the utility13cconfirms that the timer counter is inoperative (No in the step S509), the EC/KBC28sends an SMI (System Management Interrupt) signal to the I/O hub20. The BIOS13aexecutes an SMI process to thereby inform the utility13cof occurrence of these events (step S519).

The utility13cresets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn off the HDD protection function through the BIOS13a(step S520).

When the utility13cconfirms that “the EC/KBC28is informed of the turning-off of the HDD protection function”, the utility13cinforms the BIOS13aof the sensitivity level value selected by the user on the utility13csetting screen in accordance with the state of use of the computer1(step S521).

The BIOS13ainforms the EC/KBC28of the thresholds concerned with various kinds of acceleration in accordance with the sensitivity level value received from the utility13c. The EC/KBC28stores the thresholds received from the BIOS13a(step S522). Further, the utility13csets the bit indicating “the on state of the HDD protection function” in the register28cprovided in the EC/KBC28to turn on the HDD protection function through the BIOS13a(step S523). Next, control of the HDD protection function in the computer1having the docker connected thereto will be described.

FIG. 25is a view showing a state in which the docker is connected to the computer1.FIG. 26is a flow chart for explaining a control flow of the HDD protection function in the case where the docker is connected to the computer1.FIG. 27is a view for explaining an example of the table selected in the BIOS13afor achieving the HDD protection function in the case where the docker is connected to the computer1.

When the docker is connected to the computer1, the computer1is kept at a predetermined inclination angle from the horizontal plane (seeFIG. 25). Therefore, a table in which thresholds concerned with various kinds of acceleration have values in consideration of the inclination of the computer1is provided separately (seeFIG. 27).

When an operation for connecting the docker to the computer1is performed (Yes in step S601), the BIOS13ainforms the EC/KBC28of the turning-off of the HDD protection function (step S602).

The BIOS13ainforms the EC/KBC28of the thresholds in consideration of the inclination of the computer1(step S603). The EC/KBC28stores the thresholds received from the BIOS13a(step S604). The BIOS13ainforms the EC/KBC28of the turning-on of the HDD protection function (step S605).

On the other hand, when an operation of removing the docker is performed (Yes in step S606), the BIOS13ainforms the EC/KBC28of the thresholds (seeFIG. 18) without consideration of the inclination of the computer1(step S607). The EC/KBC28stores the thresholds received from the BIOS13a(step S608). The BIOS13ainforms the EC/KBC28of the turning-on of the HDD protection function (step S609).

The invention is not limited to the embodiments and the constituent members of the embodiments may be changed for embodying the invention without departing the gist of the invention in the practical stage. The constituent members disclosed in the embodiments may be combined suitably for constituting various inventions. For example, several constituent members may be removed from the all constituent members of each embodiment. In addition, constituent members in different embodiments may be combined suitably.