This application claims priority of Japanese Patent Application No. 2004-228871 filed on Aug. 5, 2004, and entitled, “Information Processing System, Program, Recording Medium, and Control Method.”
1. Technical Field
The present invention relates to an information processing system, a program, a recording medium, and a control method. More particularly, the present invention relates to an information processing system, a program, a recording medium, and a control method having a power saving function.
2. Description of Related Art
Recently, people often carry around information processing systems such as personal computers, and use them at places where they have gone. As a problem to enhance the convenience when the information processing systems are taken along with the people, lengthening an operable time by a battery will be cited. In contrast to this, research has been, heretofore, conducted on the technologies which can reduce the power consumption of an information processing system. For example, there have been proposed the technologies which can reduce the power consumption of an optical drive that is not so frequently used (Refer to Japanese Patent Application Laid-open No. 2003-272277 (Patent Literature 1) and Japanese Patent Application Laid-open No. 2003-77211 (Patent Literature 2)). According to Patent Literature 1, when an optical drive is not operated for a predetermined period of time, a control chip for controlling the optical drive is set to an operation mode where an operation is performed with lower power consumption. Meanwhile, according to Patent Literature 2, for an optical drive which can perform reading/writing operations on a plurality of kinds of optical media, there has been proposed a technology where electrical power is supplied only to a circuit with which reading/writing operations are performed on an optical medium currently loaded, while electrical power is suspended to a circuit with which reading/writing operations are performed on other kinds of optical media. According to these technologies, it is possible to reduce the power consumption and the wear of an optical drive.
However, even if any of the above-described technologies is applied, it is not possible to suspend the power supply to at least a part of a chip for control included in an optical drive. This is because, when regularly receiving an inquiry about the state of an optical drive from an operating system (hereinafter referred to as an OS), it is necessary to perform a process for properly replying to the inquiry.
Incidentally, instead of the above-described technologies, a method is conceived, in which an optical drive is previously provided onto an information processing system detachably and the optical drive is detached from the information unit when the optical drive is not used. According to this method, since the electrical power is not supplied to the optical drive, it is possible to reduce the power consumption. However, this method requires a user to mount the optical drive on the information processing system whenever using the optical drive, hence making operations cumbersome.
Furthermore, when the optical drive is once demounted from and then remounted on the information processing system, it becomes necessary to initialize to cause the OS to start controlling the optical drive. For example, the OS needs to perform the processes such as determining of the data transfer mode between the optical drive and the information processing system, acquiring and displaying of a volume name of the optical media, and mounting the content of the optical media as a part of a file system. As a result of this, in some cases, it takes a long time until the optical drive is ready to be used after it is mounted.
Therefore, an objective of the present invention is to provide an information processing system, a program, a recording medium, and a control method, which can solve the above-described problems. This objective is achieved by combining the aspects described in the independent claims of the appended claims. Moreover, the dependent claims thereof define further advantageous embodiments.
In order to solve the above-described problems, as a first aspect of the present invention, there are provided an information processing system, a control method employing the information processing system, a program controlling the information processing system, and a recording medium with programs recorded thereon, the information processing system including a central processing unit for executing an operating system (hereinafter referred to as an OS), and an external storage device having a drive control unit for performing reading/writing operations on a recording medium in response to a request from the OS, in which the drive control unit transmits to the OS a connection state response indicating that the external storage device is connected to the information processing system in an accessible state where the external storage device can read/write, when the drive control unit receives from the OS a connection state request inquiring about whether or not the external storage device is connected to the information processing system in the accessible state, the information processing system comprising: a power control unit for suspending a power supply to the drive control unit; a request substitutional receiving unit for receiving the connection state request from the OS to the drive control unit in place of the drive control unit, when the power supply to the drive control unit is suspended; and a request substitutional replying unit for returning the connection state response indicating that the external storage device is connected to the information processing system in the accessible state, when the request substitutional receiving unit receives the connection state request.
The summary of the above-described invention does not enumerate all of the necessary aspects in the present invention, and a sub-combination of the group of these aspects also derives an invention.
For a more complete understanding of the present invention and the advantages thereof, reference is now made to the following description taken in conjunction with the accompanying drawings.
The present invention will be described below using an embodiment. However, the following embodiment does not limit the inventions according to the scope of claims, and further all of the combinations of features described in the embodiment are not necessarily essential for the solving means of the invention.
The host controller 1082 connects the RAM 1020 with the graphic controller 1075 and the CPU 1000 which access the RAM 1020 at a high transfer rate. The CPU 1000 operates based on the programs stored in the BIOS 1010 and the RAM 1020, and controls each part. The graphic controller 1075 acquires image data which are generated on a frame buffer provided in the RAM 1020, by the CPU 1000 and the like, so as to be displayed on a display 1080. Alternatively, the graphic controller 1075 may include therein a frame buffer storing image data to be generated by the CPU 1000 and the like.
The I/O controller 1084 connects the host controller 1082 with the optical drive 1060, the hard disk drive 1040, and the communication interface 1030, which are input/output units with a relatively high transfer rate. The communication interface 1030 is connected to the I/O controller 1084 through a PCI bus and the like, and is communicated with external devices through networks. For example, the communication interface 1030 has a port for Ethernet™, and communicates with another information processing system externally provided through the Ethernet™.
The optical drive 1060 reads a program or data from an optical recording medium 1095, and provides the program or the data to the central processing unit 1000 or the like through the RAM 1020. Here, the optical drive 1060 is an example of an external storage device according to the present invention. For example, the optical drive 1060 is a device which reads data from a recording medium of an optical recording system such as a CD-ROM drive or a DVD-ROM drive.
In addition to this, the optical drive 1060 may have a function of writing data on a recording medium of an optical recording system. For example, the optical drive 1060 may be a CD-R/RW, or a recording device which is compliant with various kinds of the DVD writing standards. Alternatively, the external storage device may be a storage device which is different from a main memory, such as a hard disk drive, a tape drive, or a nonvolatile memory.
The hard disk drive 1040 stores programs and data to be used by the information processing system 10. For example, the hard disk drive 1040 records drive mode information, which determines a data transfer mode and the like of the optical drive 1060, that is set to a drive control unit 220. Here, the data transfer mode is a mode of data transfer where data transfer is effected through a connection interface between the optical drive 1060 and the I/O controller 1084.
Incidentally, the BIOS 1010, the power control hub 1062, and an input/output unit with a relatively low transfer rate such as the input/output chip 1070 are connected to the I/O controller 1084. The BIOS 1010 stores a boot program, which is executed by the CPU 1000 at the time of starting the information processing system 10, a program which depends on the hardware of the information processing system 10, and the like. The flexible disk drive 1050 reads a program or data from a flexible disk 1090, and provides the program or the data to the central processing unit 1000 through the RAM 1020.
The power control hub 1062 controls the power supply to the optical drive 1060, the communication interface 1030, or the like in response to an instruction by a program and the like to be executed by the central processing unit 1000. The input/output chip 1070 connects to the flexible disk drive 1050, a keyboard 1065, and the various kinds of input/output units to one another, through parallel ports, serial ports, mouse ports and the like, for example.
A program to be provided to the information processing system 10 has been recorded in a recording medium such as the flexible disk 1090, the optical recording medium 1095, or an IC card, and is provided by a user. The program is read from the recording medium through the input/output chip 1070 and/or the I/O controller 1084, and is installed on and executed by the information processing system 10. The operations, which are performed by the information processing system 10 or the like, after a program that is executed by the information processing system 10 works on the information processing system 10 and the like are same as those by the information processing system 10 to be described in FIGS. 2 to 7, hence omitting the explanation.
The program described above may be stored in an external storage medium. As the storage medium, it is possible to employ an optical recording medium such as a DVD and a PD, a magnetic optical recording medium such as an MD, a tape medium, a semiconductor memory such as an IC card, and the like, besides the flexible disk 1090 and the optical recording medium 1095. It is allowed to use, as a recording medium, a storage device such as a RAM, a hard disk, or the like provided in a server system which is connected to a private communication network and the Internet, and to provide a program to the information processing system 10 through a network.
The drive control unit 220 instructs the tray open/close mechanism 230 so as to open/close the media tray 200, in response to the instruction by the tray switch 210. Meanwhile, the drive control unit 220 receives various kinds of requests from the OS through a data transmission path between the optical drive 1060 and the central processing unit 1000, and responds to the requests. To be more specific, the data transmission path includes, as its part, an ATA bus that is a connection interface between the optical drive 1060 and the I/O controller 1084. Furthermore, as an example of a process, the drive control unit 220 may instruct the media access mechanism 240 in response to a request from an OS, and perform reading/writing operations on the optical recording medium 1095.
Incidentally, when the drive control unit 220 receives from the OS a connection state request inquiring about whether or not the optical drive 1060 is connected to the information processing system 10 in a state where the optical drive 1060 can read and write, the drive control unit 220 transmits to the OS a connection state response indicating that the optical drive 1060 is connected to the information processing system 10 in a state where the optical drive 1060 can read and write. In addition to this, the drive control unit 220 transmits drive mode information as a connection state response to the OS, the drive mode information indicating at least one of the followings: a data transfer mode between the optical drive 1060 and the I/O controller 1084 set to the drive control unit 220, whether or not a recording medium is mounted on the optical drive 1060, and information discriminating the recording medium mounted on the optical drive 1060.
The communication control unit 300 receives various kinds of requests from the OS through a PCI bus that is a connection interface between the communication interface 1030 and the I/O controller 1084, and responds to the requests. For example, when the communication control unit 300 receives from the OS a connection state request inquiring about whether or not the communication interface 1030 is connected to the information processing system 10 in a state where the communication interface 1030 is capable of communicating with the information processing system, the communication control unit 300 transmits to the OS a connection state response indicating that the communication interface 1030 is connected to the information processing system 10 in a state where the communication interface 1030 is capable of communicating with the information processing system.
The operating system 410 includes an I/O subsystem manager 420, a file system driver 425, a networking API 430, a protocol driver 435, a request substitutional receiving unit 440, a driver for optical drive 450, a storage port driver 460, a communication driver 470, a mini port driver 475, a power control unit 480, and a request substitutional replying unit 490.
When receiving a request of an access to an input/output device from the application program 400, the I/O subsystem manager 420 requests the file system driver 425 an access to a file system. Meanwhile, the I/O subsystem manager 420 may transmit, for example, regularly to the file system driver 425 a connection state request inquiring about whether or not the optical driver 1060 is connected to the information processing system 10 in a state where the optical drive 1060 can read and write. The file system driver 425 transmits a request of an access to an input/output device to the request substitutional receiving unit 440 based on a request received from the I/O subsystem manager 420.
When receiving a request to the optical driver 1060 from the file system driver 425, the request substitutional receiving unit 440 determines whether or not the power supply to the driver control unit 220 is at a halt. In the case where the power supply to the driver control unit 220 is at a halt, when a received request is a connection state request, the request substitutional receiving unit 440 transmits the connection state request to the request substitutional replying unit 490. On the other hand, when a received request is a reading/writing request, the request substitutional receiving unit 440 transmits the reading/writing request to the driver for optical drive 450.
Meanwhile, when the power is supplied to the drive control unit 220, the request substitutional receiving unit 440 transmits a received request to the driver for optical drive 450. After receiving this request, the driver for optical drive 450 controls the optical drive 1060 along with the storage port driver 460. For example, the driver for optical drive 450 may read data from a recording medium in the optical drive 1060 along with the storage port driver 460, and may provide the data to the application program 400.
When receiving a request for communication using the communication interface 1030 from the application program 400, the networking API 430 requests the protocol driver 435 a control on the communication interface 1030. Further, the networking API 430 transmits, for example, regularly to the protocol driver 435 a connection state request inquiring about whether or not the communication interface 1030 is connected to the information processing system 10 in a state where the communication interface 1030 is capable of communicating with the information processing system. The protocol driver 435 performs a process such as a protocol control in response to the received request, and transmits the received request to the request substitutional receiving unit 440.
When receiving a request to the communication interface 1030 from the protocol driver 435, the request substitutional receiving unit 440 determines whether or not the power supply to the communication control unit 300 is at a halt. In the case where the power supply to the communication control unit 300 is at a halt, when a received request is a connection state request, the request substitutional receiving unit 440 transmits the connection state request to the request substitutional replying unit 490. On the other hand, when the received request is a request for communication, the request substitutional unit 440 transmits the request for communication to the communication driver 470.
Meanwhile, when the power is supplied to the communication control unit 330, the request substitutional receiving unit 440 transmits the received request to the communication driver 470. After receiving this request, the communication driver 470 controls communication by the communication interface 1030, along with the mini port driver 475.
The power control unit 480 instructs the power control hub 1062 the power supply to the communication interface 1030 and the optical driver 1060, and controls the supply thereof. For example, when the optical driver 1060 is not used for a predetermined period of time, the power control unit 480 stops the power supply to the drive control unit 220 of the optical drive 1060. Furthermore, when the request substitutional receiving unit 440 receives a request for the optical drive 1060 to read/write data from the operating system 410, the power control unit 480 instructs the power control hub 1062 to start the power supply to the drive control unit 220 and the communication control unit 300. Meanwhile, the power control unit 480 may start supplying power in response to a key input to the keyboard 1065.
Incidentally, it is preferred that, when the power supply to the communication interface 1030 or the optical drive 1060 is suspended, the power control unit 480 reads various kinds of information set in the communication interface 1030 or the optical drive 1060 at the time of suspending the power supply, and retreats the various kinds of information into a drive mode information recording unit 1045. Further, when the power supply to the communication interface 1030 or the optical drive 1060 is resumed, the power control unit 480 reads, from the drive mode information recording unit 1045, the information that has been retreated therein at the time of suspending the power supply, and sets the information into the communication interface 1030 or the optical drive 1060.
When the request substitutional receiving unit 440 receives a connection state request from the file system driver 425, the request substitutional replying unit 490 returns to the file system driver 425 a connection state response indicating that the optical drive 1060 is connected to the information processing system 10 in a state where the optical drive 1060 can read and write. Further, when the request substitutional receiving unit 440 receives a connection state request from the protocol driver 435, the request substitutional replying unit 490 returns to the protocol driver 435 a connection state response indicating that the communication interface 1030 is connected to the information processing system 10 in a state where the communication interface 1030 is capable of communicating with the information processing system.
As described in
The information processing system 10 performs the following processes regularly, for example. The power control unit 480 determines whether or not a predetermined period of time elapses after the optical drive 1060 was previously used (S500). When a criterion period of time has elapsed (S500: YES), the power control unit 480 waits until the optical drive 1060 comes to a standby mode where it is possible to process a next request while the optical drive 1060 is not in the state of processing a request received from the operating system 410 (S510).
When the optical drive 1060 comes to a standby mode (S510: YES), the power control unit 480 retreats drive mode information into the drive mode information recording unit 1045, where the drive mode information is various kinds of setting information set to the drive control unit 220 (S520). Here, the drive mode information is information indicating at least one of the following: for example, a data transfer mode between the optical drive 1060 and the I/O controller 1084, whether or not the optical recording medium 1095 is mounted on the optical drive 1060, and information discriminating the optical recording medium 1095 mounted on the optical drive 1060. Next, the power control unit 480 suspends the power supply to the optical drive 1060.
In this manner, the power control unit 480 is capable of suspending the power supply not only to a part of the optical drive 1060, but also to the whole including the drive control unit 220. Furthermore, when the power control unit 480 suspends the power supply to the drive control unit 220, the drive mode information recording unit 1045 stores drive mode information and the like, each one being information at the time of suspending the power supply to the drive control unit 220. As a result of this, even when the power supply to the optical drive 1060 is suspended, drive mode information and the like can be returned to the OS properly.
Meanwhile, when the power supply to the optical drive 1060 is suspended (S600: YES), the request substitutional receiving unit 440 determines whether or not the received request is a connection state request (S620). When the received request is a connection state request (S620: YES), the request substitutional replying unit 490 returns a connection state response having included drive mode information and the like (S630). For example, when a received request is a connection state request inquiring about whether or not the drive mode information of the optical drive 1060 has changed, the request substitutional replying unit 490 returns a connection state response indicating that the drive mode information has not changed.
On the other hand, in the case where the received request is not a connection state request, for example in the case where the received request is a request of reading/writing data (S620: NO), the power control unit 480 instructs the power control hub 1062, and starts supplying power to the optical drive 1060 (S640). Then, the power control unit 480 acquires drive mode information having been retreated in S520 from the drive mode information recording unit 1045, and sets the drive mode information to the optical drive 1060 (S650). Subsequently, the request substitutional receiving unit 440 forwards the request of reading/writing data to the optical drive 1060 (S660).
Then, when the input is made using the key (S710: YES), the power control unit 480 starts supplying power to the drive control unit 220 of the optical drive 1060 (S720). Next, the power control unit 480 acquires drive mode information from the drive mode information recording unit 1045, and sets the drive mode information to the drive control unit 220 (S730). Further, the power control unit 480 instructs the drive control unit 220 to open/close the media tray 200 (S740).
In this way, according to the process in
As described above, according to the information processing system 10 in the present embodiment, as to input/output devices such as an optical drive, it is possible to suspend supplying power not only to a part such as a motor drive unit, but also to the whole. Moreover, even when suspending the power supply, it is still possible to reply properly the state of the optical drive for a request from the operating system. As a result of this, since a procedure of initialization or the like is no longer necessary at the time of resuming the power supply, it is possible to reduce the power consumption without losing users' convenience.
As in the above-described, while the present invention has been described by making use of the embodiment, the scope of technology according to the present invention is not restrictive to the scope of the foregoing description for the embodiment. It is obvious for one skilled in the art that various changes or modifications can be made in the above-described embodiment. It is clear from the appended claims that an embodiment where such changes or modifications are added is also embraced within the scope of technology according to the present invention.
Number | Date | Country | Kind |
---|---|---|---|
2004-228871 | Aug 2004 | JP | national |