IP Library Granted Patent US 12,450,179
Granted Patent B2
US 12,450,179 · App. 17/456,969 · Granted Oct 21, 2025

LZO decompression in external storage

Inventors: Maximilian Waldo Schneider (Mainz, DE); Francois Vincent (Hessen, DE); Ralf Peter Thor (Baden-Wuerttemberg, DE)
Assignee: Honeywell International Inc.
G06F13/1668G06F13/4282G06F21/55G06F2221/034
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,450,179
App. No.
17/456,969
Granted
Oct 21, 2025
Kind
B2
Abstract

A method includes inputting a compressed image in a computing device. The method also includes identifying a shortage of random access memory during a decompression process. The method also includes performing calls to a system of memory caches to read and write input and output including the inputted compressed image by a processor. The method also includes identifying arbitrary storage to read and write the input and output by the processor. The method also includes redirecting the input and output by the processor to the identified arbitrary storage.

Claims (44)

1. A method comprising:

inputting a compressed image in a computing device;

decompressing the inputted compressed image;

identifying a shortage of storage in one or more of a decompressed read cache random access memory (RAM) and a decompressed write cache RAM of the computing device during the decompression of the inputted compressed image;

identifying an arbitrary storage by performing calls to a system of memory caches, wherein the arbitrary storage is for reading and writing, by a processor, the inputted compressed image and the decompressed image, and wherein the arbitrary storage includes a decompressed image flash; and

redirecting the inputted compressed image and the decompressed image, by the processor, to the identified arbitrary storage, wherein, in response to identifying the shortage of storage, the decompressed write cache RAM writes data of the decompressed write cache RAM into the decompressed image flash, and the decompressed image flash reads data from the decompressed read cache RAM.

2. The method of claim 1 , wherein the decompressed image overrides the inputted compressed image to complete the decompression process.

3. The method of claim 1 , wherein the arbitrary storage includes an additional RAM.

4. The method of claim 1 , further comprising:

adding additional memory caches to speed up decompression speed.

5. The method of claim 1 , wherein the inputted compressed image and the decompressed image are redirected to an electrically erasable programmable read-only memory (EEPROM).

6. The method of claim 1 , wherein the inputted compressed image and the decompressed image are redirected to serial devices.

7. The method of claim 1 , further comprising:

replacing all direct RAM accesses in response to identifying the shortage of storage.

8. A method comprising:

receiving an inputted compressed image in one or more computing devices;

decompressing the inputted compressed image;

identifying a shortage of storage in one or more of a decompressed read cache random access memory (RAM) and a decompressed write cache RAM of the one or more computing device during the decompression of the inputted compressed image;

identifying an arbitrary storage by performing calls to a system of memory caches, wherein the arbitrary storage is for reading and writing the inputted compressed image and the decompressed image, and wherein the arbitrary storage comprises one of a decompressed image flash, a random access memory (RAM) or Flash memory; and

sending the inputted compressed image and the decompressed image to one of the decompressed image flash, the RAM or the Flash memory, wherein, in response to identifying the shortage of storage, the decompressed write cache RAM writes data of the decompressed write cache RAM into the decompressed image flash, and the decompressed image flash reads data from the decompressed read cache RAM.

9. The method of claim 8 , further comprising:

identifying an electrically erasable programmable read-only memory (EEPROM) for additional storage.

10. The method of claim 8 , further comprising:

performing decryption and the decompression in parallel without storing plaintext in non-volatile storage.

11. The method of claim 8 , further comprising:

performing the decompression and reencryption in parallel without storing the inputted compressed image and the decompressed image in the RAM or the flash memory.

12. The method of claim 8 , further comprising:

performing decryption and reencryption continuously in parallel without storing plaintext.

13. The method of claim 8 , further comprising:

redirecting the inputted compressed image to an electrically erasable programmable read-only memory (EEPROM).

14. The method of claim 8 , further comprising:

redirecting the inputted compressed image to at least one of an electrically erasable programmable read-only memory (EEPROM) or a serial device.

15. A system comprising:

a computing device receiving an inputted compressed image;

a processor configured to:

decompress the inputted compressed image;

identify a shortage of storage in one or more of a decompressed read cache random access memory (RAM) and a decompressed write cache RAM of the computing device during the decompression of the inputted compressed image;

identify an arbitrary storage by performing calls to a system of memory caches, wherein the arbitrary storage is for reading and writing the inputted compressed image and the decompressed image, and wherein the arbitrary storage comprises one or more serial devices including at least one of a decompressed image flash, read-only memory, and flash memory; and

redirect the inputted compressed image and the decompressed image to the one or more serial devices, wherein, in response to identifying the shortage of storage, the decompressed write cache RAM writes data of the decompressed write cache RAM into the decompressed image flash, and the decompressed image flash reads data from the decompressed read cache RAM.

