Information processing apparatus, function enabling method, and function enabling program
The information processing device optimizes memory allocation and data management to facilitate customized function installation and execution in image forming devices, addressing storage limitations and Internet connectivity issues.
Patent Information
- Application Number
- JP2024112956
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-12
- Publication Date
- 2026-01-23
AI Technical Summary
Existing image forming devices face challenges in installing customized programs due to storage capacity limitations and the inability to download original data when not connected to the Internet, leading to inefficiencies in function customization.
An information processing device with a non-volatile memory unit that allocates specific storage areas for each function, acquires storage information, and generates execution data from selected patterns to facilitate function customization, including a method and program to manage storage and execution of preparation data efficiently.
Enables efficient storage and execution of customized functions by optimizing memory usage and accommodating various usage patterns, even in environments without Internet connectivity.
Smart Images

Figure 2026011944000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing device, a function enabling method, and a function enabling program, and more particularly to an information processing device capable of executing a function, a function enabling method executed by the information processing device, and a function enabling program that causes a computer to execute the function enabling method. [Background technology]
[0002] Image forming devices, such as MFPs, are equipped with a computer that controls them. This computer executes programs corresponding to each of the multiple functions that the image forming device has in order to enable them.
[0003] On the other hand, when installing a program on a computer, the program may be installed in a customized format to suit the usage pattern of the user who uses the image forming apparatus. A customized program installation may be, for example, an installation that is suited to the hardware configuration of the image forming apparatus or an installation that is suited to the language used by the user. Since various combinations of usage patterns are conceivable for users, the original data from which the program is installed must be compatible with all combinations of usage patterns. For this reason, the amount of original data may be larger than the storage capacity of a non-volatile storage device, and the original data may not be able to be stored in the storage device.
[0004] Japanese Patent Application Laid-Open Publication No. 2000-305756 describes a data processing device that, if the free space on the installation destination hard disk is insufficient compared to the total size of the files to be installed, compresses the files to be installed and provisionally registers them on the installation destination hard disk, and then expands and officially installs them once free space has been secured.This allows all installation files to be provisionally installed on the storage device even if the total size of the installation files set as installation candidates exceeds the free space on the storage device to be installed, and then expands them at the appropriate time when free space on the storage device has been secured to complete the actual installation.
[0005] In order to efficiently execute a program on a computer, a storage area may be allocated to each of a plurality of functions in a non-volatile storage device. As a result, as in the data processing device described in JP 2000-305756 A, even if a file to be installed corresponding to a function is compressed, there is a problem that the file may not be temporarily registered in the storage area allocated to that function.
[0006] It is also possible to store the original data in a storage device located on the Internet and download the original data from that storage device. However, in an environment where the image forming device is not connected to the Internet, it is not possible to download the original data, and therefore it is not possible to install the customized program. [Prior art documents] [Patent documents]
[0007] [Patent Document 1] Japanese Patent Application Laid-Open No. 2000-305756 Summary of the Invention [Problem to be solved by the invention]
[0008] An object of the present invention is to provide an information processing device that facilitates the operation of customizing functions.
[0009] Another object of the present invention is to provide a function enabling method that facilitates the operation of customizing a function.
[0010] It is still another object of the present invention to provide a function enabling program that facilitates the operation of customizing functions. [Means for solving the problem]
[0011] According to one aspect of the present invention, an information processing device includes a storage information acquisition unit that acquires storage information of a non-volatile memory unit that stores, for each of a plurality of functions, preparation data including original data for each of a plurality of patterns corresponding to the function; an allocation unit that allocates a plurality of allocation areas in the memory area of the memory unit to each of the plurality of functions; and an activation unit that stores execution data generated from the original data of a pattern selected from a plurality of patterns corresponding to a first function of the plurality of functions in the first allocation area allocated in the memory area for the first function of the plurality of allocation areas based on the storage information.
[0012] According to another aspect of the present invention, a function activation method is a function activation method executed on an information processing device having a non-volatile memory unit, wherein the memory unit stores, for each of a plurality of functions, preparation data including original data for each of a plurality of patterns corresponding to the function, and includes a storage information acquisition step of acquiring storage information of the memory unit, an allocation step of allocating a plurality of allocation areas of the memory area of the memory unit to each of the plurality of functions, and an activation step of storing execution data generated from the original data of a pattern selected from a plurality of patterns corresponding to a first function of the plurality of functions in the first allocation area of the plurality of allocation areas allocated to the memory area for the first function based on the storage information.
[0013] According to yet another aspect of the present invention, a function activation program is a function activation program executed on a computer having a non-volatile memory unit, the memory unit stores, for each of a plurality of functions, preparation data including original data for each of a plurality of patterns corresponding to the function, and causes the computer to execute a storage information acquisition step of acquiring storage information of the memory unit, an allocation step of allocating a plurality of allocation areas of the memory area of the memory unit to each of the plurality of functions, and an activation step of storing execution data generated from the original data of a pattern selected from a plurality of patterns corresponding to a first function of the plurality of functions in the first allocation area of the plurality of allocation areas allocated in the memory area for the first function based on the storage information. [Brief explanation of the drawings]
[0014] [Figure 1] 1 is a perspective view showing the appearance of an image forming apparatus according to an embodiment of the present invention; [Figure 2] FIG. 2 is a cross-sectional view schematically illustrating an example of the internal configuration of the MFP main body. [Figure 3] 1 is a block diagram showing an outline of the hardware configuration of an MFP according to the present embodiment. [Figure 4] 2 is a block diagram showing an example of functions of a CPU included in the MFP according to the present embodiment. FIG. [Figure 5] 10 is a flowchart illustrating an example of the flow of a function enabling process. [Figure 6] 10 is a flowchart showing an example of the flow of an erasure process. [Figure 7] 10 is a flowchart illustrating an example of the flow of a movement process. [Figure 8] 10 is a flowchart illustrating an example of the flow of a restriction process. DETAILED DESCRIPTION OF THE INVENTION
[0015] Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same components are designated by the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated.
[0016] Fig. 1 is a perspective view showing the appearance of an image forming apparatus according to the present embodiment. Fig. 2 is a cross-sectional view showing a schematic example of the internal configuration of an MFP main body. Referring to Figs. 1 and 2, MFP 100 includes document reading unit 130, automatic document feeder 120, image forming unit 140, and paper feed unit 150.
[0017] Original reading unit 130 optically reads an original. Automatic document feeder 120 transports the original to original reading unit 130. Original reading unit 130 exposes an image of an original set on original glass 11 or an original transported by automatic document feeder 120 with exposure lamp 13 attached to slider 12 that moves below the original. Light reflected from the original is guided to lens 16 by mirror 14 and two reflecting mirrors 15 and 15A, and forms an image on CCD (Charge Coupled Device) sensor 18.
[0018] The reflected light that forms an image on the CCD sensor 18 is converted into image data as an electrical signal within the CCD sensor 18. The image data is converted into printing data in cyan (C), magenta (M), yellow (Y), and black (K) and output to the image forming unit 140.
[0019] The image forming unit 140 forms an image on paper or the like based on image data output by the document reading unit 130 after scanning the document. The image forming unit 140 includes image forming units 20Y, 20M, 20C, and 20K for yellow, magenta, cyan, and black, respectively. Here, "Y," "M," "C," and "K" represent yellow, magenta, cyan, and black, respectively. An image is formed by operating at least one of the image forming units 20Y, 20M, 20C, and 20K. A full-color image is formed when all of the image forming units 20Y, 20M, 20C, and 20K are operating. Print data for yellow, magenta, cyan, and black is input to the image forming units 20Y, 20M, 20C, and 20K, respectively. The image forming units 20Y, 20M, 20C, and 20K differ only in the color of the toner they use. Therefore, the image forming unit 20Y for forming a yellow image will be described here.
[0020] The image forming unit 20Y includes a photosensitive drum 23Y as an image carrier, a charging roller 22Y, a toner bottle 40Y, a developing unit 24Y, a primary transfer roller 25Y, and a drum cleaning blade 27Y. The charging roller 22Y, the exposure device 21Y, the developing unit 24Y, the primary transfer roller 25Y, and the drum cleaning blade 27Y are arranged around the photosensitive drum 23Y in this order along the rotation direction of the photosensitive drum 23Y.
[0021] Charging roller 22Y uniformly charges the surface of photoreceptor drum 23Y. Yellow printing data is input to exposure device 21Y, which exposes photoreceptor drum 23Y in accordance with the printing data. Primary transfer roller 25Y transfers the toner image formed on photoreceptor drum 23Y onto intermediate transfer belt 30, which is an image carrier, by the action of electric field force. Drum cleaning blade 27Y removes residual toner from photoreceptor drum 23Y.
[0022] After being charged by the charging roller 22Y, the photoreceptor drum 23Y is irradiated with laser light emitted by the exposure device 21Y. The exposure device 21Y exposes the image-corresponding portion of the surface of the photoreceptor drum 23Y. This forms an electrostatic latent image on the photoreceptor drum 23Y. Next, the developing device 24Y develops the electrostatic latent image formed on the photoreceptor drum 23Y with charged toner. Specifically, toner is placed on the electrostatic latent image formed on the photoreceptor drum 23Y by the action of electric field force, thereby forming a toner image on the photoreceptor drum 23Y. The toner image formed on the photoreceptor drum 23Y is transferred onto the intermediate transfer belt 30, which serves as an image carrier, by the action of electric field force using the primary transfer roller 25Y. Any toner remaining on the photoreceptor drum 23Y that has not been transferred is removed from the photoreceptor drum 23Y by the drum cleaning blade 27Y.
[0023] Toner is supplied to the developing unit 24Y from a toner bottle 40Y. The toner bottle 40Y has a cylindrical shape that extends in one direction, and an opening that opens downward is formed at one end. The toner bottle 40Y has a spiral convex portion formed on its inner circumferential surface. The toner contained inside the toner bottle 40Y is transported in one direction as the toner bottle 40Y rotates, drops through the opening, and is supplied to the developing unit 24Y. The amount of toner supplied is adjusted by changing the rotation speed of the toner bottle 40Y.
[0024] Meanwhile, the intermediate transfer belt 30 is suspended tightly by a drive roller 33 and a driven roller 34. When the drive roller 33 rotates counterclockwise in FIG. 2, the intermediate transfer belt 30 rotates counterclockwise in the drawing at a predetermined speed. As the intermediate transfer belt 30 rotates, the driven roller 34 rotates counterclockwise.
[0025] As a result, the image forming units 20Y, 20M, 20C, and 20K sequentially transfer toner images onto the intermediate transfer belt 30. The timing at which each of the image forming units 20Y, 20M, 20C, and 20K transfers a toner image onto the intermediate transfer belt 30 is adjusted based on the detection of the reference marks on the intermediate transfer belt 30. As a result, yellow, magenta, cyan, and black toner images are superimposed on the intermediate transfer belt 30.
[0026] The toner image formed on the intermediate transfer belt 30 is transferred to paper by the action of electric field force by the secondary transfer roller 26, which is a transfer member. The paper is transported by timing roller 31 to the nip portion where the intermediate transfer belt 30 and secondary transfer roller 26 come into contact. The paper with the transferred toner image is transported to fixing roller 32, where it is heated and pressed. This melts the toner and fixes it to the paper. The paper is then ejected to paper output tray 39.
[0027] A belt cleaning blade 28 is provided upstream of the image forming unit 20Y on the intermediate transfer belt 30. The belt cleaning blade 28 removes toner remaining on the intermediate transfer belt 30 that has not been transferred to paper.
[0028] Paper feed unit 150 supplies paper to image forming unit 140. Paper feed unit 150 includes paper feed cassettes 35 and 35A. Paper of different sizes is set in paper feed cassettes 35 and 35A, respectively. The paper stored in paper feed cassettes 35 and 35A is supplied to a conveyance path by take-out rollers 36 and 36A attached to paper feed cassettes 35 and 35A, respectively, and sent to timing roller 31 by paper feed roller 37.
[0029] When forming a full-color image, the MFP 100 drives all of the image forming units 20Y, 20M, 20C, and 20K. When forming a monochrome image, the MFP 100 drives only one of the image forming units 20Y, 20M, 20C, and 20K. It is also possible to form an image by combining two or more of the image forming units 20Y, 20M, 20C, and 20K. Here, we will describe an example in which the MFP 100 employs a tandem system equipped with image forming units 20Y, 20M, 20C, and 20K that form four color toners on paper. However, the MFP 100 may also employ a four-cycle system in which four color toners are transferred sequentially to paper using a single photosensitive drum.
[0030] FIG. 3 is a block diagram showing an outline of the hardware configuration of an MFP according to the present embodiment. Referring to FIG. 3, MFP 100 includes a main circuit 110. MFP 100 is an example of an image forming apparatus. Main circuit 110 is an example of an information processing apparatus. Main circuit 110 includes a CPU 111, a communication interface (I / F) unit 112, a ROM 113, a RAM 114, an EPROM (Erasable Programmable ROM) 115 as a large-capacity storage device, a facsimile unit 116, and an external storage device 117. CPU 111 is connected to automatic document feeder 120, document reading unit 130, image forming unit 140, paper feed unit 150, and operation panel 160, and controls MFP 100 overall.
[0031] ROM 113 stores programs executed by CPU 111 or data required to execute the programs. RAM 114 is used as a work area when CPU 111 executes the programs. Furthermore, RAM 114 temporarily stores image data continuously sent from document reading unit 130.
[0032] The communication I / F unit 112 is an interface for connecting the MFP 100 to a network. The CPU 111 communicates with a computer connected to the network and transmits and receives data via the communication I / F unit 112. The communication I / F unit 112 can also communicate with a computer connected to the Internet 5 via the network.
[0033] Facsimile unit 116 is connected to the public switched telephone network (PSTN) and transmits facsimile data to the PSTN or receives facsimile data from the PSTN. Facsimile unit 116 stores the received facsimile data in EPROM 115 or outputs it to image forming unit 140. Image forming unit 140 prints the facsimile data received by facsimile unit 116 on paper. Facsimile unit 116 also converts the data stored in EPROM 115 into facsimile data and transmits it to a facsimile device connected to the PSTN.
[0034] Operation panel 160 is provided on the top surface of MFP 100 and includes display unit 161 and operation unit 163. Display unit 161 is, for example, a liquid crystal display (LCD) or an organic electroluminescence (EL) display, and displays an instruction menu for the user, information related to acquired image data, and the like. Operation unit 163 includes touch panel 165 and hard key unit 167. Touch panel 165 is provided on the top or bottom surface of display unit 161, superimposed on display unit 161. Hard key unit 167 includes a plurality of hard keys. The hard keys are, for example, contact switches. Touch panel 165 detects a position on the display surface of display unit 161 designated by the user.
[0035] EEPROM 115 stores programs executed by CPU 111 or data required to execute those programs. CPU 111 loads the programs stored in EPROM 115 into RAM 114 and executes them. EPROM 115 stores preparation data in addition to execution programs that CPU 111 can execute. The preparation data includes original data for each of a plurality of patterns corresponding to functions. The original data is data used when CPU 111 generates an execution program. The original data may be an execution program that CPU 111 can directly execute, or may be an installation program for generating an execution program. The installation program is a program used by CPU 111 to generate an execution program. The execution program is generated when CPU 111 executes the installation program.
[0036] When CPU 111 executes the installation program, an execution program suited to the environment in which MFP 100 is used is generated. Conditions for adapting the execution program to the environment in which MFP 100 is used include, for example, conditions based on the hardware configuration of MFP 100 or instructions from the user. As an example of the hardware configuration of MFP 100, a document reading function will be described. With regard to the document reading function, the preparation data includes original data of a pattern that defines a process for reading both sides of a sheet of paper, and original data of a pattern that defines a process for reading only one side of a sheet of paper. If automatic document feeder 120 provided in MFP 100 can read both sides of a sheet of paper, the original data of the pattern that defines a process for reading both sides of a sheet of paper is installed, and the original data of the pattern that defines a process for reading only one side of a sheet of paper is not installed.
[0037] Furthermore, the preparation data corresponding to the image processing function includes multiple patterns of original data corresponding to each of multiple image processes. The multiple image processes include, for example, edge enhancement processing and smoothing processing. In this case, the preparation data includes multiple patterns of original data defining each of the multiple image processes. The original data for the pattern of the image processing type selected by the user is installed. Conversely, the original data for the pattern of the image processing type not selected by the user is not installed.
[0038] There is also a support function for displaying help information to assist the user. If the help information corresponds to multiple languages, the preparation data includes raw data of patterns in the same number as the number of language types. In this case, the raw data of patterns of the language type selected by the user is installed. The raw data of patterns of language types not selected by the user is not installed.
[0039] A CD-ROM 118 is attached to the external storage device 117. The CPU 111 can access the CD-ROM 118 via the external storage device 117. The CPU 111 loads a program recorded on the CD-ROM 118 attached to the external storage device 117 into the RAM 114 and executes the program. Note that the medium for storing the program executed by the CPU 111 is not limited to the CD-ROM 118, and may be an optical disc, an IC card, an optical card, or a semiconductor memory such as a mask ROM or EPROM.
[0040] Furthermore, the program executed by CPU 111 is not limited to a program recorded on CD-ROM 118. Instead of CD-ROM 118, a medium such as a flexible disk, a cassette tape, an optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)), an IC card, an optical card, a semiconductor memory such as a mask ROM, or an EPROM (Erasable Programmable ROM) may be used. Another computer connected to the network may rewrite a program stored in EPROM 115 of MFP 100. Another computer connected to the network may additionally write a new program to EPROM 115 of MFP 100. Furthermore, MFP 100 may download a program from another computer connected to the network and store the program in EPROM 115. The program referred to here includes not only a program directly executable by CPU 111, but also a source program, a compressed program, an encrypted program, and the like.
[0041] Fig. 4 is a block diagram showing an example of functions of a CPU included in the MFP according to the present embodiment. The functions shown in Fig. 4 are realized by CPU 111 included in MFP 100 as CPU 111 executes a function enabling program stored in ROM 113, EPROM 115, or CD-ROM 118.
[0042] Referring to FIG. 4, CPU 111 included in MFP 100 includes a stored information obtaining unit 51, an allocating unit 53, a validating unit 55, a process executing unit 57, a limiting unit 59, an erasing unit 61, and a moving unit 63.
[0043] The process execution unit 57 executes processes corresponding to the respective functions so that the CPU 111 can realize the plurality of functions. The process execution unit 57 is a task in which the CPU 111 loads an execution program stored in the EPROM 115 into the RAM 114 and executes it. A plurality of execution programs corresponding to the plurality of functions are stored in the EPROM 115. To realize one of the plurality of functions, the process execution unit 57 loads the execution program corresponding to that function from the EPROM 115 into the RAM 114 and executes it.
[0044] EPROM 115 has multiple storage areas. The storage capacities of the multiple allocated storage areas may be the same or different from each other. Allocation unit 53 allocates at least one of the multiple storage areas to each of multiple functions. The storage capacities of the multiple allocated areas may be the same or different from each other. Of the multiple storage areas in EPROM 115, a shared area may be included in multiple allocated areas. The shared area corresponds to each of the multiple functions. In other words, the shared area is shared by the multiple functions.
[0045] The preparation data is stored in one of multiple storage areas of the EPROM 115. The one or more storage areas in which the preparation data is stored may or may not be predetermined. It is preferable that the preparation data corresponding to a certain function is stored in an area allocated to that function. However, the size of the preparation data corresponding to that function may be larger than the size of the area allocated to that function. In this case, part of the preparation data corresponding to a certain function is stored in the area allocated to that function, and the remaining part is stored in an area allocated to a function other than the area allocated to that function. The part of the preparation data corresponding to a certain function that is not stored in the area allocated to that function is called the remaining part. The area allocated to store the remaining part is called the remaining part allocated area.
[0046] The remaining allocated area may be an allocated area allocated to a specific function among multiple functions. The specific function is a predetermined function. The specific function is, for example, a function that is used less frequently than other functions. Because the specific function is used less frequently, the period until the specific function is used is longer than that of other functions. Therefore, the period until an event occurs in which the remaining storage capacity of the allocated area allocated to the specific function is insufficient is longer than that of other allocated areas. Therefore, it is possible to effectively utilize the period until the remaining storage capacity of the allocated area allocated to the specific function is insufficient and the use of the specific function is restricted.
[0047] There may also be multiple remaining portion allocation areas. The amount of data in the remaining portion may be larger than the remaining storage capacity of one remaining portion allocation area. In this case, the remaining portion is divided into multiple parts and stored in multiple remaining portion allocation areas. This allows all of the preparation data to be stored in EPROM 115.
[0048] The storage information acquisition unit 51 acquires storage information from the EPROM 115. The storage information is information about data stored in each of the multiple storage areas of the EPROM 115. In other words, the storage information is information that identifies the data stored in each of the multiple storage areas. In this embodiment, the preparation data is stored in the EPROM 115 in advance, but the storage information acquisition unit 51 may also store the preparation data in the EPROM 115. In this case, the storage information acquisition unit 51 generates storage information and stores it in the EPROM 115. The storage information specifies, for each of the multiple functions, one or more storage areas in which the preparation data corresponding to that function is stored. The storage information acquisition unit 51 outputs the storage information to the validation unit 55.
[0049] The validation unit 55 generates execution data for each of a plurality of functions from the preparation data corresponding to that function and stores the execution data in an allocation area allocated to that function. The allocation area is one or more storage areas allocated to that function. The preparation data includes source data of a plurality of patterns. The validation unit 55 selects source data of one pattern from the source data of the plurality of patterns. Note that, if a certain pattern is determined by combining a plurality of conditions, the source data of the pattern determined by combining the plurality of conditions is selected.
[0050] The validation unit 55 selects one of a plurality of patterns of original data based on conditions for adapting the execution program to the environment in which the MFP 100 is used. Specifically, the validation unit 55 selects one of the plurality of patterns of original data in accordance with conditions based on the hardware configuration of the MFP 100 or instructions from the user. The validation unit 55 generates execution data using the original data of the selected pattern. The validation unit 55 stores the generated execution data in an allocation area assigned to the function to be processed. The validation unit 55 updates the storage information in response to storing the execution data in the allocation area. The updated storage information is stored in the EPROM 115. The process execution unit 57 becomes able to execute the execution data after the validation unit 55 stores the execution data in the allocation area.
[0051] The erasing unit 61 erases the preparation data in accordance with a predetermined condition. The predetermined condition is the occurrence of an event in which execution data is stored in an assigned area. When execution data corresponding to a certain function is stored in an assigned area allocated to that function, the erasing unit 61 erases the preparation data corresponding to that function from the EPROM 115. When the erasing unit 61 erases the preparation data corresponding to a certain function from the EPROM 115, the erasing unit 61 updates the storage information. The updated storage information is stored in the EPROM 115.
[0052] The predetermined condition may be the occurrence of an event in which one of multiple patterns of original data included in the preparation data corresponding to the function is selected. In this case, execution data is generated based on the original data of the selected pattern and stored in the allocation area. After the execution data is stored in the allocation area, the preparation data is erased from the EPROM 115.
[0053] Alternatively, the predetermined condition may be the occurrence of an event in which a predetermined time has elapsed since MFP 100 was installed. Between the time when MFP 100 was installed and the time when the predetermined time had elapsed, there is a high probability that execution data corresponding to a function desired by the user among multiple functions will be stored in the assigned area. Therefore, after the predetermined time has elapsed, all of the preparation data corresponding to the multiple functions is erased from EPROM 115. This allows for efficient use of the storage area of EPROM 115.
[0054] When the remaining storage capacity of an assigned area allocated to a certain function falls below a first threshold, the erasing unit 61 erases preparation data corresponding to other functions stored in that assigned area. In this case, it is preferable that execution data corresponding to the other function is already stored in the assigned area allocated to the other function as a condition. This is because, since execution data corresponding to the other function is already stored, the probability that preparation data corresponding to the other function will be used is low. The first threshold is a value predetermined for the function to which the assigned area is assigned. When the function is used, the storage capacity required as a work area for the process execution unit 57 is determined. The first threshold is preferably a value equal to or greater than the storage capacity required as a work area for the process execution unit 57.
[0055] When the remaining storage capacity of a certain assigned area falls below a first threshold, the moving unit 63 moves at least a portion of the data stored in that assigned area to another assigned area. When the process corresponding to the function to which the assigned area is assigned is executed by the process execution unit 57, new data may be generated and stored in the assigned area. The moving unit 63 updates the storage information in response to moving at least a portion of the data stored in the assigned area. The updated storage information is stored in EPROM 115. The data to be moved by the moving unit 63 is the remaining portion of the preparation data corresponding to a function different from the function to which the assigned area is assigned. It is preferable that the assigned area to which the remaining portion is moved by the moving unit 63 is the assigned area to which the function corresponding to the remaining portion is assigned. When the remaining storage capacity of the assigned area to which the function corresponding to the remaining portion is assigned is smaller than the data amount of the remaining portion, the remaining portion is moved to another assigned area.
[0056] When the remaining storage capacity of the allocated area assigned to a certain function falls below a second threshold, the limiting unit 59 limits the execution of the process corresponding to the function by the process executing unit 57. When the process corresponding to the function to which the allocated area is assigned is executed by the process executing unit 57, new data may be generated and stored in the allocated area. In this case, the remaining storage capacity of the allocated area assigned to the function decreases. The storage capacity of the allocated area is a value determined for the function. When preparatory data corresponding to a function other than the function to which the allocated area is assigned is stored in the allocated area, the process executing unit 57 may be unable to store the data generated by executing the process corresponding to the function. In this case, the moving unit 63 outputs a prohibition signal to prevent the process executing unit 57 from executing the process corresponding to the function. The prohibition signal includes function identification information for identifying the function to which the allocated area is assigned.
[0057] Here, one or more storage areas allocated to a first function of the plurality of functions are referred to as first allocation areas. Furthermore, one or more storage areas allocated to a second function of the plurality of functions are referred to as second allocation areas. One or more storage areas allocated to a third function of the plurality of functions are referred to as third allocation areas. In this case, the storage information defines one or more storage areas in which first preparation data corresponding to the first function is stored. Furthermore, the storage information defines one or more storage areas in which second preparation data corresponding to the second function is stored. Furthermore, the storage information defines one or more storage areas in which third preparation data corresponding to the third function is stored. Here, an example will be described in which a portion of the first preparation data corresponding to the first function is stored in the first allocation area, and a portion of the first preparation data is stored in the second allocation area.
[0058] EPROM 115 stores the remaining portion of the first preparation data corresponding to the first function in a second allocation area allocated to the second function. In this case, the second allocation area may be a shared storage area allocated to a plurality of functions including the second function. EPROM 115 may also store at least a portion of the first preparation data corresponding to the first function in a divided manner in the second allocation area and a third allocation area. The second allocation area may be a storage area allocated to a specific function among the plurality of functions.
[0059] For example, when enabling a first function, the enabling unit 55 generates execution data from original data of a pattern selected from a plurality of patterns corresponding to the first function. The enabling unit 55 stores the execution data corresponding to the first function in a first allocation area allocated to the first function in the EPROM 115. The enabling unit 55 updates the storage information in response to the execution data corresponding to the first function being stored in the first allocation area. The updated storage information is stored in the EPROM 115.
[0060] Before the validation unit 55 stores the execution data in the first allocation area, other data may already be stored in the first allocation area. The validation unit 55 moves at least a portion of the data stored in the first allocation area to a second allocation area or a third allocation area that is different from the first allocation area. At this time, the validation unit 55 identifies the other data that was already stored in the first allocation area and updates the storage information in response to the movement of the other data to the second allocation area or the third allocation area as the destination. The updated storage information is stored in the EPROM 115. After a storage capacity is secured in the first allocation area, the validation unit 55 stores the execution data in the first allocation area.
[0061] After the validation unit 55 stores the execution data in the first allocation area, the process execution unit 57 is able to execute the execution data.
[0062] The erasing unit 61 erases the preparation data corresponding to the first function in response to the execution data corresponding to the first function being stored in the first allocation area. Furthermore, the erasing unit 61 may erase the preparation data corresponding to the first function in response to the selection of one of a plurality of patterns corresponding to the first function. Furthermore, the erasing unit 61 erases the preparation data stored in EPROM 115 in response to the elapsed time since the start of use of MFP 100 exceeding a predetermined period.
[0063] The erasing unit 61 erases the preparation data corresponding to the first function when the remaining storage capacity of the second allocation area assigned to the second function becomes equal to or less than the first threshold. The moving unit 63 moves the remaining part of the preparation data corresponding to the first function to the third allocation area when the remaining storage capacity of the second allocation area becomes equal to or less than the first threshold.
[0064] 5 is a flowchart showing an example of the flow of function activation processing. The function activation processing is performed by CPU 111 included in MFP 100 as CPU 111 executes a function activation program stored in ROM 113, EPROM 115, or CD-ROM 118.
[0065] Referring to FIG. 4, CPU 111 included in MFP 100 allocates a storage area (step S01) and proceeds to step S02. CPU 111 allocates one or more of a plurality of storage areas in EPROM 115 to each of a plurality of functions included in MFP 100. A set of one or more storage areas allocated to each of the plurality of functions is an allocated area. One allocated area is allocated to one function. One allocated area includes one or more storage areas. The one or more storage areas included in the allocated area may be allocated to only that function, or may be allocated to multiple functions.
[0066] In step S02, the storage information is acquired, and the process proceeds to step S03. The storage information is information that identifies the information stored in each of the multiple storage areas of EPROM 115. The storage information is stored in EEPROM 115. CPU 111 reads the storage information from EEPROM 115.
[0067] In step S03, it is determined whether a function has been selected. If a function has been selected, the process proceeds to step S04; if not, the process ends. CPU 111 determines whether any of a plurality of functions has been selected based on an operation input by the user to operation panel 160. A function may also be selected in response to MFP 100 being powered on. For example, CPU 111 detects an optional device attached to MFP 100, and selects a function related to that optional device. The optional device may be automatic document feeder 120, a paper reversing unit that enables double-sided printing, or the like.
[0068] In step S04, an allocation area is determined, and the process proceeds to step S05. CPU 111 determines, for the function selected in step S03, one or more storage areas allocated to that function in step S01 as the allocation area.
[0069] In step S05, the preparation data is identified, and the process proceeds to step S06. CPU 111 identifies the preparation data corresponding to the function selected in step S03 based on the storage information acquired in step S02. One or more storage areas in which the preparation data is stored are identified.
[0070] In step S06, it is determined whether a pattern has been selected. If a pattern has been selected, the process proceeds to step S07; otherwise, the process ends. The preparation data includes original data for multiple patterns. CPU 111 determines whether any of the multiple patterns has been selected based on an operation input by the user to operation panel 160. A pattern may also be selected when MFP 100 is powered on. For example, CPU 111 detects the type of hardware device attached to MFP 100, and selects a pattern associated with that hardware device. The hardware device may include, for example, image forming units 20C, 20M, 20Y, and 20K. Image forming units 20C, 20M, 20Y, and 20K are capable of full-color image formation. For example, a pattern corresponding to full-color image processing may be selected in terms of image processing functions.
[0071] In step S07, the original data is identified, and the process proceeds to step S08. CPU 111 reads the preparation data identified in step S05 from EPROM 115. Then, CPU 111 determines the original data of the pattern selected in step S06 from the original data of the multiple patterns included in the preparation data.
[0072] In step S08, execution data is generated, and the process proceeds to step S09. CPU 111 generates the execution data based on the original data. For example, CPU 111 generates the execution data by expanding the original data. When expanding the original data, parameters may be required. CPU 111 requests the user to input parameters using operation panel 160, and acquires the parameters input by the user. CPU 111 may also automatically determine the parameters from information such as the hardware configuration of MFP 100 and optional devices.
[0073] In step S09, it is determined whether other data exists in the assigned area. CPU 111 identifies data stored in one or more storage areas included in the assigned area determined in step S04, among the multiple storage areas of EPROM 115. If other data other than the data corresponding to the function identified in step S03 is stored, the process proceeds to step S10; otherwise, the process proceeds to step S11.
[0074] In step S10, the other data is moved, and the process proceeds to step S11. CPU 111 moves the other data stored in the allocated area to another storage area. CPU 111 may move all or part of the other data.
[0075] In step S11, the execution data is stored in the allocation area, and the process proceeds to step S12. Storing the execution data in the allocation area enables the function selected in step S03. In step S12, the preparation data is erased, and the process ends. CPU 111 erases the preparation data identified in step S05 from EPROM 115.
[0076] 6 is a flowchart showing an example of the flow of the erasure process. The erasure process is performed by CPU 111 included in MFP 100 as CPU 111 executes an erasure program stored in ROM 113, EPROM 115, or CD-ROM 118. The erasure program is part of the function enabling program.
[0077] 6, CPU 111 acquires the remaining storage capacity of the allocated area (step S21), and proceeds to step S22. CPU 111 accesses EPROM 115 and acquires the remaining storage capacity of the allocated area assigned to the enabled function out of the plurality of functions.
[0078] In step S22, the remaining storage capacity is compared with a first threshold value. If the remaining storage capacity is equal to or less than the first threshold value (YES in step S22), CPU 111 proceeds to step S23; otherwise, CPU 111 proceeds to step S26. In step S23, the remaining portion is identified. The remaining portion is part of preparation data corresponding to a function other than the function to which the allocated area is assigned. In step S24, it is determined whether the function corresponding to the remaining portion is enabled. If enabled, processing proceeds to step S25; if not, processing proceeds to step S26. In step S25, the remaining portion is erased, and processing ends. CPU 111 erases the remaining portion of the data stored in the assigned area, and ends processing. This prevents the occurrence of an event in which data generated by CPU 111 executing processing corresponding to a function cannot be stored in EPROM 115. This allows CPU 111 to reliably execute processing corresponding to the function to which the allocated area is assigned.
[0079] In step S26, CPU 111 determines whether a predetermined time has elapsed (step S21). CPU 111 detects that the time that has elapsed since MFP 100 was installed is equal to or greater than the predetermined time. If the predetermined time has elapsed since MFP 100 was installed (YES in step S26), the process proceeds to step S27; otherwise, the process ends.
[0080] In step S27, the preparation data is identified, and the process proceeds to step S28. CPU 111 acquires storage information from EPROM 115 and identifies all of the preparation data based on the storage information. Furthermore, CPU 111 identifies one or more storage areas in EPROM 115 where all of the preparation data are stored, respectively.
[0081] In step S28, the preparation data is erased, and the process ends. CPU 111 erases all the preparation data identified in step S27, and the process ends.
[0082] Although an example is shown here in which all preparation data stored in EPROM 115 is erased, it is also possible to erase a portion of the preparation data stored in EPROM 115. The preparation data that is not erased is specified by the stored information stored in EPROM 115. The stored information includes function identification information for identifying functions that are likely to be enabled.
[0083] 7 is a flowchart showing an example of the flow of the transfer process. The transfer process is performed by CPU 111 included in MFP 100 as CPU 111 executes a transfer program stored in ROM 113, EPROM 115, or CD-ROM 118. The transfer program is part of the function enabling program.
[0084] 7, CPU 111 acquires the remaining storage capacity of the allocated area (step S31), and proceeds to step S32. CPU 111 accesses EPROM 115 and acquires the remaining storage capacity of the allocated area allocated to the enabled function out of the plurality of functions.
[0085] In step S32, the remaining storage capacity is compared with a first threshold value. If the remaining storage capacity is equal to or less than the first threshold value (YES in step S32), CPU 111 proceeds to step S33, but otherwise ends the process. In step S33, the remaining portion is moved, and the process ends. The remaining portion is part of preparation data corresponding to a function other than the function to which the allocated area is assigned. CPU 111 moves the remaining portion of the data stored in the assigned area to another assigned area. This prevents the occurrence of an event in which data generated when CPU 111 executes processing corresponding to a function cannot be stored in EPROM 115. This allows CPU 111 to reliably execute processing corresponding to the function to which the allocated area is assigned.
[0086] 8 is a flowchart showing an example of the flow of the restriction processing. The restriction processing is performed by CPU 111 of MFP 100 as CPU 111 executes a restriction program stored in ROM 113, EPROM 115, or CD-ROM 118. The restriction program is part of the function enabling program.
[0087] 8, CPU 111 acquires the remaining storage capacity of the assigned area (step S41), and proceeds to step S42. CPU 111 accesses EPROM 115 and acquires the remaining storage capacity of the assigned area assigned to one of the plurality of functions.
[0088] In step S42, the remaining storage capacity is compared with a second threshold value. If the remaining storage capacity is equal to or less than the second threshold value (YES in step S42), CPU 111 proceeds to step S43; otherwise, CPU 111 ends the process. In step S43, the function is restricted and the process ends. CPU 111 prohibits the execution of a process corresponding to the function to which the allocated area is assigned. This prevents the process corresponding to the function from being executed, thereby preventing an event from occurring in which data generated by CPU 111 executing a process corresponding to the function cannot be stored in EPROM 115. Therefore, by CPU 111 restricting the execution of a process corresponding to the function before that process is executed, it is possible to prevent errors from occurring.
[0089] <Modification> In the above-described embodiment, the EEPROM 115 is used as an example of the storage unit, but the storage unit is not limited to the EEPROM 115 and may be any non-volatile storage device. For example, a hard disk drive (HDD) may be used as the non-volatile storage device.
[0090] <Summary of implementation form> (Item 1) A storage information acquisition unit that acquires, for each of a plurality of functions, storage information of a nonvolatile storage unit that stores preparation data including original data of each of a plurality of patterns corresponding to the function; an allocation unit that allocates a plurality of allocation areas of the storage area of the storage unit to the plurality of functions, respectively; an activation unit that stores execution data generated from the original data of the pattern selected from a plurality of patterns corresponding to a first function among the plurality of functions in a first allocation area that is allocated in the memory area for the first function among the plurality of allocation areas based on the storage information.
[0091] According to this aspect, using preparation data including the original data of each of a plurality of patterns corresponding to a function, execution data generated from the original data of a pattern selected from the plurality of patterns is stored in a first allocation area. Therefore, any one of the plurality of patterns can be made executable for one function. Therefore, since a user can select one of the plurality of patterns for each of the plurality of functions, customization of multiple functions is easy. As a result, an information processing device that facilitates the operation of customizing functions can be provided.
[0092] (Item 2) The information processing device according to item 1, further comprising an erasing unit that erases the preparation data corresponding to the first function in accordance with a predetermined condition.
[0093] According to this aspect, the preparation data is deleted, so that the storage area of the storage unit can be used effectively.
[0094] (Item 3) The information processing device according to Item 2, wherein the predetermined condition is the occurrence of an event in which the execution data corresponding to the first function is stored in the first allocation area.
[0095] According to this aspect, after the execution data corresponding to the first function is stored in the first allocation area, the preparation data corresponding to the first function is erased. This makes it possible to erase the preparation data that is unlikely to be used in the future.
[0096] (Item 4) The information processing device according to item 2 or 3, wherein the predetermined condition is the occurrence of an event in which one of the plurality of patterns corresponding to the first function is selected.
[0097] According to this aspect, after one of the plurality of patterns corresponding to the first function is selected, the execution data corresponding to the first function is stored in the first allocation area. Therefore, after the execution data corresponding to the first function is stored in the first allocation area, the preparation data corresponding to the first function can be erased.
[0098] (Item 5) The information processing device according to any one of items 2 to 4, wherein the predetermined condition is the occurrence of an event in which the elapsed time since the start of use of the device exceeds a predetermined period.
[0099] According to this aspect, the preparation data is erased after a predetermined period of time has elapsed since the device was first used. Therefore, after the predetermined period of time has elapsed, most of the preparation data has been used or is unlikely to be used in the future. This allows for efficient use of the storage area of the storage unit.
[0100] (Item 6) The storage unit stores at least a part of the preparation data corresponding to the first function in a second allocation area in the storage area that is allocated to a second function different from the first function among the plurality of functions; 6. The information processing device according to any one of items 2 to 5, wherein the predetermined condition is the occurrence of an event in which the remaining storage capacity of the second allocated area allocated to the second function becomes equal to or less than a predetermined value.
[0101] According to this aspect, when at least a portion of the preparation data corresponding to the first function is stored in a second allocated area of the storage area that is allocated to the second function, the preparation data for the first function is erased when the remaining storage capacity of the second allocated area falls below a predetermined value, thereby enabling the second function to be executed with priority over the preparation data for the first function.
[0102] (Item 7) An information processing device described in any one of Items 1 to 5, wherein the memory unit stores at least a portion of the preparation data corresponding to the first function in a second assigned area in the memory area that is assigned to a second function among the plurality of functions.
[0103] According to this aspect, at least a part of the preparation data corresponding to the first function is stored in a second allocated area of the storage area that is allocated to the second function. Therefore, even if the first allocated area is too large to store the preparation data for the first function, the preparation data for the first function can be stored in the storage unit.
[0104] (Item 8) The information processing device according to item 7, wherein the second allocation area is a shared area allocated to a plurality of the functions including the second function among the plurality of functions.
[0105] According to this aspect, the second allocated area is a shared area allocated to a plurality of functions, so there is no restriction on storing preparation data corresponding to the first function, and the preparation data can be easily stored therein.
[0106] (Item 9) The information processing device according to item 7 or 8, wherein the second allocated area is the storage area allocated to a predetermined specific function among the plurality of functions.
[0107] According to this aspect, when the second allocated area has a surplus in the storage area allocated to the predetermined specific function, the preparation data corresponding to the first function can be easily stored therein.
[0108] (Item 10) The information processing device according to any one of Items 7 to 9, wherein the second allocation area is a plurality of areas.
[0109] According to this aspect, the preparation data corresponding to the first function is stored in a plurality of second storage areas, and thus the preparation data corresponding to the first function is stored in a distributed manner in the plurality of second storage areas, which is effective when the size of the preparation data corresponding to the first function is relatively large or when the remaining capacity of the plurality of second storage areas is relatively small.
[0110] (Item 11) An information processing device according to any one of items 7 to 10, further comprising a moving unit that moves the preparation data corresponding to the first function to a third allocated area allocated in the storage area for a third function among the plurality of functions when the remaining storage capacity of the second allocated area becomes equal to or less than a first threshold value.
[0111] According to this aspect, when the remaining storage capacity of the second storage area falls below the first threshold, the preparation data corresponding to the first function is moved to the third storage area, thereby ensuring that the second function assigned to the second assigned area can be executed.
[0112] (Item 12) A process execution unit that executes a process corresponding to the first function using the execution data stored in the first allocation area; 12. The information processing device described in any one of items 1 to 11, further comprising a restriction unit that restricts the execution of processing corresponding to the first function by the processing execution unit when the remaining storage capacity of the first allocated area becomes less than a second threshold.
[0113] According to this aspect, when the remaining storage capacity of the first allocated area falls below the second threshold, the execution of the process corresponding to the first function is restricted, so that preparation data corresponding to other functions can continue to be stored in the first allocated area.
[0114] (Item 13) A function enabling method executed in an information processing device having a nonvolatile storage unit, comprising: the storage unit stores, for each of a plurality of functions, preparation data including original data of each of a plurality of patterns corresponding to the function; a stored information acquisition step of acquiring stored information in the storage unit; an allocating step of allocating a plurality of allocated areas of the storage area of the storage unit to the plurality of functions, respectively; and an activation step of storing execution data generated from the original data of the pattern selected from a plurality of the patterns corresponding to a first function among the plurality of functions in a first allocation area allocated in the memory area for the first function among the plurality of allocation areas based on the storage information.
[0115] According to this aspect, it is possible to provide a function enabling method that facilitates the operation of customizing a function.
[0116] (Item 14) A function enabling program executed on a computer having a non-volatile storage unit, the storage unit stores, for each of a plurality of functions, preparation data including original data of each of a plurality of patterns corresponding to the function; a stored information acquisition step of acquiring stored information in the storage unit; an allocating step of allocating a plurality of allocated areas of the storage area of the storage unit to the plurality of functions, respectively; and an activation step of storing execution data generated from the original data of the pattern selected from a plurality of patterns corresponding to a first function among the plurality of functions in a first allocation area allocated in the memory area for the first function among the plurality of allocation areas based on the storage information.
[0117] According to this aspect, it is possible to provide a function enabling program that facilitates the operation of customizing functions.
[0118] The embodiments disclosed herein should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is defined by the claims, not by the above description, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]
[0119] 100 MFP, 110 main circuit, 111 CPU, 112 communication I / F unit, 113 ROM, 114 RAM, 115 EEPROM, 116 facsimile unit, 117 external storage device, 118 CD-ROM, 119 temperature sensor, 120 automatic document feeder, 130 document reading unit, 140 image forming unit, 150 paper feeding unit, 160 operation panel, 161 display unit, 163 operation unit, 51 storage information acquisition unit, 53 allocation unit, 55 activation unit, 57 processing execution unit, 59 restriction unit, 61 erasure unit, 63 movement unit.
Claims
1. a storage information acquiring unit that acquires, for each of a plurality of functions, storage information of a nonvolatile storage unit that stores preparation data including original data of each of a plurality of patterns corresponding to the function; an allocation unit that allocates a plurality of allocation areas of the storage area of the storage unit to the plurality of functions, respectively; an activation unit that stores execution data generated from the original data of a pattern selected from a plurality of patterns corresponding to a first function among the plurality of functions in a first allocation area that is allocated in the memory area for the first function among the plurality of allocation areas based on the storage information.
2. The information processing apparatus according to claim 1 , further comprising an erasing unit that erases the preparation data in accordance with a predetermined condition.
3. The information processing apparatus according to claim 2 , wherein the predetermined condition is the occurrence of an event that causes the execution data corresponding to the first function to be stored in the first allocated area.
4. The information processing apparatus according to claim 2 , wherein the predetermined condition is an occurrence of an event in which one of the plurality of patterns corresponding to the first function is selected.
5. The information processing device according to claim 2 , wherein the predetermined condition is the occurrence of an event in which the elapsed time since the start of use of the device exceeds a predetermined period.
6. the storage unit stores at least a part of the preparation data corresponding to the first function in a second allocation area in the storage area, the second allocation area being allocated to a second function different from the first function among the plurality of functions; 3. The information processing apparatus according to claim 2, wherein the predetermined condition is the occurrence of an event in which the remaining storage capacity of the second allocated area allocated to the second function falls below a predetermined value.
7. An information processing device according to any one of claims 1 to 5, wherein the storage unit stores at least a portion of the preparation data corresponding to the first function in a second allocated area in the storage area that is allocated to a second function among the plurality of functions.
8. The information processing apparatus according to claim 7 , wherein the second allocated area is a shared area allocated to a plurality of the functions including the second function.
9. The information processing device according to claim 7 , wherein the second allocated area is the storage area allocated to a predetermined specific function among the plurality of functions.
10. The information processing device according to claim 7 , wherein the second allocation area is a plurality of areas.
11. The information processing device of claim 7 further comprises a moving unit that moves the preparation data corresponding to the first function to a third allocated area allocated in the memory area for a third function among the plurality of functions when the remaining storage capacity of the second allocated area becomes less than a first threshold value.
12. a processing execution unit that executes processing corresponding to the first function using the execution data stored in the first allocation area; An information processing device as described in any one of claims 1 to 5, further comprising a restriction unit that restricts the execution of processing corresponding to the first function by the processing execution unit when the remaining storage capacity of the first allocated area becomes less than a second threshold value.
13. A function enabling method executed in an information processing device having a nonvolatile storage unit, the storage unit stores, for each of a plurality of functions, preparation data including original data of each of a plurality of patterns corresponding to the function; a stored information acquisition step of acquiring stored information in the storage unit; an allocating step of allocating a plurality of allocated areas of the storage area of the storage unit to the plurality of functions, respectively; and an activation step of storing execution data generated from the original data of a pattern selected from a plurality of patterns corresponding to a first function among the plurality of functions in a first allocation area allocated in the memory area for the first function among the plurality of allocation areas based on the storage information.
14. A function enabling program executed on a computer having a non-volatile storage unit, the storage unit stores, for each of a plurality of functions, preparation data including original data of each of a plurality of patterns corresponding to the function; a stored information acquisition step of acquiring stored information in the storage unit; an allocating step of allocating a plurality of allocated areas of the storage area of the storage unit to the plurality of functions, respectively; and an activation step of storing execution data generated from the original data of the pattern selected from a plurality of patterns corresponding to a first function among the plurality of functions in a first allocation area allocated in the memory area for the first function among the plurality of allocation areas based on the storage information.
Citation Information
Patent Citations
Data processor and data processing method and storage medium storing computer readable program
JP2000305756A