CN118295683A - Display device, server and system upgrading method - Google Patents

Display device, server and system upgrading method Download PDF

Info

Publication number
CN118295683A
CN118295683A CN202410486711.8A CN202410486711A CN118295683A CN 118295683 A CN118295683 A CN 118295683A CN 202410486711 A CN202410486711 A CN 202410486711A CN 118295683 A CN118295683 A CN 118295683A
Authority
CN
China
Prior art keywords
partition
upgrade
request
capacity
upgrade package
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410486711.8A
Other languages
Chinese (zh)
Inventor
王彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Hisense Media Network Technology Co Ltd
Original Assignee
Qingdao Hisense Media Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Hisense Media Network Technology Co Ltd filed Critical Qingdao Hisense Media Network Technology Co Ltd
Priority to CN202410486711.8A priority Critical patent/CN118295683A/en
Publication of CN118295683A publication Critical patent/CN118295683A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

Some embodiments of the present application provide a display device, a server, and a system upgrade method, where the method may start an upgrade process in response to an upgrade instruction of an operating system, where the upgrade process includes a state detection process, where the state detection process is used to detect a number of bad blocks of a first partition and a remaining capacity of a second partition. And generating an upgrade request through the number of bad blocks of the first partition and the residual capacity of the second partition. Then sending an upgrade request to the server so as to download a target upgrade package from the server; and upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system and starting the new version system. According to the method, different upgrading requests can be generated based on the number of bad blocks of the first partition and the residual capacity of the second partition, system upgrading is completed through different target upgrading packages, and the success rate of system upgrading is improved.

Description