16. The system of claim 15 , wherein the arbitrary storage includes at least one additional RAM.

17. The system of claim 15 , wherein the arbitrary storage includes an electrically erasable programmable read-only memory (EEPROM).

18. The system of claim 15 , wherein the processor combines decryption and decompression in parallel processes.

19. The system of claim 15 , wherein plaintext is not stored within the arbitrary storage.

20. The system of claim 15 , wherein the processor combines a decryption process and reencryption process in parallel to mitigate one or more security risks.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: SCHNEIDER, MAXIMILIAN WALDO; VINCENT, FRANCOIS; THOR, RALF PETER
To: HONEYWELL INTERNATIONAL INC.
Reel/Frame 058242/0854 →
Continuity (1)
Related Publication 20230169020A1 · Jun 1, 2023
References Cited (94)
US 5255378A · Crawford · 1993 [cited by examiner]
US 5359676A · Fan · 1994 [cited by applicant]
US 5835740A · Wise · 1998 [cited by examiner]
US 5890014A · Long · 1999 [cited by examiner]
US 6081752A · Benson, IV et al. · 2000 [cited by applicant]
US 6636958B2 · Abboud et al. · 2003 [cited by applicant]
US 7111142B2 · Spencer · 2006 [cited by applicant]
US 7549042B2 · Glaum et al. · 2009 [cited by applicant]
US 7657533B2 · Gold · 2010 [cited by applicant]
US 7734932B2 · Buer · 2010 [cited by examiner]
US 7747980B2 · Illowsky · 2010 [cited by applicant]
US 7805719B2 · O'Neil · 2010 [cited by applicant]
US 7886093B1 · Chen · 2011 [cited by applicant]
US 8055096B2 · Dahms et al. · 2011 [cited by applicant]
US 8135958B2 · Greco et al. · 2012 [cited by applicant]
US 8201054B2 · Slyz et al. · 2012 [cited by applicant]
US 8341604B2 · Codrescu · 2012 [cited by applicant]
US 8522233B2 · Nakamura et al. · 2013 [cited by applicant]
US 8943492B2 · Scian et al. · 2015 [cited by applicant]
US 9720616B2 · Yu · 2017 [cited by applicant]
US 10055353B2 · Nachimuthu et al. · 2018 [cited by applicant]
US 10972741B2 · Simpson · 2021 [cited by applicant]
US 10983704B1 · Van Gaasbeck · 2021 [cited by examiner]
US 11175859B1 · La Fratta · 2021 [cited by examiner]
US 20030022665A1 · Rajaram · 2003 [cited by applicant]
US 20040003262A1 · England · 2004 [cited by examiner]
US 20050114852A1 · Chen · 2005 [cited by examiner]
US 20050144388A1 · Newburn · 2005 [cited by examiner]
US 20050240745A1 · Iyer · 2005 [cited by examiner]
US 20080168319A1 · Lee · 2008 [cited by examiner]
US 20090070374A1 · Eker et al. · 2009 [cited by applicant]
US 20090274294A1 · Itani · 2009 [cited by applicant]
US 20100325523A1 · Slyz et al. · 2010 [cited by applicant]
US 20120102477A1 · Kim · 2012 [cited by applicant]
US 20120150877A1 · Ramamurthy · 2012 [cited by applicant]
US 20120198154A1 · Keith, Jr. · 2012 [cited by applicant]
US 20120227036A1 · Crk · 2012 [cited by applicant]
US 20120246392A1 · Cheon · 2012 [cited by examiner]
US 20130024545A1 · Sheppard · 2013 [cited by applicant]
US 20150293701A1 · Kim · 2015 [cited by examiner]
US 20160210251A1 · Nale · 2016 [cited by examiner]
US 20160378511A1 · Jung · 2016 [cited by examiner]
US 20170048303A1 · Szilagyi · 2017 [cited by applicant]
US 20170090903A1 · Bainville · 2017 [cited by applicant]
US 20170118675A1 · Boch · 2017 [cited by applicant]
US 20170194378A1 · Kim · 2017 [cited by examiner]
US 20170212750A1 · Stutzenberger · 2017 [cited by applicant]
US 20170337204A1 · Szilagyi · 2017 [cited by applicant]
US 20180060235A1 · Yap et al. · 2018 [cited by applicant]
US 20180095668A1 · Malyugin et al. · 2018 [cited by applicant]
US 20180173723A1 · Pfeifle et al. · 2018 [cited by applicant]
US 20190146775A1 · Wang et al. · 2019 [cited by applicant]
US 20190265965A1 · Acharya et al. · 2019 [cited by applicant]
US 20190324646A1 · Homma · 2019 [cited by examiner]
US 20200118516A1 · Kim · 2020 [cited by applicant]
US 20200241988A1 · Toya · 2020 [cited by applicant]
US 20200310782A1 · Ujiie et al. · 2020 [cited by applicant]
US 20210373881A1 · Schneider · 2021 [cited by applicant]
US 20220342823A1 · D'Eliseo · 2022 [cited by examiner]
US 20230168928A1 · Schneider · 2023 [cited by applicant]
US 20230169020A1 · Schneider · 2023 [cited by examiner]
US 20230205514A1 · Schneider · 2023 [cited by applicant]
EP 2017726A2 · 2009 [cited by applicant]
EP 2711858A1 · 2014 [cited by applicant]
EP 3680773A1 · 2020 [cited by applicant]
JP 2003216465A · 2003 [cited by applicant]
KR 101003888B1 · 2010 [cited by applicant]
KR 101541112B1 · 2015 [cited by applicant]
WO 2010017326A1 · 2010 [cited by applicant]
WO 2018091085A1 · 2018 [cited by applicant]
WO 2019042546A1 · 2019 [cited by applicant]
WO 2019077607A1 · 2019 [cited by applicant]
WO 2020088913A1 · 2020 [cited by applicant]
Canadian Office Action mailed May 3, 2024; issued in connection with corresponding Canadian Patent Application No. 3,183,509 (5 pages total). [cited by applicant]
Canadian Office Action mailed May 2, 2024; issued in connection with corresponding Canadian Patent Application No. 3,183,469 (6 pages total). [cited by applicant]
Moran, Brendan et al. “A Firmware Update Architecture for Internet of Things.” Retrieved from: https://tools.ietf.org/id/draft-ietf-suit-architecture-08.html, Retrieved on Jun. 17, 2021 (18 pages total). [cited by applicant]
Usama M, Zakaria N (2017) Chaos-Based Simultaneous Compression and Encryption for Hadoop. PLoS One 12(1): e0168207. https://doi.org/10.1371/journal.pone.0168207 (18 pages total). [cited by applicant]
T. Subhamastan Rao et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, vol. 2(5) , 2011, 2369-2374 (6 pages total) , “Simultaneous Data Compression and Encryption”. [cited by applicant]
Pillai, Vysakh P., “Secure firmware upgrade for embedded systems” (2017) Retrieved from: https://embeddedinn.xyz/articles/tutorial/Secure-Firmware-upgrade-for-embedded-systems/, Retrieved on: Jul. 7, 2021 (7 pages total… [cited by applicant]
Reddy, Rakesh, “Upgrading Embedded Design Firmware via USB”, Published in Embedded.com (http://www.embedded.com) Jun. 2008 (5 pages total). [cited by applicant]
McDonagh, Colin, “Efficient Wireless Incremental Updates to Resource-Constrained Devices”, Dissertation submitted to the University of Dublin, Trinity College, May 2018 (66 pages total). [cited by applicant]
European Search Report mailed Jun. 1, 2023, issued in connection with corresponding EP Application No. 22214493.3 (8 pages total). [cited by applicant]
GZIP(1): General Commands Manual, 1993, Jean-loup Gailly (7 pages total). [cited by applicant]
History of Lossless Data Compression Algorithms, Jan. 2019 (19 pages total) , unknown author. [cited by applicant]
Stolikj, M., Cuijpers, P. J. L., & Lukkien, J. J. (2012). Efficient reprogramming of sensor networks using incremental updates and data compression. (Computer science reports; vol. 1210). Eindhoven: Technische Universit… [cited by applicant]
European Search Report mailed May 15, 2023 issued in connection with corresponding EP Application No. 22211904.2 (12 pages total). [cited by applicant]
European Search Report mailed Apr. 5, 2023 issued in connection with corresponding EP Application No. 22210343.4 (11 pages total). [cited by applicant]
European Search Report mailed May 23, 2023 issued in connection with corresponding EP Application No. 22210345.9 (8 pages total). [cited by applicant]
Kumar Amit Mehta, “Fail-proof Over the Air Firmware Upgrade for Embedded Systems”, 2016, Tallinn University of Technology, 2019, (80 pages). [cited by applicant]
Krishnan et al., “Secure Intermittent Computing Protocol: Protecting State Across Power Loss”, IEEE Xplore, 2019, (6 pages). [cited by applicant]
Korean Office action mailed Sep. 20, 2024, issued in connection with corresponding Korean Patent Application No. 10-2022-0182222 with English language translation (10 pages total). [cited by applicant]
Canadian Office Action mailed May 15, 2024 issued in connection with corresponding Canadian patent application No. 3,184,605 (4 pages total). [cited by applicant]
Canadian Office action mailed May 26, 2025, issued in connection with corresponding Canadian Patent Application No. 3,183,469 (4 pages total). [cited by applicant]
Canadian Office action mailed Jun. 2, 2025, issued in connection with corresponding Canadian Patent Application No. 3,184,605 (4 pages total). [cited by applicant]