Data processing: software development – installation – and managem – Software program development tool – Translation of code
Reexamination Certificate
1999-03-17
2002-03-19
Dam, Tuan Q. (Department: 2122)
Data processing: software development, installation, and managem
Software program development tool
Translation of code
C711S171000
Reexamination Certificate
active
06360364
ABSTRACT:
TECHNICAL FIELD
This invention relates to the installation of applications from base computer (such as a desktop computer) to a portable peripheral computer (such as a handheld computer). More particularly, the invention relates to the installation of applications from a base computer to one or more optional memory expansion cards of a portable peripheral computer.
BACKGROUND OF THE INVENTION
Laptop, handheld, and other portable computers or computing devices have increased in popularity as the devices have become smaller in size and less expensive. Additionally, improved operating speed and processing power of portable computers has increased their popularity. Many portable computers are capable of storing multiple application programs, such as address books, games, calculators, and the like. The application programs can be permanently installed in the portable computer during manufacture (e.g., on read-only memory (ROM)). Alternatively, the application programs may be installed by the user after purchasing the portable computer.
Many of these small computers have limited physical resources. For example, both primary and secondary memory are typically quite limited in comparison to desktop computers. In addition, small computers and other information processing devices often do not accommodate any form of removable mass storage such as floppy disks or optical disks. To make up for this deficiency, such computers are often capable of utilizing the resources of desktop computers or other base computers.
The invention described herein relates to the ability of portable computers such as laptops, handhelds, and palmtops to be programmed in conjunction with a more capable base computer such as a desktop computer. Specifically, the invention relates to the use of a base computer to install programs on a smaller, more resource-limited portable computer. Such programs are typically distributed from their manufacturers on some type of non-volatile storage medium such as a floppy disk or a CD-ROM. Since the portable computer has no hardware to read such a storage medium, the portable computer is instead connected to communicate with a base computer, typically through a serial link. The base computer reads the application program from the non-volatile storage medium and downloads the program to the portable computer.
Portable computers that can receive application programs downloaded from a desktop computer are versatile and allow application programs to be replaced or upgraded easily. Typically, an installation application is run on the desktop computer that allows the user to select one or more application programs for downloading into the portable computer. After selecting the appropriate application programs, the installation application downloads the application programs to the portable computer.
In the environment of “Microsoft Windows CE” operating systems, application programs are often distributed in the form of “CE Cabinet Files” or “CE CAB files.” “CE CAB files” may also be referred to as “installation files” or “setup package files.” Throughout this specification, the term “CAB files” shall be understood to mean “CE CAB files.”
A CAB file typically includes all of the files of an application program, as well as other setup information such as registry settings. Thus, the CAB file contains all information, files, and other components necessary to install the corresponding application on a computer. To install the application program, the various components of the CAB file are extracted from the CAB file and written separately to the memory of the computer. Other information contained in the CAB file is also extracted from the CAB file and recorded as appropriate. For example, registry information is copied to the computer's registry.
When installing a program to a portable computer from a base computer, the base computer typically runs an installation program that copies the corresponding CAB file into the memory of the portable computer. Once the CAB file is in memory, a load module in the portable computer then dissects the CAB file and copies its components separately into the computer's memory. The CAB file components are deleted from the CAB file as they are copied individually to memory, thereby minimizing ongoing memory requirements.
Some portable computers contain a built-in main memory as well as one or more slots or connectors to receive optional memory expansion units or cards. Such expansion cards allow a user to increase the memory resources of a portable computer. Such additional memory resources can be used for storing additional application programs, storing additional data, or executing additional application programs simultaneously.
In many portable computers, the load module is capable of querying its various memory components, including any installed memory expansion cards, to determine and display any available memory locations where an application program might be installed. Such a computer typically presents the user with some sort of visual interface indicating the memory structure of the computer, allowing the user to select an identified memory component as the installed location of a program. In the “Windows CE” operating environment, different memory devices and locations may be represented as different directories or “folders” in a graphical display.
In other portable computers, however, this functionality does not exist. Specifically, the operating systems of such computers do not have user interface components that allow a user to “browse” among the different memory components of the device and to then select one of the memory components to receive an application program. In these computers, an application program is usually installed from a CAB file to the same memory component occupied by the CAB file, without any opportunity for user intervention. An alternative is to request that the user type in a memory specification (or memory location), without the benefit of the more convenient and intuitive graphical interface. This requires a degree of user sophistication that cannot usually be assumed, however, and is therefore very prone to mistakes. A mistake in specifying the memory location results in an aborted installation.
Rather than request a typed memory specification from a user, systems such as this typically install an application program in the same memory location or device as occupied by the CAB file. When copying the CAB file from the base computer, the CAB file is typically copied to a default memory device or location in the portable computer. This default location is usually in the built-in memory of the portable computer. After the CAB file is written to the portable computer's built-in memory by the base computer, certain portable computers allow the CAB files to be manually copied or moved by a user into the memory of a different memory device such as the memory of a memory expansion card. This results in the application being installed by the load component into the memory of the expansion card (into the same memory as occupied by the CAB file). However, portable computers that do not have a file browser cannot move or copy the CAB files from the portable computer's default memory device. With these devices, the CAB files (and the installed application) remain in the portable computer's default memory device.
This installation method is very inconvenient and difficult for many users. In addition, it requires that the built-in memory have enough available capacity to accommodate the entire CAB file. Since CAB files are typically uncompressed, this means that there must be enough built-in memory to accommodate the entire application program, even though the application program is eventually to be installed in memory other than the built-in memory. If the built-in memory space available in the portable computer is insufficient to receive the application program, then the installation will fail regardless of whether there is an installed memory expansion card with sufficient memory to receive the applicat
Chen James S. L.
Flanagin Stephen D.
Hu George T.
Dam Tuan Q.
Lee & Hayes PLLC
Microsoft Corporation
LandOfFree
System and method for installing an application on a... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and method for installing an application on a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for installing an application on a... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2856573