Display device, server and system upgrading method
Technical Field
The present application relates to the field of display devices, and in particular, to a display device, a server, and a system upgrade method.
Background
In order to update whole or part of electronic equipment, computer system, software platform, etc., to achieve the effects of introducing new functions, repairing known problems, enhancing security, optimizing performance, etc., the updating is completed by using system upgrade. Over-the-Air (OTA) is a system upgrade method in which upgrades do not require connection to a computer or other external device, and software upgrades are performed directly to the device Over a wireless network. Through OTA upgrading, a user can conveniently complete system updating under the condition that normal use of equipment is not affected.
System upgrades are the process of downloading updated software programs and software data to the built-in memory, and writing the upgrade package into the built-in memory. The process of system upgrades is affected by the state of the built-in memory, which includes whether there are bad blocks and the remaining memory space. Under the conditions that bad blocks exist in the built-in memory and the residual memory space is insufficient, the system upgrade can fail.
Disclosure of Invention
Some embodiments of the present application provide a display device, a server, and a system upgrade method, so as to solve the problem of high failure rate of system upgrade.
In a first aspect, some embodiments of the present application provide a display apparatus, including: a display, a communication device, a memory, and a controller. Wherein the display is configured to display a user interface; the memory comprises a first partition, a second partition and a third partition, wherein the third partition is a mirror partition of the second partition, the first partition is used for storing operating system information, the second partition is used for storing user data and an upgrade package, and the third partition is used for storing the upgrade package transferred from the second partition; the communication device is configured to establish a communication connection with a server; the controller is configured to:
responding to an upgrade instruction of an operating system, and starting an upgrade process, wherein the upgrade process comprises a state detection process, and the state detection process is used for detecting the number of bad blocks of a first partition and the residual capacity of a second partition;
Generating an upgrade request according to the number of bad blocks of the first partition and the residual capacity of the second partition, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when the first partition has no bad block and the target upgrade package capacity is smaller than the residual capacity of the second partition, the second request is generated when the first partition has no bad block and the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the first partition has bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the first partition has bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition;
Sending an upgrade request to the server to download a target upgrade package from the server;
And upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system and starting the new version system.
In a second aspect, some embodiments of the present application further provide a server, including: the device comprises a storage module, a communication module and a processor. Wherein the storage module is configured to store an operating system upgrade package; the communication module is configured to establish a communication connection with a display device; the processor is configured to:
receiving an upgrade request sent by the display device, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when a bad block does not exist in a first partition, the target upgrade package capacity is smaller than the residual capacity of a second partition, the second request is generated when the bad block does not exist in the first partition, the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the bad block exists in the first partition, the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the bad block exists in the first partition, and the target upgrade package capacity is larger than the residual capacity of the second partition;
and responding to the upgrade request, and extracting a target upgrade package from the storage module.
In a third aspect, some embodiments of the present application further provide a system upgrade method, which is applied to the display device provided in the first aspect, where the display device includes: a display, a communication device, a memory, and a controller, the method comprising:
responding to an upgrade instruction of an operating system, and starting an upgrade process, wherein the upgrade process comprises a state detection process, and the state detection process is used for detecting the number of bad blocks of a first partition and the residual capacity of a second partition;
Generating an upgrade request according to the number of bad blocks of the first partition and the residual capacity of the second partition, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when the first partition has no bad block and the target upgrade package capacity is smaller than the residual capacity of the second partition, the second request is generated when the first partition has no bad block and the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the first partition has bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the first partition has bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition;
sending an upgrade request to a server to download a target upgrade package from the server;
and upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system, and starting the new version system.
In a fourth aspect, some embodiments of the present application further provide a system upgrade method, which is applied to the server provided in the second aspect, where the server includes a storage module, a communication module, and a processor. The method comprises the following steps:
receiving an upgrade request sent by the display device, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when a bad block does not exist in a first partition, the target upgrade package capacity is smaller than the residual capacity of a second partition, the second request is generated when the bad block does not exist in the first partition, the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the bad block exists in the first partition, the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the bad block exists in the first partition, and the target upgrade package capacity is larger than the residual capacity of the second partition;
and responding to the upgrade request, and extracting a target upgrade package from the storage module.
As can be seen from the above technical solutions, some embodiments of the present application provide a display device, a server, and a system upgrade method, where the method may start an upgrade process in response to an upgrade instruction of an operating system, where the upgrade process includes a state detection process, where the state detection process is used to detect a number of bad blocks of a first partition and a remaining capacity of a second partition. And generating an upgrade request through the number of bad blocks of the first partition and the residual capacity of the second partition. Then sending an upgrade request to the server so as to download a target upgrade package from the server; and upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system and starting the new version system. According to the method, different upgrading requests can be generated based on the number of bad blocks of the first partition and the residual capacity of the second partition, system upgrading is completed through different target upgrading packages, and the success rate of system upgrading is improved.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic diagram of an operation scenario between a display device and a control device according to some embodiments of the present application;
fig. 2 is a schematic diagram of a hardware configuration of a display device according to some embodiments of the present application;
fig. 3 is a schematic hardware configuration diagram of a control device according to some embodiments of the present application;
FIG. 4 is a schematic diagram of a software configuration of a display device according to some embodiments of the present application;
FIG. 5 is a schematic diagram of a display device displaying an active upgrade mode according to some embodiments of the present application;
FIG. 6 is a schematic diagram of a display device displaying an inquiry upgrade mode according to some embodiments of the present application;
FIG. 7 is a schematic diagram of a display device displaying a later update-prompting interface according to some embodiments of the present application;
FIG. 8 is a flowchart illustrating a method for performing a system upgrade for a display device according to some embodiments of the present application;
FIG. 9 is a flow chart of generating an upgrade request according to some embodiments of the present application;
FIG. 10 is a schematic diagram illustrating interaction between a display device and a server according to some embodiments of the present application;
FIG. 11 is a schematic diagram of a first prompt interface according to some embodiments of the present application;
FIG. 12 is a flow chart of repairing bad blocks according to some embodiments of the present application;
FIG. 13 is a schematic diagram of a second prompt interface according to some embodiments of the present application;
fig. 14 is a schematic diagram of an offloading application interface according to some embodiments of the present application.
Detailed Description
Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The embodiments described in the examples below do not represent all embodiments consistent with the application. Merely exemplary of systems and methods consistent with aspects of the application as set forth in the claims.
It should be noted that the brief description of the terminology in the present application is for the purpose of facilitating understanding of the embodiments described below only and is not intended to limit the embodiments of the present application. Unless otherwise indicated, these terms should be construed in their ordinary and customary meaning.
The terms first, second, third and the like in the description and in the claims and in the above-described figures are used for distinguishing between similar or similar objects or entities and not necessarily for describing a particular sequential or chronological order, unless otherwise indicated. It is to be understood that the terms so used are interchangeable under appropriate circumstances.
The terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a product or apparatus that comprises a list of elements is not necessarily limited to all elements explicitly listed, but may include other elements not expressly listed or inherent to such product or apparatus.
The term "module" refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware or/and software code that is capable of performing the function associated with that element.
In the embodiment of the present application, the display device 200 generally refers to a device having a screen display and a data processing capability. For example, display device 200 includes, but is not limited to, a smart television, a mobile terminal, a computer, a monitor, an advertising screen, a wearable device, a virtual reality device, an augmented reality device, and the like.
Fig. 1 is a schematic diagram of an operation scenario between a display device and a control device according to some embodiments of the present application. As shown in fig. 1, a user may operate the display device 200 through a touch operation, the mobile terminal 300, and the control device 100. For example, the control device 100 may be a remote control, a stylus, a handle, or the like.
The mobile terminal 300 may serve as a control device for performing man-machine interaction between a user and the display device 200. The mobile terminal 300 may also be used as a communication device for establishing a communication connection with the display device 200 for data interaction. In some embodiments, the mobile terminal 300 may install a software application with the display device 200, implement connection communication through a network communication protocol, and achieve the purpose of one-to-one control operation and data communication. The audio/video content displayed on the mobile terminal 300 can also be transmitted to the display device 200, so as to realize the synchronous display function.
As also shown in fig. 1, the display device 200 is also in data communication with the server 400 via a variety of communication means. The display device 200 may be permitted to make communication connections via a Local Area Network (LAN), a Wireless Local Area Network (WLAN), and other networks.
The display device 200 may provide a broadcast receiving tv function, and may additionally provide an intelligent network tv function of a computer supporting function, including, but not limited to, a network tv, an intelligent tv, an Internet Protocol Tv (IPTV), etc.
Fig. 2 is a block diagram of a hardware configuration of the display device 200 of fig. 1 according to some embodiments of the present application.
In some embodiments, the display apparatus 200 may include at least one of a modem 210, a communication device 220, a detector 230, a device interface 240, a controller 250, a display 260, an audio output device 270, a memory, a power supply, a user input interface.
In some embodiments, the detector 230 is used to collect signals of the external environment or interaction with the outside. For example, detector 230 includes a light receiver, a sensor for capturing the intensity of ambient light; either the detector 230 comprises an image collector, such as a camera, which may be used to collect external environmental scenes, user attributes or user interaction gestures, or the detector 230 comprises a sound collector, such as a microphone or the like, for receiving external sounds.
In some embodiments, display 260 includes display functionality for presenting pictures, and a drive component that drives the display of images. The display 260 is used for receiving and displaying image signals output from the controller 250. For example, the display 260 may be used to display video content, image content, and components of menu manipulation interfaces, user manipulation UI interfaces, and the like.
In some embodiments, the communication apparatus 220 is a component for communicating with an external device or server 400 according to various communication protocol types. The display apparatus 200 may be provided with a plurality of communication devices 220 according to the supported communication manner. For example, when the display apparatus 200 supports wireless network communication, the display apparatus 200 may be provided with a communication device 220 including a WiFi function. When the display apparatus 200 supports bluetooth connection communication, the display apparatus 200 needs to be provided with a communication device 220 including a bluetooth function.
The communication means 220 may communicatively connect the display device 200 with an external device or the server 400 by means of a wireless or wired connection. Wherein the wired connection may connect the display device 200 with an external device through a data line, an interface, etc. The wireless connection may then connect the display device 200 with an external device through a wireless signal or a wireless network. The display device 200 may directly establish a connection with an external device, or may indirectly establish a connection through a gateway, a route, a connection device, or the like.
In some embodiments, the controller 250 may include at least one of a central processor, a video processor, an audio processor, a graphic processor, a power supply processor, first to nth interfaces for input/output, and the controller 250 controls the operation of the display device 200 and responds to the user's operation through various software control programs stored on the memory. The controller 250 controls the overall operation of the display apparatus 200.
In some embodiments, the controller 250 and the modem 210 may be located in separate devices, i.e., the modem 210 may also be located in an external device to the main device in which the controller 250 is located, such as an external set-top box or the like.
In some embodiments, a user may input a user command through a graphical user interface (GRAPHICAL USER INTERFACE, GUI) displayed on the display 260, and the user input interface receives the user input command through the Graphical User Interface (GUI).
In some embodiments, audio output device 270 may be a speaker local to display device 200 or an audio output device external to display device 200. For an external audio output device of the display device 200, the display device 200 may also be provided with an external audio output terminal, and the audio output device may be connected to the display device 200 through the external audio output terminal to output sound of the display device 200.
In some embodiments, user input interface 280 may be used to receive instructions from user input.
Fig. 3 is a block diagram of a hardware configuration of the control device in fig. 1 according to some embodiments of the present application. As shown in fig. 3, the control device 100 may include: a controller 110, a communication interface 130, a user input/output interface, a memory, a power supply.
The control device 100 is configured to control the display device 200, and can receive an input operation instruction of a user, and convert the operation instruction into an instruction recognizable and responsive to the display device 200, functioning as an interaction between the user and the display device 200.
In some embodiments, the control device 100 may be a smart device. Such as: the control apparatus 100 may install various applications for controlling the display apparatus 200 according to user's needs.
In some embodiments, as shown in fig. 1, a mobile terminal 300 or other intelligent electronic device may function similarly to the control device 100 after installing an application that manipulates the display device 200.
The controller 110 includes a processor 112 and RAM 113 and ROM 114, a communication interface 130, and a communication bus. The controller 110 is used to control the operation and operation of the device 100, as well as the communication collaboration among the internal components and the external and internal data processing functions.
The communication interface 130 enables communication of control signals and data signals with the display device 200 under the control of the controller 110. The communication interface 130 may include at least one of a WiFi chip 131, a bluetooth module 132, an NFC module 133, and other near field communication modules.
A user input/output interface 140, wherein the input interface includes at least one of a microphone 141, a touch pad 142, a sensor 143, keys 144, and other input interfaces.
In some embodiments, the control device 100 includes at least one of a communication interface 130 and an input-output interface 140. The control device 100 is provided with a communication interface 130 such as: the WiFi, bluetooth, NFC, etc. modules may send the user input instruction to the display device 200 through a WiFi protocol, or a bluetooth protocol, or an NFC protocol code.
A memory 190 for storing various operating programs, data and applications of the drive and control apparatus 100 under the control of the controller. The memory 190 may store various control signal instructions input by a user.
A power supply 180 for providing operating power support for the various elements of the control device 100 under the control of the controller.
To perform user interactions, in some embodiments, display device 200 may be run with an operating system. The operating system is a computer program for managing and controlling hardware resources and software resources in the display device 200. The operating system may control the display device 200 to provide a user interface, for example, the operating system may directly control the display device 200 to provide a user interface, or may run an application to provide a user interface. The operating system also allows a user to interact with the display device 200.
It should be noted that, the operating system may be a native operating system based on a specific operating platform, a third party operating system customized based on a depth of the specific operating platform, or an independent operating system specifically developed for the display device 200.
The operating system may be divided into different modules or tiers depending on the functionality implemented, for example, as shown in FIG. 4, in some embodiments the system is divided into four layers, an application layer (simply "application layer"), an application framework layer (Application Framework) layer (simply "framework layer"), a system library layer, and a kernel layer, from top to bottom, respectively.
In some embodiments, the application layer is used to provide services and interfaces for applications so that the display device 200 can run applications and interact with users based on the applications. At least one application program can be run in the application program layer, and the application programs can be a Window (Window) program, a system setting program or a clock program of an operating system; or may be an application developed by a third party developer. In particular implementations, the application packages in the application layer are not limited to the above examples.
The framework layer provides an application programming interface (Application Programming Interface, API) and programming framework for the application. The application framework layer includes a number of predefined functions. The application framework layer corresponds to a processing center that decides to let the applications in the application layer act. Through the API interface, the application program can access the resources in the system and acquire the services of the system in the execution.
As shown in fig. 4, in the embodiment of the present application, the application framework layer includes a view system (VIEW SYSTEM), a manager (Managers), a Content Provider (Content Provider), and the like, where the view system may design and implement interfaces and interactions of the application, and the view system includes a list (lists), a network (grids), text boxes, buttons (buttons), and the like. The manager includes at least one of the following modules: an activity manager (ACTIVITY MANAGER) is used to interact with all activities running in the system; a Location Manager (Location Manager) is used to provide system services or applications with access to system Location services; a package manager (PACKAGE MANAGER) for retrieving various information about the application packages currently installed on the device; a notification manager (Notification Manager) for controlling the display and clearing of notification messages; a Window Manager (Window Manager) is used to manage icons, windows, toolbars, wallpaper, and desktop components on the user interface.
In some embodiments, the activity manager is used to manage the lifecycle of the individual applications as well as the usual navigation rollback functions, such as controlling the exit, opening, fallback, etc. of the applications. The window manager is used for managing all window programs, such as obtaining the size of a display screen, judging whether a status bar exists or not, locking the screen, intercepting the screen, controlling the change of the display window, for example, reducing the display window to display, dithering display, distorting display and the like.
In some embodiments, the system runtime layer may provide support for the framework layer, and when the framework layer is in use, the operating system may run instruction libraries, such as the C/C++ instruction library, contained in the system runtime layer to implement the functions to be implemented by the framework layer.
In some embodiments, the kernel layer is a functional hierarchy between the hardware and software of the display device 200. The kernel layer can realize the functions of hardware abstraction, multitasking, memory management and the like. For example, as shown in fig. 4, a hardware driver may be configured in the kernel layer, and the driver included in the kernel layer may be at least one of the following drivers: audio drive, display drive, bluetooth drive, camera drive, WIFI drive, USB drive, HDMI drive, sensor drive (e.g., fingerprint sensor, temperature sensor, pressure sensor, etc.), and power supply drive, etc.
It should be noted that the above examples are merely a simple division of functions of an operating system, and do not limit the specific form of the operating system of the display device 200 in the embodiment of the present application, and the number of levels and specific types of levels included in the operating system may be expressed in other forms according to the functions of the display device 200, the type of the operating system, and other factors.
In some application scenarios, it may be possible to upgrade with a periodic or aperiodic operating system for adding new functionality on the display device 200, improving existing functionality, repairing known security vulnerabilities in the display device 200, and so forth. The system upgrade is a process of downloading the latest software version into the built-in memory of the display device 200 and writing the upgrade package into the memory. The latest software version comprises a software program and software data.
In some embodiments, the operating system may have an upgrade detection module built in, which may be connected to the server 400 to query whether an upgrade is available. The server 400 may also flag that a certain system upgrade is "recommended upgrade" or "must upgrade", and the display device 200 receives an upgrade instruction when checking for an upgrade.
In some embodiments, the display device 200 may set an automatic upgrade mode, an active upgrade mode, or an inquiry upgrade mode. The automatic upgrade mode refers to that when the display device 200 receives a system upgrade message, an upgrade package applicable to a complete machine model is automatically downloaded and checked and installed from the server 400 based on OTA, and after the upgrade package is installed, the display device 200 is restarted, so that version update of the complete machine software system is completed, and related functions are realized by running a new version system.
As shown in fig. 5, the active upgrade mode refers to a mode in which a user actively completes an upgrade through the display device 200. The system upgrade is completed through a prompt interface generated in the system setting of the display device 200 actively by the user, where the prompt interface includes operating system version information and an upgrade detection control, where the upgrade detection control is a check update, and is used to select the check update by the control device 100 to initiate the check, and the operating system queries whether the server 400 has a new version system according to a request of the user. If a new version of the system exists, a prompt update interface is generated for the user to select whether to upgrade the operating system.
As shown in fig. 6, the inquiry upgrade mode refers to a mode in which upgrade is completed by inquiring the user. When the display device 200 receives the system upgrade message, a prompt interface is generated, on which the user is asked whether to upgrade the system. The display 260 displays a prompt interface, and the prompt interface may include update information and upgrade inquiry control, where the update information is version information of the operating system and brief upgrade content; the upgrade inquiry control is an immediate update, a later update, and a cancel update control, and the user can select a different upgrade inquiry control displayed in the prompt interface through the control apparatus 100.
It will be appreciated that when the user selects the update inquiry control that is updated later, the display device 200 may further display a prompt interface that is updated later, as shown in fig. 7, where the update prompt interface includes an update time control that is updated after xx hours and is updated on xx month xx days, and when the user selects the update after xx hours, the display device 200 performs an automatic update mode after xx hours.
When the user selects to update on xx month xx day, a prompt interface for inquiring the generation of the upgrading mode is generated again after the date is reached. Before generating the prompt interface, the system version updated by the last prompt and the system version updated by the current inquiry can be compared, if the system version is updated when xx is in month xx, the updated system version is used for updating the operating system, and in the update information in the prompt interface, the version information is also the updated operating version.
The user may also choose to cancel the update, and when the display device 200 responds to the user selecting to cancel the update upgrade inquiry control, the display 260 is controlled to close the prompt interface, and the prompt interface is not popped up again before the next system upgrade, and the system upgrade task is not actively performed.
Through the OTA upgrade, the user can obtain a new version of the operating system without affecting the normal use of the display device 200. In some embodiments, the display device 200 may also complete the system upgrade through a variety of update mechanisms, including, for example, for the display device 200 of Andr oid systems, an A/B (seamless) update mechanism and a non-A/B update mechanism.
The A/B updating mechanism comprises virtual AB (virtual AB) updating and real AB updating, wherein the real AB updating refers to dividing equipment into two independent storage spaces, namely an A partition and a B partition by a physical partition mode. Each partition contains a complete system image and application, a new system version may be installed on one partition, and the user may continue to use the device on another partition, thus enabling seamless updates. The virtual AB update is not realized through a physical partition, but is divided into two virtual partitions through a software technology, so that the system is allowed to download and install a new system image in the background, and is automatically switched to the new partition after the installation is completed, and the virtual AB can also realize seamless update.
When a system is updated by using a virtual AB update, only one mirror entity is arranged in two virtual partitions, namely, only one partition of an A partition (A slot) and a B partition (B slot) in the virtual AB contains actual mirror data, and the other partition is empty or in a standby state.
When performing an OTA upgrade, a partition is created by borrowing userdata partition (user data partition) as an image partition (new slot), which is a temporary storage area for storing a new system image to be installed. Writing the upgrade data into userdata partition, when the display device 200 is restarted, starting from the mirror partition of userdata partition, and merging the mirror partition in userdata partition into the dynamic partition after successful starting, thereby releasing the occupied us erdata partition.
Dynamic partitions are areas of the operating system that store system files and other data, and new system images are formally integrated into the host system of the device by merging the image partitions into the dynamic partitions.
For example, partition A contains mirrored data and partition B is empty. In response to an upgrade instruction of the operating system, an upgrade request is sent to the server 400, a target upgrade package is downloaded from the server 400, the target upgrade package is stored in the B partition, and upgrade data, i.e., a new system image, is written into the B partition.
The process of downloading the target upgrade package can be carried out in the background, the partition A is an active partition, a user can continue to use the equipment through the system image of the partition A, after the target upgrade package is downloaded, the system can automatically install a new system image, the installation process also does not interfere the normal use of the equipment by the user, the equipment is restarted after the installation is completed, the equipment is restarted through the new system image of the partition B, and if the restarting is successful, the new version system upgrade is successful. If the equipment cannot be started through the new version of the partition B, the equipment can be automatically rolled back to the partition A, and the equipment is started through the system image of the partition A, and the system version used by the equipment is an old version (source version) system.
After downloading the target upgrade package, the target upgrade package is stored in the storage device of the display device 200 to install the new version system for the display device 200. The EMMC (Embedded Multi MEDIA CARD) storage device is a storage device integrating a controller and a memory chip, and uses NAND FLASH (flash memory) technology, and NAND FLASH is a nonvolatile memory based on NAND technology, and the EMMC storage device has a smaller storage capacity, and can be used as a built-in memory of the display device 200, and can implement fast read and write operations due to the effect of the built-in controller.
EMMC storage devices are suitable for applications in the mobile device, embedded system and consumer electronics fields, for example EM MC storage devices hold programs and operating system data for the software system of display device 200. Because the EMMC storage device is a hardware device, bad blocks or storage units of the EMMC storage device are damaged under the influences of the use time, the electromagnetic environment, the temperature and the self yield of the EMMC storage device, wherein the bad blocks are storage units which cannot read and write data or store data normally in the storage device, and the data stored in the storage device are changed due to the bad blocks.
When performing the OTA upgrade, the old version needs to be saved in the server 400 of the manufacturer of the display device 200 when leaving the factory, and then burned into the display device 200, after the display device 200 operates for a period of time, the manufacturer of the display device 200 issues a new version, and based on the old version saved in the server 400, after the target upgrade package is made, deployment is performed, and upgrade is completed.
After the old version is burned into the display device 200, the upgrade partition storing the upgrade data in the EMMC storage device cannot be changed, i.e., the reduction is unchanged, during the operation of the device, wherein the reduction is a reference value or checksum for verifying the integrity of the firmware during the firmware upgrade. If the reduction changes, it may mean that the firmware data has been tampered with or corrupted.
If there is a bad block in the EMMC storage resulting in a reduced number change, the data in the upgrade partition is corrupted and the data in the upgrade partition is not the original, unmodified source version. When an upgrade is attempted, the system uses the reduction to verify the integrity of the upgrade data. If the reduction does not match, the system detects that the data has been corrupted, thus causing the upgrade to fail.
In some embodiments, the display device 200 skips writing bad blocks to a new partition image after downloading the target upgrade package from the server 400. If the number of bad blocks is large, frequent skipping of bad blocks may increase the pressure of other memory blocks, thereby adding new bad blocks. If the number of bad blocks increases, the reliability of the system may be severely impacted, resulting in more frequent failures and data loss.
The system upgrade is affected by the bad blocks of the EMMC storage device, and the system upgrade requires downloading the latest software version to the EMMC storage device and writing the upgrade package into the EMMC storage device, so that the remaining storage space of the EMMC storage device may also affect the system upgrade. For example, the remaining storage space is insufficient, and the upgrade package cannot be downloaded into the EMMC storage device.
If the remaining storage space of the EMMC storage device is insufficient, the upgrade package can be stored according to different storage modes so as to finish system upgrade. The different storage modes comprise a storage mode for replacing all or part of old version system data, and an upgrade package is stored through other memories, wherein the other memories are memories except for the memory occupied by the current version system. However, this method may cause data loss, repeated storage, etc. in the process of storing or replacing respectively, which affects the upgrade of the system.
Some embodiments of the present application provide a display apparatus 200, where the display apparatus 200 performs a system upgrade method to complete a system upgrade for memories of different states through different target upgrade packages. The display apparatus 200 includes a display 260, a communication device 220, a memory, and a controller 250. Wherein the display 260 is configured to display a user interface. The communication device 220 is configured to establish a communication connection with the server 400.
The memory in this embodiment is an EMMC storage device, and the memory includes a first partition, a second partition, and a third partition, where the third partition is a mirror partition of the second partition, the first partition is used to store operating system information, that is, an old version system, the second partition is used to store user data and an upgrade package, the upgrade package is an upgrade package downloaded from the server 400, and the third partition is used to store an upgrade package transferred from the second partition.
The second partition is userdata partitions, the first partition is other storage space except the second partition and the third partition, and the third partition is a mirror partition of userdata partitions. In the virtual AB update mechanism, the second partition stores system image data, and the third partition is empty or in standby. In this embodiment, the display apparatus 200 stores the target upgrade package in the second partition and writes the target upgrade package in the third partition after downloading the target upgrade package from the server 400.
As shown in fig. 8, the controller 250 is configured to execute program steps corresponding to the system upgrade method, including the following:
S100: and responding to the upgrade instruction of the operating system, and starting an upgrade process.
The display device 200 may receive a variety of different control instructions during operation, wherein some of the control instructions are used to control the display device 200 to perform upgrades to the operating system, and these control instructions are referred to as upgrade instructions.
In some embodiments, the upgrade instructions may be entered by a user. The user may enter the upgrade instructions through a user interface or command line interface of the operating system. For example: the user clicks an upgrade detection control to check for updates or enters a corresponding upgrade command at the display 260.
In some embodiments, the upgrade instructions may be automatically generated by the display device 200. For example: the display device 200 incorporates automatic update mechanisms that periodically detect updates in the background and automatically generate upgrade instructions when there are available updates.
In some embodiments, the upgrade instructions may also be generated by a third party application, a remote management system, a remote control device, or a cloud service provider. For example: the security software or system optimization tool may suggest or automatically trigger upgrades to the operating system.
After receiving the upgrade instruction, the display device 200 may start an upgrade process in response to the upgrade instruction, where the upgrade process may be an OTA upgrade process. The upgrade process includes a state detection process for detecting state information of the memory, i.e., the number of bad blocks of the first partition and the remaining capacity of the second partition.
The state detection process may include a bad block detection tool or algorithm for reading each memory block in the first partition and verifying that its contents can be correctly read and written. After the state detection process is started, the number of bad blocks of the first partition can be detected based on the partition dimension, a number detection result can be obtained, and the number detection result can be stored into the userdata partition. For example, the number detection result is saved in a check_result.xml file of userdata partitions.
The state detection process may further include a disk scan tool, configured to detect a remaining capacity of the second partition, that is, a remaining capacity of the userdata partition, and obtain a capacity detection result, and store the capacity detection result to the userdata partition. For example, the capacity detection result is saved in a domain_space.xml file of userdata partitions. After the number detection result and the capacity detection result are obtained, the display device 200 is in a power-on state, and the upgrade process is started.
S200: and generating an upgrade request according to the number of bad blocks of the first partition and the residual capacity of the second partition.
The upgrade request comprises a first request, a second request, a third request and a fourth request, wherein the first request is generated when a bad block does not exist in a first partition, the target upgrade package capacity is smaller than the residual capacity of a second partition, the second request is generated when the bad block does not exist in the first partition, the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the bad block exists in the first partition, the target upgrade package capacity is smaller than the residual capacity of the second partition, the fourth request is generated when the bad block exists in the first partition, and the target upgrade package capacity is larger than the residual capacity of the second partition.
In some embodiments, to obtain the quantity detection result and the capacity detection result, a flag value of the status flag bit may be set. When the number detection result and the capacity detection result are not acquired, the flag value of the status flag bit is set to a first value. And adding a wake-up lock mark for the upgrade process in response to a detection instruction of the state detection process, storing a detection result of the state detection process into the second partition, and setting a mark value of a state mark bit to be a second value in response to a storage instruction of the state detection process.
A wake lock (wake_lock) flag is used to set the current operation mode of the display apparatus 200 to a pseudo standby (active standby) mode. For example, when the user uses the display apparatus 200, the flag value of the status flag bit is 0, the display apparatus 200 starts the status detection process in the pseudo standby mode, that is, when the user does not use the display apparatus 200, the detected number detection results and capacity detection results are saved to the check_result.
In the pseudo standby mode, the display device 200 is in a standby state, but remains in an active or active state to some extent, so as to quickly respond or perform tasks. For example: when the current operation mode of the display apparatus 200 is the dummy standby mode, the display apparatus 200 is in the standby state, but a state detection process may be started to detect the state of the memory.
In some embodiments, as shown in fig. 9, the display device 200 may determine whether to generate the upgrade request according to the flag value of the status flag bit while waiting for the user to turn on again. That is, the display apparatus 200 may read the flag value of the status flag bit in response to the power-on instruction input by the user (S901). If the flag value is the first value, the state detection process is restarted (S902), and if the flag value is the second value, an upgrade request is generated according to the number of bad blocks of the first partition and the remaining capacity of the second partition (S903).
For example, when the user boots up again, if the flag value of the status flag bit is 1, different upgrade requests are generated according to the number of bad blocks of the first partition and the remaining capacity of the second partition.
S300: an upgrade request is sent to the server to download the target upgrade package from the server.
As shown in fig. 10, in some embodiments, after the detection result of the state detection process is obtained, the target upgrade package may be downloaded from the server 400 based on different upgrade requests, and then the target upgrade package capacity is detected. The detection result comprises the number of bad blocks and the residual capacity, and the target upgrade package capacity is the storage space occupied by the target upgrade package.
For example, the upgrade process will parse the contents of the check_result.xml file and the remain_space.xml file to obtain different detection results. For different detection results, different target upgrade packages can be downloaded according to different upgrade requests. In some embodiments, if there is no bad block in the first partition and the target upgrade package capacity is less than the remaining capacity of the second partition, a first request is sent to the server 400 to download the first incremental upgrade package from the server 400.
The first partition has no bad blocks, the number reduction is unchanged, the upgrade can be normally performed, the reason of upgrade failure cannot be caused, the capacity of the target upgrade package is smaller than the residual capacity of the second partition for storing the target upgrade package, the second partition can normally store the target upgrade package, and the residual capacity of the third partition is the same as the residual capacity of the second partition because the third partition is an image partition of the second partition, and the target upgrade package can also be normally written into the third partition, so that the reason of upgrade failure cannot be caused.
And upgrading the operating system by using a first increment upgrading packet, wherein the first increment upgrading packet comprises a difference data packet and error correction data of the old version system and the new version system. Because of the error correction data, the installation speed of the first increment upgrade package can be increased without calculation on the display device 200 when the upgrade package is installed, the OTA upgrade is successful once, and the upgrade efficiency and the success rate are improved.
The delta data packet is the delta data between the new version and the old version, and is made at the OTA server 400 of the manufacturer of the display device 200. The OTA server of the manufacturer of the display device 200 is used for managing the server 400 of the firmware version and upgrade of the display device 200, and can push new firmware to the display device 200 for updating through the wireless network, and the OTA server can provide functions of firmware storage, version management, firmware download and device upgrade.
The error correction data may include different types of error correction data to improve the reliability and accuracy of the data communication. For example: FEC (Forward Error Correction) forward error correction data, CRC (Cyclic Redundancy Check ) data, parity data, and the like.
The FEC forward error correction data performs coding processing on the transmitted data, adds redundancy codes with characteristics of the signal itself, and decodes the received signal according to a corresponding algorithm at the receiving end, thereby finding and correcting error codes generated in the transmission process. CRC is a data integrity checking method, and a receiving end can verify whether data have errors in the transmission process by adding a CRC check code at the end of a data packet. If an error occurs, the receiving end may request retransmission of the data packet. Parity is an error detection method that adds an extra bit to the data to make the number of 1 s in the data either odd (odd parity) or even (even parity). The receiving end detects whether the data is changed during transmission by checking bits.
For the FEC forward error correction data, when the difference data packet is manufactured, the calculation of the FEC forward error correction data is started, and the calculated FEC data is added into the difference data packet to form a first incremental upgrade packet, so that the FEC data does not need to be manufactured again when the display device 200 performs OTA upgrade, and the installation speed can be increased.
For CRC data, a CRC generator polynomial, such as CRC-8, CRC-16, CRC-32, etc., representing the length of the CRC check code and the manner of generation, is predefined at the time of making the difference data packet. And calculating a CRC (cyclic redundancy check) code, and attaching the calculated CRC code to the tail end of the differential upgrading packet to form a first increment upgrading packet. The CRC has higher error detection capability, and the success rate can be improved.
For parity data, when the difference data packet is manufactured, a check mode is determined, and an odd check or an even check is used. And calculating check bits, traversing all data bits in the difference value upgrade package, and attaching the check bits at the tail of the upgrade package to serve as the last bit to form a first increment upgrade package. The parity check data has low calculation complexity, and the check efficiency can be improved.
In some embodiments, if there is no bad block in the first partition and the target upgrade package capacity is greater than the remaining capacity of the second partition, a second request is sent to the server 400 to download the compressed upgrade package from the server 400 or to download the difference data package from the server 400.
The first partition has no bad blocks, the number reduction is unchanged, and the first partition can be normally upgraded, and the first partition can not cause upgrade failure. However, the capacity of the target upgrade package is greater than the remaining capacity of the second partition, that is, the target upgrade package cannot be stored in the second partition, and similarly, cannot be written into the third partition, which may be a cause of upgrade failure.
The compressed upgrade package is generated in the server 400 to improve the efficiency of system upgrade. In some embodiments, when the server 400 removes the error correction data of the first delta upgrade package in response to the second request, compression is performed to obtain a compressed upgrade package, and the compressed upgrade package is transmitted to the display device 200. It will be appreciated that, in addition to receiving the second request, the server 400 needs to obtain the detection result of the state detection process, and perform compression according to the remaining capacity of the second partition.
When the target upgrade package downloaded from the server 400 is a compressed upgrade package, storing the compressed upgrade package to the second partition; the operating system of the display device 200 is upgraded based on the compressed upgrade package to update the operating system to the new version system.
After the error correction data is removed, a difference data packet can be obtained, and then the difference data packet is compressed to generate a compressed upgrade packet. The difference data packet can be compressed by using a lossless compression algorithm, the lossless compression algorithm can reduce the data volume but can not lose information, and the data can be accurately restored.
For compression of the compression upgrade package, a threshold may be set in addition to performing compression according to the remaining capacity of the second partition, and after the remaining capacity is lower than the threshold, a compression algorithm is triggered.
After storing the compressed upgrade package into the second partition, the compressed upgrade package needs to be decompressed, and the compressed upgrade package contains a large amount of files and data, which may occupy a large amount of memory, and may take a long time for decompression when the capacity of the compressed upgrade package is large. The compressed upgrade package may be decompressed by a gradual decompression method and then written gradually into the third partition, in some embodiments, the compressed upgrade package is decomposed into a plurality of second delta compressed packages; the second delta compressed package is decompressed and stored gradually in the third partition, and the operating system of the display device 200 is updated based on the second delta compressed package to update the operating system to the new version system.
Illustratively, the compression upgrade package is partitioned into a plurality of smaller second delta compression packages, which may be decompressed and written to the third partition in a sequence. Excessive storage space and memory are not occupied in the decompression and installation processes, and the memory is released in stages, so that the memory occupation is reduced. After decompression and writing of each second delta compressed packet is completed, checksum validation may be performed to improve data integrity and correctness. Through gradual decompression, decompression operation can be dispersed to a plurality of time periods, so that single decompression time is reduced, and user experience is improved. The gradual decompression can also reduce the system pressure, improve the system stability and reduce the risk of problems in the decompression process.
Error handling and rollback mechanisms may also be added during decompression and installation. If an error occurs during decompression or installation of a certain part, the device can roll back to the previous state, and data damage or incapability of normally starting the device in the upgrading process is avoided.
In some embodiments, if there is a bad block in the first partition and the target upgrade package capacity is less than the remaining capacity of the second partition, a third request is sent to the server 400, and a field of needdy_reply_block=1 is added to upload to the server 400, the server 400 issues a download address of the full-size brush package, and the display device 200 downloads the full-size brush package based on the download address.
The first partition has bad blocks, the number reduction is changed, the upgrade cannot be normally performed, and the upgrade failure possibly occurs, but the capacity of the target upgrade package is smaller than the residual capacity of the second partition storing the target upgrade package, the second partition can normally store the target upgrade package, and the target upgrade package can be normally written into the third partition, so that the upgrade failure cannot occur.
After the display device 200 downloads the full-volume brusher package, the full-volume brusher package is stored in the second partition, after the verification is passed, a shutdown flag bit need_do_specific_upgrade=1 can be set, and according to the shutdown flag bit, a first prompt interface can be generated, as shown in fig. 11, when a user clicks on the first prompt interface to confirm, the display device 200 restarts and then enters a Bootloader (bootstrap program), and the second partition is mounted in the Bootloader to perform full-volume coverage operation, so that the bad block of the first partition is repaired, and meanwhile, the user data of the second partition is reserved.
When the full-volume coverage operation is performed, because the covered partition is a first partition, the first partition stores an old version system, the full-volume brushing machine packet can directly cover the old version system, and when the full-volume coverage operation is completed, the system stored in the first partition is a new version system. When the display device 200 is restarted, the running system is also a new version system.
The full-volume brushing package can clear the data of the first partition, and full-volume coverage operation is carried out on the first partition according to the carried data. The full-volume brush package includes, but is not limited to, a firmware file containing all necessary software components such as an operating system, application programs, drivers, etc. required for the first partition, formatting instructions, upgrade scripts, and verification and signature information. The formatting instruction is used for clearing all data on the first partition in the upgrading process and restoring the storage space to an initial state. The upgrade script is used to guide the execution of the upgrade process. The verification information is used for verifying whether the upgrade package is damaged or modified in the transmission process, and the signature information is used for verifying whether the source of the upgrade package is credible, so that the invasion of malicious software is prevented.
Because the first partition has bad blocks, the first partition is erased while the full-scale overlay operation is performed, including areas marked as bad blocks. The bad blocks can be cleared and available space can be redistributed through the full coverage operation, so that the purpose of repairing the bad blocks is achieved. It should be noted that the full overlay operation clears the first partition of data and a backup of data may be performed prior to execution.
Whether bad blocks affect storage depends on the number and distribution of bad blocks. If the number of bad blocks in the first partition is small and the bad blocks are primarily scattered in the second partition, then the impact of the bad blocks on storage performance is limited. The storage device may compensate for the effects of these bad blocks by reallocating data or employing other policies. For example, the storage device may reserve a portion of the spare sector or block to replace the bad block that is present. When a bad block is detected, the bad block may be marked as unusable and a new sector may be allocated from among the spare sectors for replacement.
However, when the number of bad blocks increases to a certain number or is distributed over the first partition, it may have a significant impact on the performance of the storage device. In some embodiments, as shown in fig. 12, the total number of blocks of the first partition may be obtained (S1201), and the number of bad blocks of the first partition may be obtained (S1202), and then a bad block proportion is calculated (S1203), where the bad block proportion is a ratio of the number of bad blocks to the total number of blocks; if the bad block proportion is greater than or equal to the proportion threshold, the control display 260 displays a first prompt interface; and responding to a restarting upgrading instruction input based on the first prompting interface, loading an upgrading guide program, controlling the upgrading guide program to mount the second partition, repairing bad blocks of the first partition by using a full-volume brush package, and upgrading the new version system (S1204). And the bad blocks can be repaired by calculating the bad block proportion of the first partition, so that the first partition can read and write normally. If the bad block proportion is less than the proportion threshold, the bad block of the first partition is not repaired (S1205).
In some embodiments, if there is a bad block in the first partition and the target upgrade package capacity is greater than the remaining capacity of the second partition, a fourth request is sent to the server 400 to download the full volume brush package from the server 400.
The first partition has bad blocks, the number reduction is changed, the upgrade cannot be normally performed, the upgrade failure may be caused, the capacity of the target upgrade package is larger than the residual capacity of the second partition, that is, the target upgrade package cannot be stored in the second partition, and similarly, cannot be written into the third partition, and the upgrade failure may be caused.
For both the third request and the fourth request, although the full-size bundle is downloaded from the server 400, the procedure of upgrade execution is different before the full-size coverage operation is performed using the full-size bundle.
In some embodiments, when a bad block exists in the first partition and the target upgrade package capacity is greater than the remaining capacity of the second partition, the display device 200 may not be started, so the display device 200 may guide the user to clean data, that is, release the storage space of the second partition according to the file generation sequence and the application frequency, and then execute the full coverage operation by using the full coverage package, so as to ensure the normal use of the user. For example, as shown in fig. 13, a second prompt interface is generated, the second prompt interface suggests the user to clean the storage space, and after the user clicks to confirm, the following cleaning steps are performed: the self-install application manager is started. The self-installation application manager is used for generating a use frequency table of the self-installation application according to the use frequency of the self-installation application (the third party application which can be uninstalled) of the user. The usage frequency table may contain all applications in the display device 200 except the system application, i.e., the user self-installs the applications, and ranks the applications with the lowest usage frequency in the first order by the usage frequency. The usage frequency table may also contain all applications in the display device 200 and be ordered by usage frequency, with the lowest usage frequency application being ranked first.
It will be appreciated that when the usage frequency table contains all applications, it may occur that some of the system applications cannot be offloaded. For example, the usage frequency table includes application 1, application 2, and application 3, where application 1 is a system application that cannot be uninstalled, application 2 and application 3 are third party applications that can be uninstalled, and when the user clicks application 1, the display device 200 may display a prompt interface that cannot be uninstalled to prompt the user that the application is a system application that cannot be uninstalled. In order to facilitate the use of the user, the application marked with a certain color is an uninstallable application, so that the user experience is improved.
The control display 260 displays an uninstall application interface according to the usage frequency table. As shown in fig. 14, the uninstalled application interface includes a usage frequency table, application 1 is the application with the lowest usage frequency, application 2 is the application with the lowest usage frequency except for application 1, and application 3 is the application with the lowest usage frequency except for application 1 and application 2. When the user is unloading, the state detection process can be in a real-time detection state, the residual capacity of the second partition is detected, and when the residual capacity of the second partition is larger than the target upgrade package capacity, the user can be prompted through a prompt interface without continuing unloading.
And responding to an uninstalling instruction input based on an uninstalling application interface, and uninstalling the redundant application to release the storage space of the second partition. After unloading one or more applications, the user marks the redundant applications by returning to the main interface of the display 260 or on a prompt interface, wherein the redundant applications are applications with the use frequency less than the frequency threshold value recorded in the use frequency table. When the user returns to the main interface of the display 260, or after unloading the redundant application, the state detection process is restarted, if the residual capacity of the second partition is greater than the target upgrade package capacity, the application does not need to be continuously unloaded, and if the residual capacity of the second partition is less than or equal to the target upgrade package capacity, the self-installation application manager is restarted.
In some embodiments, the display device 200 may also free up storage space of the second partition by cleaning up files of the second partition. For example, the temporary file and the cached file of the second partition are cleaned, and the file generation schedule can be obtained through the generation time of the file, and the file with the latest generation time is the first bit of the file generation schedule. The user may delete the file according to the file generation schedule to free up storage space for the second partition.
If the storage space of the second partition is greater than the target upgrade package capacity, a fourth request is sent to the server 400 to download the full-volume upgrade package from the server 400, repair the bad blocks of the first partition by using the full-volume upgrade package, and execute the full-volume overlay operation to upgrade the new version system. By releasing the storage space of the second partition, the display apparatus 200 can be made to perform a system update, and by repairing the bad blocks and releasing the storage space, the display apparatus 200 can be made to be used normally.
S400: and upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system and starting the new version system.
For different target upgrade packages, the partition that initiates the new version is different. And if the target upgrade package is a first increment upgrade package, starting the new version system through the third partition, and if the target upgrade package is a full-volume upgrade package, starting the new version system through the first partition so as to finish system upgrade.
And after the new version system is started through the third partition, merging the third partition and the dynamic partition, and returning the occupation of the second partition to the user for storing user data.
Based on the display device 200, some embodiments of the present application further provide a server 400, including: the device comprises a communication module, a storage module and a processor; wherein the communication module is configured to establish a communication connection with the display device, the storage module is configured to store an operating system upgrade package, and the processor is configured to perform the steps of:
receiving an upgrade request sent by the display device, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when a bad block does not exist in a first partition, the target upgrade package capacity is smaller than the residual capacity of a second partition, the second request is generated when the bad block does not exist in the first partition, the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the bad block exists in the first partition, the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the bad block exists in the first partition, and the target upgrade package capacity is larger than the residual capacity of the second partition;
and responding to the upgrade request, and extracting a target upgrade package from the storage module.
Based on the display device 200 provided in the above embodiment, some embodiments of the present application further provide a system upgrade method, including:
responding to an upgrade instruction of an operating system, and starting an upgrade process, wherein the upgrade process comprises a state detection process, and the state detection process is used for detecting the number of bad blocks of a first partition and the residual capacity of a second partition;
Generating an upgrade request according to the number of bad blocks of the first partition and the residual capacity of the second partition, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when the first partition has no bad block and the target upgrade package capacity is smaller than the residual capacity of the second partition, the second request is generated when the first partition has no bad block and the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the first partition has bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the first partition has bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition;
sending an upgrade request to a server to download a target upgrade package from the server;
and upgrading the operating system of the display device based on the target upgrading package so as to update the operating system to the new version system.
Based on the server 400 provided in the above embodiment, some embodiments of the present application further provide a system upgrade method, where the server includes a storage module, a communication module, and a processor. The method comprises the following steps:
receiving an upgrade request sent by the display device, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when a bad block does not exist in a first partition, the target upgrade package capacity is smaller than the residual capacity of a second partition, the second request is generated when the bad block does not exist in the first partition, the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the bad block exists in the first partition, the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the bad block exists in the first partition, and the target upgrade package capacity is larger than the residual capacity of the second partition;
and responding to the upgrade request, and extracting a target upgrade package from the storage module.
As can be seen from the above technical solutions, some embodiments of the present application provide a display device, a server, and a system upgrade method, where the method may start an upgrade process in response to an upgrade instruction of an operating system, where the upgrade process includes a state detection process, where the state detection process is used to detect a number of bad blocks of a first partition and a remaining capacity of a second partition. And generating an upgrade request through the number of bad blocks of the first partition and the residual capacity of the second partition. Then sending an upgrade request to the server so as to download a target upgrade package from the server; and upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system and starting the new version system. According to the method, different upgrading requests can be generated based on the number of bad blocks of the first partition and the residual capacity of the second partition, system upgrading is completed through different target upgrading packages, and the success rate of system upgrading is improved.
The same and similar parts of the embodiments in this specification are referred to each other, and are not described herein.
It will be apparent to those skilled in the art that the techniques of embodiments of the present invention may be implemented in software plus a necessary general purpose hardware platform. Based on such understanding, the technical solutions in the embodiments of the present invention may be embodied essentially or in parts contributing to the prior art in the form of a software product, which may be stored in a storage medium, such as a ROM/RAM, a magnetic disk, an optical disk, etc., including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method of the embodiments or some parts of the embodiments of the present invention.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some or all of the technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the application.
The foregoing description, for purposes of explanation, has been presented in conjunction with specific embodiments. The illustrative discussions above are not intended to be exhaustive or to limit the embodiments to the precise forms disclosed above. Many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles and the practical application, to thereby enable others skilled in the art to best utilize the embodiments and various embodiments with various modifications as are suited to the particular use contemplated.

