INFORMATION PROCESSING APPARATUS, METHOD FOR CONTROLLING INFORMATION PROCESSING APPARATUS, AND STORAGE MEDIUM
20210349668 · 2021-11-11
Inventors
Cpc classification
G06F3/1256
PHYSICS
G06F3/1285
PHYSICS
G06F3/1253
PHYSICS
G06F3/1203
PHYSICS
International classification
Abstract
According to some embodiments, a printer capability acquiring unit of a general-purpose printer driver acquires, from a printer, definition information (definition for acquisition of apparatus-specific definition) for information acquisition specific to the printer, using definition information for information acquisition (definition for acquisition of apparatus-common information) commonly usable for various printers and independent of vendors or models, acquires, from the printer, configuration information specific to the printer, using the definition for acquisition of apparatus-specific information, and saves the configuration information in an extended information storage unit for each printer. The general-purpose printer driver controls the printer using the configuration information for the printer saved in the extended information storage unit.
Claims
1. An information processing apparatus that stores in advance (a) a printer driver to be used for generating print data commonly processable by printers, and (b) first function information that indicates first functions that at least one of the printers is capable of possessing, the information processing apparatus comprising: a controller including a processor and a memory, the controller configured to: while the printer driver has already been installed and the first function information has already been stored in the information processing apparatus, acquire, from a server, second function information that indicates second functions that a first printer of the printers is capable of possessing; based on the second function information, acquire, from the first printer not via the server, second configuration information indicating whether the first printer has a function, which is one function of the second functions; provide (a) the first configuration information indicating whether the first print has a function, which is one function of the first functions and (b) the second configuration information to a print setting application so that the print setting application is capable of causing the display to display print options that are determined based on the first and second configuration information to be settable for the first printer; generate a print command by using the printer driver based on values set for the print options by the print setting application; and provide the generated print command to the first printer not via the server.
2. The information processing apparatus according to claim 1, wherein the printer driver controls the first printer using the first and second configuration information for the first printer stored in a storage area for the first printer.
3. The information processing apparatus according to claim 1, wherein the first function information is stored in a storage area in which data used by the printer driver is stored.
4. A method performed by execution of a print setting application stored in an information processing apparatus that (i) has stored a printer driver and first function information that indicates a first function and (ii) while the printer driver has already been stored and the first function information has already been stored in the information processing apparatus, acquires from a server second function information that indicates a second function, wherein the method includes: causing a display of the information processing apparatus to display print options that are based on (a) first configuration information of a printer and (b) second configuration information of the printer, wherein the first configuration information indicates whether the printer has the first function indicated by the first function information and the second configuration information indicates whether the printer has the second function indicated by the second function information; and providing a value for at least one of the print options set by a user, wherein a print command generated by the printer driver based on the set value is provided for printing by the printer.
5. The method according to claim 4, wherein the print command is provided directly from the information processing apparatus to the printer.
6. The method according to claim 4, wherein the print command is provided to the printer not via the server.
7. The method according to claim 4, wherein the first configuration information is acquired based on the first function information.
8. The method according to claim 7, wherein the first configuration information is acquired based on the first function information not via the server.
9. The method according to claim 4, wherein the second configuration information is acquired based on the second function information.
10. The method according to claim 9, wherein the second configuration information is acquired based on the second function information not via the server.
11. The method according to claim 4, wherein the information processing apparatus has installed the printer driver, and the second function information is acquired from the server while the printer driver has already been installed and the first function information has already been stored.
12. The method according to claim 4, wherein the printer driver is compatible with printers of a plurality of printer vendors, and the printer is one of the printers.
13. A method performed by execution of a print setting application stored in an information processing apparatus that (i) has stored first function information that indicates a first function and (ii) while the first function information has already been stored in the information processing apparatus, acquires from a server second function information that indicates a second function, executing a print setting application stored in the information processing apparatus, wherein the method includes: causing a display of the information processing apparatus to display print options that are based on (a) first configuration information of a printer and (b) second configuration information of the printer, wherein the first configuration information indicates whether the printer has the first function indicated by the first function information and the second configuration information indicates whether the printer has the second function indicated by the second function information; and providing a value for at least one of the print options set by a user, wherein a print command generated based on the set value is provided for printing by the printer.
14. The method according to claim 13, wherein the print command is provided directly from the information processing apparatus to the printer.
15. The method according to claim 13, wherein the print command is provided to the printer not via the server.
16. The method according to claim 13, wherein the first configuration information is acquired based on the first function information.
17. The method according to claim 16, wherein the first configuration information is acquired based on the first function information not via the server.
18. The method according to claim 13, wherein the second configuration information is acquired based on the second function information.
19. The method according to claim 18, wherein the second configuration information is acquired based on the second function information not via the server.
20. The method according to claim 13, wherein the information processing apparatus has installed a printer driver, and the second function information is acquired from the server while the printer driver has already been installed and the first function information has already been stored.
21. The method according to claim 20, wherein the printer driver is compatible with printers of a plurality of printer vendors, and the printer is one of the printers.
22. The method according to claim 13, wherein the information processing apparatus has installed a printer driver, and the print command is generated by the printer driver.
23. A non-transitory computer-readable medium having a print setting application that causes an information processing apparatus that (i) has stored a printer driver and first function information that indicates a first function and (ii) while the printer driver has already been stored and the first function information has already been stored in the information processing apparatus, acquires from a server second function information that indicates a second function to perform: causing a display of the information processing apparatus to display print options that are based on (a) first configuration information of a printer and (b) second configuration information of the printer, wherein the first configuration information indicates whether the printer has the first function indicated by the first function information and the second configuration information indicates whether the printer has the second function indicated by the second function information; and providing a value for at least one of the print options set by a user, wherein a print command generated by the printer driver based on the set value is provided for printing by the printer.
24. The non-transitory computer-readable medium according to claim 23, wherein the print command is provided directly from the information processing apparatus to the printer.
25. The non-transitory computer-readable medium according to claim 23, wherein the print command is provided to the printer not via the server.
26. The non-transitory computer-readable medium according to claim 23, wherein the first configuration information is acquired based on the first function information.
27. The non-transitory computer-readable medium according to claim 26, wherein the first configuration information is acquired based on the first function information not via the server.
28. The non-transitory computer-readable medium according to claim 23, wherein the second configuration information is acquired based on the second function information.
29. The non-transitory computer-readable medium according to claim 28, wherein the second configuration information is acquired based on the second function information not via the server.
30. The non-transitory computer-readable medium according to claim 23, wherein the information processing apparatus has installed the printer driver, and the second function information is acquired from the server while the printer driver has already been installed and the first function information has already been stored.
31. The non-transitory computer-readable medium according to claim 23, wherein the printer driver is compatible with printers of a plurality of printer vendors, and the printer is one of the printers.
32. A non-transitory computer-readable recording medium having a print setting application that causes an information processing apparatus that (i) has stored first function information that indicates a first function and (ii) while the first function information has already been stored in the information processing apparatus, acquires from a server second function information that indicates a second function, executing a print setting application stored in the information processing apparatus to perform: causing a display of the information processing apparatus to display print options that are based on (a) first configuration information of a printer and (b) second configuration information of the printer, wherein the first configuration information indicates whether the printer has the first function indicated by the first function information and the second configuration information indicates whether the printer has the second function indicated by the second function information; and providing a value for at least one of the print options set by a user, wherein a print command generated based on the set value is provided for printing by the printer.
33. The non-transitory computer-readable medium according to claim 32, wherein the print command is provided directly from the information processing apparatus to the printer.
34. The non-transitory computer-readable medium according to claim 32, wherein the print command is provided to the printer not via the server.
35. The non-transitory computer-readable medium according to claim 32, wherein the first configuration information is acquired based on the first function information.
36. The non-transitory computer-readable medium according to claim 35, wherein the first configuration information is acquired based on the first function information not via the server.
37. The non-transitory computer-readable medium according to claim 32, wherein the second configuration information is acquired based on the second function information.
38. The non-transitory computer-readable medium according to claim 37, wherein the second configuration information is acquired based on the second function information not via the server.
39. The non-transitory computer-readable medium according to claim 32, wherein the information processing apparatus has installed a printer driver, and the second function information is acquired from the server while the printer driver has already been installed and the first function information has already been stored.
40. The non-transitory computer-readable medium according to claim 39, wherein the printer driver is compatible with printers of a plurality of printer vendors, and the printer is one of the printers.
41. The non-transitory computer-readable medium according to claim 32, wherein the information processing apparatus has installed a printer driver, and the print command is generated by the printer driver.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
DESCRIPTION OF THE EMBODIMENTS
[0025] Embodiments of the present disclosure will now be described in detail in accordance with the accompanying drawings.
First Embodiment
[0026]
[0027] In
[0028] A CPU 101 controls a computer 100 as a whole according to a program stored in a ROM 1021 or a RAM 1022 in a main storage apparatus 102 or in an auxiliary storage apparatus 105.
[0029] The RAM 1022 is also used as a work area for execution of processes by a CPU 101.
[0030] The auxiliary storage apparatus 105 stores various programs such as an application 1051 and a device application 1052, a general-purpose printer driver 1053, and an operating system (OS) 1054. The printer driver is an example of a device driver. The present disclosure is applicable to device drivers and is not limited to printer drivers. Examples of the device driver include device drivers for various peripheral apparatuses (peripheral equipment) such as a scanner driver and a facsimile driver.
[0031] Input apparatuses such as a keyboard 1031 and a pointing device 1032 typified by a mouse, a touch panel, or a touchpad are connected to the computer 100 through an input interface (I/F) 103. The computer 100 accepts operations on the programs from the user through these input apparatuses.
[0032] An output I/F 104 connects to an output device such as a monitor 1041 to display a UI on the monitor according to program instructions. Some terminals including smartphones and tablet terminals include the pointing device 1032 and the monitor 1041 integrated together. However, the pointing device 1032 and the monitor 1041 are separately represented here according to roles of these units. In the description below, the pointing device 1032 and the monitor 1041 may of course be replaced with each other.
[0033] The communication I/F 106 is connected to a network 1061 and a Universal Serial Bus (USB) 1062 and can communicate with external apparatuses of the computer 100, for example, a computer 202 and a printer 201 in
[0034] The above-described modules are connected together by a system bus 107 and can transmit and receive data among the modules. Programs (1051-1054 etc.) for implementing functions of embodiments of the present invention can be added to the auxiliary storage apparatus 105 via a CD-ROM, a USB memory, or the like which is unillustrated. Furthermore, these programs can be added to the auxiliary storage apparatus 105 via the network 1061. Unless otherwise noted, the present disclosure is of course applicable regardless of the configuration of the apparatus given the functions of the present disclosure are executed. The system may include a single apparatus or a plurality of apparatuses and the apparatuses may be connected together via a local network for processing.
[0035] An environment of the network 1061 will be described below using
[0036]
[0037] The system of the present embodiment includes one or more printing apparatuses (also referred to as image forming apparatuses) such as a computer 100/202 to create documents or images to be printed connected to the network. Furthermore, one or more printers 201 may be connected to the network or to the computer 100/202 via the USB 1062. An example of a peripheral apparatus is an image forming apparatus. An example of the image forming apparatus may be the printer 201, a scanner, a facsimile machine, or a multi-function printer including a scanner and a facsimile machine.
[0038] The network includes small- to large-scale networks such as a Personal Area Network (PAN) and a LAN, and these apparatuses are connected to all of the networks. A server such as a cloud and a printer may be connected to the system via the Internet. A communication scheme in this case includes, but not limited to, Bluetooth communication and communication using cellular phone line in compliance with the IMT-2000 standards, as well as wireless LAN communication compliant with the IEEE 802.11 standards. The IMT-2000 represents “International Mobile Telecommunication 2000”. Furthermore, in regard to the USB, relaying with a USB hub or an exchange may be used instead of direct connection.
[0039]
[0040] The application 1051 is a general application such as a word processor or a browser. The application 1051 displays the UI on the monitor 1041 and receives a user's print request via the input apparatus such as the pointing device 1032 or the keyboard 1031. The application 1051 having received the user's print request issues a print request to a printing system (not illustrated) that is a subsystem of the OS 1054. The printing system is positioned between the application 1051 and the general-purpose printer driver 1053 to execute processes common to a printing process. Specific processes executed include selection of a printing target printer and conversion, using the general-purpose printer driver 1053 selected, into a print instruction interpretable by the printer 201.
[0041] The printing extension application 10511 includes a tile application unit 301 and a detailed information setting UI unit 302.
[0042] The tile application unit 301 is a UI unit executed in response to a user operation activating the printing extension application 10511. The tile application unit 301 displays a list of registered printers as illustrated in
[0043]
[0044] An information acquisition button 601 illustrated in
[0045] The detailed information setting UI unit 302 is a UI unit executed by receiving a detailed print setting event performed by the OS 1054. Specifically, by clicking a link 401 to a detailed setting screen present in a print setting screen illustrated in
[0046]
[0047]
[0048] A printer driver is generally a module responsible for processes dependent on a printer for which printing is to be destined. However, the general-purpose printer driver 1053 of the present embodiment complies with standards and can perform communication and printing independently of the vendor or model of the printer. The general-purpose printer driver 1053 is a printer driver which can be utilized commonly for a plurality of printers from different vendors or different models. The general-purpose printer driver 1053 include additional functions and detailed setting screens that can be extended by installation of the printing extension application 10511.
[0049] The config module 10531 includes a data retaining unit 303 and a printer capability acquiring unit 304.
[0050] The data retaining unit 303 corresponds to a storage area storing data used in the general-purpose printer driver 1053. Here, the data retaining unit 303 corresponds not only to a file system or a registry present on the auxiliary storage apparatus 105 but also to volatile data temporarily stored in the RAM 1022.
[0051] The data retaining unit 303 includes a basic information storage unit 3031 and an extended information storage unit 3032.
[0052] The basic information storage unit 3031 is an area where the following is stored: information, definitions and the like related to settings and specifications defined before the general-purpose printer driver 1053 is installed and common or commonly used in the vendor. Specifically, the stored information, definitions and the like include definitions related to capabilities necessary to print and print setting such as a corresponding sheet size and a color setting, definitions related to prohibitions, for example, “an A3 size does not allow for stapling”, and definitions related to information acquired during communication (definitions for information acquisition common to apparatuses). The basic information storage unit 3031 may also store conversion tables for data for avoiding dependency common to printers of each vendor, and definitions for conversion logic. Thus, the basic information storage unit 3031 stores information commonly usable for a plurality of printers from different vendors or different models.
[0053] On the other hand, the extended information storage unit 3032 stores data defined in order to extend the functions after the general-purpose printer driver 1053 is installed. The data corresponds to, for example, support information about special sheets, definitions related to apparatus-specific functions such as definitions related to functions using apparatus-specific finishers, and information used to control settings after installation such as customization of default values and setting of favorites. Furthermore, the data may be information other than print settings, that is, information for internal use such as image quality correction including calibration.
[0054] Thus, the basic information storage unit 3031 stores information that can be utilized commonly for a plurality of printing apparatuses from different vendors or different models (for example, definition information for information acquisition common to apparatuses). Furthermore, the extended information storage unit 3032 stores apparatus-specific information (for example, definition information for apparatus-specific information acquisition). The data retaining unit 303 is provided for each printer.
[0055] The printer capability acquiring unit 304 acquires apparatus configuration information, user set information, and the like from the printer 201. Communication used for the acquisition uses any of standard protocols including Internet Printing Protocol (IPP) and Web Service on Devices (WSD) and refers to communication that can be executed by the OS 1054.
[0056] Applications including the printing extension application 10511 is assumed to be allowed to independently invoke processing of the printer capability acquiring unit 304. In the description below, the IPP is used by way of example. The printer capability acquiring unit 304 acquires the capability information stored in the basic information storage unit 3031 using a printer attribute request operation (Get-Printer-Attributes Operation) designated as “RFC2911”. The printer capability acquiring unit 304 also transmits a Get-Printer-Attributes Request to the printer 201. As a response to the request, attribute information for the printer 201 is obtained. The printer capability information obtained by the printer attribute request operation includes capability information for standard print settings, for example, “double side” and “color printing”.
[0057] The graphics filter 10532 receives from the application 1051, via the printing system, standard document data including setting information generally interpretable by printers, and a standard document data analyzing unit 305 analyzes the standard document data. The graphics filter 10532 uses an output data generating unit 306 to convert the standard document data such that the resultant data reflects the print settings. The converted standard document data is delivered to a system spooler 10541 that is a subsystem of the OS 1054, which then transmits the data to the printer 201.
[0058] The standard document data as used herein refers to standard Page Description Language (PDL) such as XPS, PDF, or Post Script (PS), or PDL extended by addition of additional data. XPS refers to an “XML Paper Specification”. PDF refers to a “Portable Document Format”.
[0059] In the following, processing of the present embodiment will be described in brief.
[0060] In the present embodiment, configuration information is acquired from the printer 201. However, the general-purpose printer driver 1053 is independent of the vendor or model. Thus, conventional methods fail to acquire information dependent on the model including model-specific functions. For example, a “staple” capability is common, and can thus be can be defined as information common among vendors and models so as to be acquirable by a standard configuration information acquiring process. However, the capability of “needle-less binding” function to perform binding using no metal needle belongs only to particular models, and thus, the information fails to be acquired by the standard configuration information acquiring process. Thus, in the present embodiment, first, an inquiry for a definition for acquisition of model-specific information is made to the printer 201 using a definition for acquisition of model common information (the definition can be utilized commonly for a plurality of printers from different vendors or different models). Then, the acquired definition for acquisition of model-specific (model-dependent) information is used to acquire model-specific capability information from the printer 201.
[0061] The above-described processing will be described using a flow in
[0062]
[0063] Furthermore, timings at which the process illustrated in the present flowchart is executed are properly invoked by events generated from the OS 1054, events generated from the printer 201, and events generated by a user operation. First, the events generated from the OS 1054 refer to, for example, an event generated at a timing when the general-purpose printer driver 1053 is installed and initialized, and an event generated when the OS 1054 is connected to the network or a connection state is changed. The event may also be generated at given time intervals scheduled by the system or at particular points in time. Furthermore, the events generated from the printer 201 refer to, for example, events generated when the printer 201 updates the settings or is activated and when an option such as a finisher is attached to (removed from) the printer. The events generated from the printer 201 also include an event generated, for example, when the status of the printer 201 is updated. Furthermore, the events generated by the user operation are generated when the printing extension application 10511 linked to the general-purpose printer driver 1053 is operated. For example, the events generated by the user operation correspond to operations of the information acquisition button 601 of the tile application unit 301 and the information acquisition button 501 of the detailed information setting UI unit 302. Furthermore, activation and termination of the printing extension application 10511 by the user are also considered as events generated by the user operation.
[0064] First, in S1001, the printer capability acquiring unit 304 determines whether a definition for acquisition of model-specific information is present. Specifically, the printer capability acquiring unit 304 determines whether any definition for acquisition of model-specific information is present in the extended information storage unit 3032 of the data retaining unit 303 corresponding to the printer 201. At this time, a determination condition may be that information similar to a definition for acquisition of model-specific information has been loaded onto the RAM 1022 of the system or that a flag is set indicating that a definition for acquisition of model-specific information has been acquired.
[0065] In a case of determining in S1001 that no definition for acquisition of model-specific information is present (No in S1001), the printer capability acquiring unit 304 advances the process to S1002 and controls the printer 201 to acquire a definition for acquisition of model-specific information.
[0066] In S1002, the printer capability acquiring unit 304 loads the definition for acquisition of apparatus-common information. As described above, the definition for acquisition of apparatus-common information is saved in the basic information storage unit 3031 of the data retaining unit 303 corresponding to the printer 201 as data independent of the model. The definition is, for example, as illustrated in
[0067]
[0068] A definition 701 for acquisition of capability information is request information for acquiring, from the printer 201, a definition for acquisition of model-specific information. Making this request enables acquisition, from the printer 201, of a definition for acquisition of apparatus-specific information as illustrated in
[0069]
[0070] Then, in S1003, the printer capability acquiring unit 304 acquires, from the printer 201, a definition for acquisition of apparatus-specific (apparatus-dependent) information based on the information loaded in S1002 (definition for acquisition of apparatus-common (apparatus-independent) information). The information acquired is loaded into the RAM 1022 of the system. At this time, the OS 1054 controls processes such as establishment of connection and retransmission process during data acquisition. Furthermore, a process for USB connection conditions is basically similar to the process for network connection conditions. However, in a case where data used for communication by the printer 201 is specific to a vendor or needs special processing, an executable script as illustrated in
[0071]
[0072] For example, when information is acquired, a getSchemas function of
[0073] Then, in S1004, the printer capability acquiring unit 304 saves the data acquired in S1003 (definition for acquisition of apparatus-specific information) to the extended information storage unit 3032 of the data retaining unit 303 corresponding to the printer 201. The printer capability acquiring unit 304 advances the process to S1005.
[0074] Furthermore, in a case of determining, in S1001, that any definition for acquisition of model-specific information is present (Yes in S1001), the printer capability acquiring unit 304 advances the process to S1005.
[0075] In S1005, the printer capability acquiring unit 304 executes a process of applying the definition for acquisition of apparatus-specific information. Here, the process is assumed to include replacing an apparatus-common definition as illustrated in
[0076] Then, in S1006, the printer capability acquiring unit 304 executes a process of applying the information updated by the process in S1005. The present process corresponds to reloading of a setting or invocation of a process to be applied but may be invocation of a system initialization process. Furthermore, the system spooler 10541, managed by the OS 1054, is reactivated as needed. During reactivation, the process of the printer capability acquiring unit 304 may be re-executed as needed using a task scheduler or an external process.
[0077] Then, in S1007, the printer capability acquiring unit 304 acquires, from the printer 201, apparatus-specific (apparatus-dependent) information based on the definition for acquisition of apparatus-specific information applied in S1006. In the present example, information is acquired using a definition for acquisition of apparatus-specific information as illustrated in
[0078] Now, an example of a setting screen displayed based on the information acquired will be described using
[0079] The screens in
[0080] For example, in response to the user operating the information acquisition button 501 on the setting screen in
[0081] As described above, the general-purpose printer driver can perform acquisition of information regarding apparatus-specific functions, the acquisition failing to be enabled by the formulated standards.
Second Embodiment
[0082] In a case described in a second embodiment, a definition for acquisition of apparatus-specific information is present on the server. In the configuration described in the first embodiment, an inquiry for a definition for acquisition of apparatus-specific information is made to the printer. However, a configuration described in the second embodiment acquires a definition from the server.
[0083]
[0084] The process in the flowchart is implemented by the CPU 101 of the client computer 100 by loading, into the RAM 1022, a program stored in the auxiliary storage apparatus 105 or the like and executing the program. The process illustrated in the present flowchart is assumed to be executed in the printer capability acquiring unit 304 of the general-purpose printer driver 1053 invoked by the OS 1054 unless otherwise noted.
[0085] In S1101, the printer capability acquiring unit 304 acquires a location where a definition for acquisition of apparatus-specific information is stored. Information about the storage location may be predefined on the general-purpose printer driver 1053 or may be a file reference described on the apparatus-common definition. In a case where the storage location varies depending on the vendor or the model, the storage location may be acquired using information about the vendor, model, or the like of the printer 201. Furthermore, in regard to the storage location, a file for the definition for acquisition of apparatus-specific information located on the Internet, uploaded as a shared file onto the server, or located in a local storage may be used. Furthermore, a file sharing mechanism provided on the printer 201 may be used to store the file.
[0086] Then, in S1102, the printer capability acquiring unit 304 executes an authentication process on the storage location for the definition for acquisition of apparatus-specific information, the storage location having been acquired in S1101.
[0087] Then, in S1103, the printer capability acquiring unit 304 acquires the file for the definition for acquisition of apparatus-specific information from the storage location for the definition for acquisition of apparatus-specific information, the storage location having been acquired in S1101. The definition is acquired using information about the vendor, model, or the like of the printer 201 as needed while acquiring.
[0088] Execution of the above-described process allows acquisition of the file for the definition for acquisition of apparatus-specific information located in the server or the like.
[0089] As illustrated above, according to each embodiment, information regarding the model-specific function of the printing apparatus can be acquired from the general-purpose printer driver commonly usable for various types of printers and independent of the vendor or the model; this acquisition fails to be enabled by the formulated standards.
[0090] The configurations and contents of the various data described above are not limited to the above description and may be varied according to applications and purposes.
[0091] Embodiments have been described. However, embodiments of the present disclosure can take a form of, for example, a system, an apparatus, a method, a program, or a storage medium. Specifically, the present disclosure may be applied to a system including a plurality of apparatuses or to a single apparatus.
[0092] Furthermore, the present disclosure includes all configurations corresponding to combinations of the above-described embodiments.
OTHER EMBODIMENTS
[0093] Embodiment(s) of the present disclosure can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
[0094] Furthermore, the present disclosure may be applied to a system including a plurality of apparatuses or to a single apparatus.
[0095] While the present disclosure includes exemplary embodiments, it is to be understood that the disclosure is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
[0096] According to embodiments of the present disclosure, the general-purpose device driver can be used to perform acquisition of information regarding model-specific functions of a peripheral apparatus, the acquisition failing to be enabled by the formulated standards. According to embodiments of the present disclosure, a mechanism can be provided that can reduce device-dependent portions of system software.