while the invention is susceptible to various modifications and alternative forms , a specific embodiment thereof has been shown by way of example in the drawings and will herein be described in detail . those skilled in the art will appreciate that the features described below can be combined in various ways to form multiple variations of the invention . as a result , the invention is not limited to the specific examples described below , but only by the claims and their equivalents . with reference now to the figures and in particular with reference to fig1 an exemplary preferred embodiment of the invention is shown in system 100 . system 100 is configured to program firmware instructions into a disk - drive controller of a unit . the unit may include a single disk of a plurality disks 110 . an example of a plurality of disks 110 may include a redundant array of independent disks ( raid ) storage system . system 100 includes data router 102 , storage component 104 , data updater 106 , and programming module 108 . data router 102 is communicatively connected to storage component 104 . data router 102 may be configured for routing update requests of each of a plurality of disks 110 . an update request can include an input / output operation such as reading and writing . storage component 104 is communicatively connected to data router 106 . storage component 104 may be configured for logging the update requests . storage component 104 can include a unit log for logging the update requests . the update requests may include write requests received from data router 102 . the write requests may be logged in the unit log . data updater 106 is communicatively connected to storage component 104 . data updater 106 may update data within a portion of a disk within a plurality of disks 110 based on update requests that are logged in storage component 104 . data updater 106 may be configured to reconstruct data from a portion of the disk within a plurality of disks 110 based on update requests that are logged in storage component 104 . the portion of the disk may be an amount of storage space that is less than a total amount of storage space on the disk . however , the portion may include an amount of storage space that is greater than the amount of storage space on the disk . an example of a portion that is greater that an amount of storage space on the disk would include more than one disk of the plurality of disks . the portion , however , includes an amount of storage space that is typically less than a total amount of storage space of the entire plurality of disks . programming module 108 is communicatively connected to a disk drive controller of the plurality of disks 110 . programming module 108 is configured to install the firmware instructions on one of the disks of the plurality of disks 110 while remaining disks of the plurality of disks continue to operate . [ 0032 ] fig2 illustrates exemplary preferred operation 200 of system 100 of fig1 . operation 200 commences in step 202 . a unit is disabled so that firmware for the unit can be modified in step 204 . disabling may include disabling the update requests to the unit . the firmware of the unit is modified in step 206 . after the unit is disabled and while the firmware is being modified , the update requests that are directed to the unit are logged in a unit log of storage component 104 of fig1 in step 208 . the dashed line around steps 206 and 208 indicate that these operations are performed substantially in parallel . in other words , information reflective of updates to the disabled unit is logged ( step 208 ) while the firmware of the unit is being updated ( step 206 ). once the firmware is modified , data within the unit is updated based on the logged update requests within the unit log in step 210 . operation 200 ends in step 212 . [ 0033 ] fig3 illustrates an exemplary preferred embodiment of the invention as system 300 . system 300 is configured to program firmware instructions into disk - drive controller 312 of a disk . the disk may be one of the plurality of disks 310 . an example of the plurality of disks 310 may include a redundant array of independent disks ( raid ) storage system . each disk of the plurality of disks 310 may include a disk - drive controller , such as disk - drive controller 312 . disk drive controller 312 may be configured to enable and disable the disk for installing firmware instructions in disk - drive controller 312 . system 300 includes decision unit 314 , data router 302 , storage component 304 , data updater 306 , and programming module 308 . programming module 308 is communicatively connected to disk - drive controller 312 to modify firmware of disk - drive controller 312 . a modification to the firmware may include either an upgrade or a downgrade to current firmware residing in disk - drive controller 312 . a firmware upgrade may include a new set of firmware instructions used to direct disk - drive controller 312 . a firmware downgrade may include a previous set of firmware instructions , which may be used in the event of faults , or “ bugs ”, found in a present set of firmware instructions . an example of disk - drive controller could include a microprocessor . decision unit 314 is communicatively connected to programming module 308 and to data router 302 . decision unit 314 may be configured to determine if a disk is one of the plurality of disks 310 . if the disk is not one of the plurality of disks 310 , a decision is made that allows programming module 308 to modify the firmware of disk - drive controller 312 . an example of a disk not being one of the plurality of disks 310 would include a spare disk to be used when a disk needs replacement . if the disk is one of the plurality of disks 310 , decision unit 314 directs data router 302 to redirect update requests . data router 302 is communicatively connected to storage component 304 . data router 302 may be configured to route update requests of a disk of the plurality of disks 310 . data router 302 may be configured to route update requests of the disk to storage component 304 . storage component 304 is communicatively connected to data router 302 and to data updater 306 . storage component 304 may be configured to receive the update requests of the disk from data router 302 and store the requests in a unit log . data updater 306 is communicatively connected to the disk of the plurality of disks 310 and to storage component 304 . data updater 306 may be configured to update data within a portion of the disk of the plurality of disks 310 based on logged update requests stored in the unit log . in the preferred embodiment , data updater 306 reconstructs data located on portions of the disk based on the logged update requests . the portions of the disk may typically include sectors and / or disk partitions . in another embodiment of the invention , the logged update requests include write requests such that data updater 306 updates data on the disk based on the write requests logged in the unit log of storage component 304 . [ 0038 ] fig4 illustrates exemplary preferred operation 400 of system 300 of fig3 . operation 400 commences in step 402 . a decision is made to determine if a disk is one of the plurality of disks 310 of fig3 in decision block 404 . if the disk is not one of the plurality of disks 310 , such as a spare disk , programming module 308 programs firmware instructions into disk - drive controller 312 in step 414 . operation 400 ends in step 420 upon completion of step 414 . however , if the disk is one of the plurality of disks 310 , operation 400 creates a unit log in step 406 . the unit log is stored in storage component 304 of fig3 . disk driver controller 312 disables the disk of the plurality of disks 310 such that the disk no longer receives update requests in step 408 . once the disk is disabled , update requests directed to the disk are routed to the unit log by data router 302 of fig3 in step 410 . the update requests are logged in the unit log . firmware instructions are modified in disk - drive controller 312 by programming module 308 in step 412 . firmware modifications can include installations of firmware upgrades and / or downgrades that change the present set of firmware instructions of disk - drive controller 312 . as above in fig2 a dashed line around steps 410 and 412 indicates that the steps are performed substantially in parallel . in other words , information reflective of updates to the disabled unit is logged ( step 410 ) while the firmware of the unit is being updated ( step 412 ). once firmware modifications are complete , data can be reconstructed on the disk by data updater 306 based on logged update requests of the unit log in step 416 . data updater 306 can reconstruct data located on portions of the disk based on the logged update requests . optionally , data updater 306 can update data of files on the disk based on write requests . once the data on the disk is updated , disk - drive controller 312 enables the disk in step 418 . once the disk is enabled , update requests are redirected to the disk and the logging of update requests for the disk discontinues . operation 400 ends in step 420 . those skilled in the art will understand that other methods can be used to program firmware instructions into disk - drive controller 312 of a disk within the plurality of disks 310 such that data on the disk is not totally reconstructed . instructions that perform the above operation can be stored on storage media . the instructions can be retrieved and executed by a microprocessor . some examples of instructions are software , program code , and firmware . some examples of storage media are memory devices , tapes , disks , integrated circuits , and servers . the instructions are operational when executed by the microprocessor to direct the microprocessor to operate in accord with the invention . those skilled in the art are familiar with instructions and storage media . advantages of the above embodiments of the invention include decreasing an amount of time required to reconstruct data on a disk in a redundant array of independent disks ( raid ) storage system due to software installations to the disk . other advantages include removing a need for data reconstruction by logging updates , or write requests , to data on the disk such that the data is updated with respect to the write requests . while the invention has been illustrated and described in the drawings and foregoing description , such illustration and description is to be considered as exemplary and not restrictive in character . one embodiment of the invention and minor variants thereof have been shown and described . protection is desired for all changes and modifications that come within the spirit of the invention . those skilled in the art will appreciate variations of the above - described embodiments that fall within the scope of the invention . as a result , the invention is not limited to the specific examples and illustrations discussed above , but only by the following claims and their equivalents .