Claims (11)

1. A display device, characterized by comprising:
a display configured to display a user interface;
A communication device configured to establish a communication connection with a server;
The memory comprises a first partition, a second partition and a third partition, wherein the third partition is a mirror partition of the second partition, the first partition is used for storing operating system information, the second partition is used for storing user data and an upgrade package, and the third partition is used for storing the upgrade package transferred from the second partition;
A controller configured to:
responding to an upgrade instruction of an operating system, and starting an upgrade process, wherein the upgrade process comprises a state detection process, and the state detection process is used for detecting the number of bad blocks of a first partition and the residual capacity of a second partition;
Generating an upgrade request according to the number of bad blocks of the first partition and the residual capacity of the second partition, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when the first partition has no bad block and the target upgrade package capacity is smaller than the residual capacity of the second partition, the second request is generated when the first partition has no bad block and the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the first partition has bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the first partition has bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition;
Sending an upgrade request to the server to download a target upgrade package from the server;
And upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system and starting the new version system.
2. The display device of claim 1, wherein the controller executing generates an upgrade request based on the number of bad blocks of the first partition and a remaining capacity of a second partition is further configured to:
setting a flag value of a status flag bit to a first value;
responding to a detection instruction of the state detection process, adding a wake-up lock mark for the upgrading process, wherein the wake-up lock mark is used for setting the current running mode of the display equipment to be a false standby mode;
storing the detection result of the state detection process to a second partition;
and setting a flag value of a state flag bit to a second value in response to a store instruction of the state detection process.
3. The display device of claim 2, wherein the controller executing generates an upgrade request based on the number of bad blocks of the first partition and the remaining capacity of the second partition is further configured to:
responding to a starting instruction input by a user, and reading a marking value of the state marking bit;
And if the marking value is a second value, generating an upgrading request according to the number of bad blocks of the first partition and the residual capacity of the second partition.
4. The display device of claim 1, wherein the controller performs sending an upgrade request to the server to download a target upgrade package from the server, further configured to:
obtaining a detection result of a state detection process, wherein the detection result comprises the number of bad blocks and the residual capacity;
detecting target upgrade package capacity, wherein the target upgrade package capacity is a storage space occupied by a target upgrade package;
If the first partition does not have bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, a first request is sent to the server to download a first increment upgrade package from the server, wherein the first increment upgrade package comprises a difference data package and error correction data of an operating system and a new version system which are running;
If the first partition does not have bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition, sending a second request to the server to download a compressed upgrade package from the server, wherein the compressed upgrade package is an upgrade package obtained by compressing a difference data package;
If the first partition has bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, a third request is sent to the server so as to download the full-volume upgrade package from the server;
and if the first partition has bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition, sending a fourth request to the server so as to download the full-volume brush package from the server.
5. The display device of claim 4, wherein if there is no bad block in the first partition and the target upgrade package capacity is greater than the remaining capacity of the second partition, the controller is further configured to:
storing the compressed upgrade package to a second partition;
Updating the operating system of the display equipment based on the compressed upgrade package to update the operating system to a new version system;
and starting the new version system through the third partition.
6. The display device of claim 5, wherein if there is no bad block in the first partition and the target upgrade package capacity is greater than the remaining capacity of the second partition, the controller is further configured to:
Decomposing the compression upgrade package into a plurality of second delta compression packages;
gradually decompressing and storing the second incremental compression packet in the third partition, and updating the operating system of the display device based on the second incremental compression packet to update the operating system to a new version system;
and starting the new version system through the third partition.
7. The display device of claim 4, wherein if there is a bad block in the first partition and the target upgrade package capacity is less than the remaining capacity of the second partition, the controller is further configured to:
Storing the full amount brushing machine package to a second partition;
setting a shutdown marker bit, loading an upgrade guide program in response to a restarting upgrade instruction input by a user on a prompt interface on a display, and controlling the upgrade guide program to mount a second partition;
executing full coverage operation on the first partition based on the full coverage package of the second partition so as to repair bad blocks of the first partition, and updating an operating system to a new version system;
and starting the new version system through the first partition.
8. The display device of claim 7, wherein if there is a bad block in the first partition and the target upgrade package capacity is less than the remaining capacity of the second partition, the controller is further configured to:
obtaining the number of bad blocks of the first partition and the total number of blocks of the first partition;
calculating bad block proportion, wherein the bad block proportion is the ratio of the number of the bad blocks to the total number of the blocks;
if the bad block proportion is greater than or equal to a proportion threshold value, controlling the display to display a first prompt interface;
And loading an upgrade bootstrap program in response to a restarting upgrade instruction input based on the first prompt interface, and controlling the upgrade bootstrap program to mount a second partition.
9. The display device of claim 4, wherein if there is a bad block in the first partition and the target upgrade package capacity is greater than the remaining capacity of the second partition, the controller is further configured to:
Controlling the display to display a second prompt interface;
Responding to a cleaning instruction input based on the second prompt interface, and starting a self-installation application manager, wherein the self-installation application manager is used for generating a use frequency table of the self-installation application according to the use frequency of the self-installation application of a user;
controlling the display to display an unloading application interface according to the frequency of use table;
and responding to an unloading instruction input based on the unloading application interface, unloading redundant application to release the storage space of the second partition, wherein the redundant application is an application with the use frequency smaller than a frequency threshold value recorded in the use frequency table.
10. A server, comprising:
A communication module configured to establish a communication connection with a display device;
The storage module is configured to store an operating system upgrade package;
A processor configured to:
receiving an upgrade request sent by the display device, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when a bad block does not exist in a first partition, the target upgrade package capacity is smaller than the residual capacity of a second partition, the second request is generated when the bad block does not exist in the first partition, the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the bad block exists in the first partition, the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the bad block exists in the first partition, and the target upgrade package capacity is larger than the residual capacity of the second partition;
and responding to the upgrade request, and extracting a target upgrade package from the storage module.
11. A system upgrade method applied to the display device of any one of claims 1-9, the method comprising:
responding to an upgrade instruction of an operating system, and starting an upgrade process, wherein the upgrade process comprises a state detection process, and the state detection process is used for detecting the number of bad blocks of a first partition and the residual capacity of a second partition;
Generating an upgrade request according to the number of bad blocks of the first partition and the residual capacity of the second partition, wherein the upgrade request comprises a first request, a second request, a third request and a fourth request, the first request is generated when the first partition has no bad block and the target upgrade package capacity is smaller than the residual capacity of the second partition, the second request is generated when the first partition has no bad block and the target upgrade package capacity is larger than the residual capacity of the second partition, the third request is generated when the first partition has bad blocks and the target upgrade package capacity is smaller than the residual capacity of the second partition, and the fourth request is generated when the first partition has bad blocks and the target upgrade package capacity is larger than the residual capacity of the second partition;
sending an upgrade request to a server to download a target upgrade package from the server;
and upgrading the operating system of the display equipment based on the target upgrading packet so as to update the operating system to a new version system, and starting the new version system.
CN202410486711.8A 2024-04-22 2024-04-22 Display device, server and system upgrading method Pending CN118295683A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410486711.8A CN118295683A (en) 2024-04-22 2024-04-22 Display device, server and system upgrading method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410486711.8A CN118295683A (en) 2024-04-22 2024-04-22 Display device, server and system upgrading method

Publications (1)

Publication Number Publication Date
CN118295683A true CN118295683A (en) 2024-07-05

Family

ID=91676192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410486711.8A Pending CN118295683A (en) 2024-04-22 2024-04-22 Display device, server and system upgrading method

Country Status (1)

Country Link
CN (1) CN118295683A (en)

Similar Documents

Publication Publication Date Title
KR101143112B1 (en) Applying custom software image updates to non-volatile storage in a failsafe manner
KR100880783B1 (en) Tri-phase boot process in electronic devices
CN107179909A (en) Method for upgrading software, device and computer-readable recording medium
US8719810B2 (en) Program upgrade system and method for over the air-capable mobile terminal
CN101377744B (en) Method and apparatus for recovering terminal equipment software upgrade
US7698698B2 (en) Method for over-the-air firmware update of NAND flash memory based mobile devices
US8539471B2 (en) Updating firmware of an electronic device
US8683457B1 (en) Updating firmware of an electronic device by storing a version identifier in a separate header
US8650439B2 (en) Apparatus and method for fault tolerant FOTA update
US20110004871A1 (en) Embedded electronic device and firmware updating method thereof
CN108509215B (en) System software replacing method and device, terminal equipment and storage medium
KR20130138635A (en) Method and apparatus for fault tolerant fota update with single backup block write
US20030005351A1 (en) Method of upgrading software in a network environment and a network device for performing the same
US6895463B2 (en) Method and apparatus for efficiently running an execution image using volatile and non-volatile memory
CN114489711A (en) Terminal upgrading method and device and storage medium
JP3864337B2 (en) How to upgrade
CN115840579A (en) FPGA remote updating method, system, chip mounter and storage medium
WO2024113995A1 (en) Bmc heterogeneous upgrading method and system, device, and readable storage medium
US20120151005A1 (en) Image file download method
CN101253779A (en) Method for detecting errors during initialization of an electronic appliance and apparatus therefor
CN118295683A (en) Display device, server and system upgrading method
KR20060088654A (en) System and method for recovering data in mobile terminal
US20040133838A1 (en) Method for recovering data in portable information device, portable information device, and computer product
CN114090028A (en) System upgrading method, electronic device and storage medium
US20060190421A1 (en) Information processing apparatus and method, recording medium, and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination