WO2021104401A1 - Electronic device and method for logging in operating system - Google Patents

Electronic device and method for logging in operating system Download PDF

Info

Publication number
WO2021104401A1
WO2021104401A1 PCT/CN2020/131915 CN2020131915W WO2021104401A1 WO 2021104401 A1 WO2021104401 A1 WO 2021104401A1 CN 2020131915 W CN2020131915 W CN 2020131915W WO 2021104401 A1 WO2021104401 A1 WO 2021104401A1
Authority
WO
WIPO (PCT)
Prior art keywords
fingerprint
cpu
user
interface
shared memory
Prior art date
Application number
PCT/CN2020/131915
Other languages
French (fr)
Chinese (zh)
Inventor
冯鹏
刘明进
敖敏
庾能国
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021104401A1 publication Critical patent/WO2021104401A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Definitions

  • the notebook computer can provide the user with security authentication.
  • Security authentication can be password verification, fingerprint verification or face verification, etc.
  • the traditional way to log in to the operating system is: the user presses the power button to turn on, then enters the password/fingerprint unlocking/face scan and other methods for security authentication, and finally logs into the operating system. This traditional method has the problems of low login efficiency and cumbersome user operations.
  • This application provides an electronic device and a method for logging in to an operating system, which can perform user identity authentication while the electronic device is turned on to log in to the operating system of the electronic device, which can improve login efficiency and simplify user operations. Moreover, the architecture of the electronic device no longer requires the MCU provided by the fingerprint sensor manufacturer, which can reduce costs and improve integration.
  • an electronic device As shown in FIG. 5 exemplarily, the electronic device may include a power button, a fingerprint sensor 102, an EC 107, and a CPU 105. among them,
  • the fingerprint sensor 102 and the power button 101 are integrated.
  • the fingerprint sensor 102 can be pasted or printed on the surface of the power button 101. This surface can touch the user's finger when the user presses the power button 101. In this way, it can be realized that while the user presses the power button 101, the fingerprint sensor 102 can collect the user's fingerprint.
  • the EC 107 is a separate processor.
  • the EC 107 can be connected to the fingerprint sensor 102, and the EC 107 and the fingerprint sensor 102 can communicate through an SPI interface. For example, the EC 107 sends a fingerprint acquisition request to the fingerprint sensor 102, and the fingerprint sensor 102 transmits the collected fingerprint to the EC 107.
  • the firmware program of fingerprint encryption module can be loaded in EC 107.
  • the fingerprint encryption module may be responsible for encrypting the fingerprint from the fingerprint sensor 102.
  • the EC 107 may have a memory, which can store the encrypted fingerprint, and transmit the encrypted fingerprint to the CPU 105 in response to subsequent fingerprint entry instructions and fingerprint verification instructions from the CPU 105.
  • EC 107 can be connected to CPU 105.
  • the EC 107 and CPU 105 can communicate through the GPIO interface.
  • Such communication may include: the EC 107 sends an interrupt signal (such as notification) to the CPU 105 through a certain pin or pins of the GPIO, and the CPU 105 sends an interrupt signal (such as a notification) to the EC 107 through a certain pin or some pins.
  • the communication efficiency based on the GPIO interface is very high.
  • a software communication interface is introduced, which can be used to communicate user fingerprints between EC 107 and CPU 105. This software communication interface may be referred to as the first interface.
  • the first interface can realize the communication between the EC 107 and the CPU 105 based on the shared memory. Both EC 107 and CPU 105 can be connected to the shared memory through but not limited to the enhanced SPI interface to write data to or read data from the shared memory through ESPI.
  • the fingerprint sensor driver is loaded in the CPU 105.
  • the CPU 105 loaded with the fingerprint sensor driver can communicate with the EC 107 through the first interface. For example, the CPU 105 sends a fingerprint entry instruction or a fingerprint verification instruction to the EC 107, and the EC 107 transmits the fingerprint cached in the memory of the EC 107 to the CPU 105.
  • the CPU 105 can be used to perform user identity verification based on the fingerprint from the EC 107. If the fingerprint from the EC 107 is consistent with the fingerprint template pre-entered and stored in the notebook computer 100, the verification is passed; otherwise, the verification fails.
  • the EC 104 When the power button 101 is pressed by the user's finger, the EC 104 notifies the fingerprint sensor 102 and the CPU 105 to power on.
  • the fingerprint sensor 102 after power-on can collect the user's fingerprint, and the fingerprint is transmitted to the EC 104 for encryption and buffering.
  • the CPU 105 loads and starts the operating system, it obtains the fingerprint from the EC 104 through the first interface to perform user identity verification based on the fingerprint from the EC 104. If the verification is passed, the CPU 105 can instruct the display screen (not shown) to display the system desktop shown in FIG. 3B.
  • the electronic device provided in the first aspect can realize one-click power-on and identity authentication, and can support users to quickly log in to the operating system. Moreover, the electronic equipment provided by the first aspect can reduce costs and improve integration, which is conducive to miniaturization of notebook computers.
  • a method for logging in to an operating system is provided, and the method is applied to the electronic device provided in the first aspect.
  • the method may include: the EC detects that the power button is pressed by the user's finger, and obtains the user's fingerprint collected by the fingerprint sensor.
  • the fingerprint sensor collects fingerprints when the power button is pressed by the user's finger.
  • EC encrypts user fingerprints, and stores the encrypted user fingerprints in the internal storage space of EC.
  • the EC obtains the fingerprint verification instruction from the CPU through the first interface.
  • the EC transmits the encrypted user fingerprint to the CPU through the first interface.
  • the CPU performs user identity verification according to the user's fingerprint, and if the verification is passed, it logs in to the operating system of the electronic device.
  • the notebook computer in the shutdown state (S5) can be turned on and logged in to the operating system, which is simple and efficient.
  • the electronic equipment no longer needs the MCU provided by the fingerprint sensor manufacturer (MCU 103 in Figure 4), which can reduce costs, improve integration, and facilitate the miniaturization of notebook computers.
  • the BIOS before communicating between the EC and the CPU through the first interface, notifies the EC and the CPU of the address of the shared memory.
  • the shared memory is used for subsequent exchange of data between the EC and the CPU.
  • the EC and the CPU can exchange data (such as fingerprints, fingerprint verification instructions, fingerprint entry instructions, etc.) through the shared memory according to the address of the shared memory to realize communication.
  • the EC may delete the user fingerprint stored in the EC.
  • the user fingerprint stored in the EC is deleted.
  • a fingerprint registered user refers to a user who has entered a fingerprint template in advance.
  • the EC in order to further improve the security of user information, if the EC saves the user's fingerprint for more than a certain period of time (such as 3 seconds) and has not received a fingerprint verification instruction from the fingerprint sensor driver, the EC The user fingerprint can be deleted. This specific duration can be referred to as the first time.
  • the CPU before the EC obtains the fingerprint verification instruction from the CPU through the first interface, the CPU writes the fingerprint verification instruction into the shared memory. Specifically, the operating system running on the CPU sends a fingerprint verification request to the fingerprint sensor driver running on the CPU. Then, in response to the fingerprint verification request, the fingerprint sensor driver running on the CPU writes a fingerprint verification instruction to the shared memory.
  • the CPU and the EC can also communicate through a universal input and output interface GPIO interface. After the CPU writes the fingerprint verification instruction to the shared memory, the CPU sends the first notification to the EC through the GPIO interface. The first notification can be used to notify the EC to read the fingerprint verification instruction from the shared memory.
  • the EC obtains the fingerprint verification instruction from the CPU through the first interface, which may specifically include: the EC can read from the shared memory through the first interface the fingerprint verification written by the CPU to the shared memory instruction.
  • the EC transmits the encrypted user fingerprint to the CPU through the first interface, which may specifically include: the EC writes the encrypted user fingerprint into the shared memory through the first interface. Then, the CPU reads the encrypted user fingerprint from the shared memory.
  • the CPU reading the encrypted user fingerprint from the shared memory may include: a fingerprint sensor driver running on the CPU reads the encrypted user fingerprint from the shared memory.
  • the fingerprint sensor driver running on the CPU sends the encrypted user fingerprint to the operating system running on the CPU.
  • the CPU and the EC also communicate via a universal input and output interface GPIO interface.
  • the EC writes the encrypted user fingerprint into the shared memory through the first interface
  • the EC sends a second notification to the CPU through the GPIO interface.
  • the second notification is used to notify the CPU to read the encrypted user fingerprint from the shared memory.
  • the CPU performs user identity verification based on the user's fingerprint. If the verification is passed, logging in to the operating system may specifically include: the CPU determining whether the user's fingerprint is related to the fingerprint template in the first storage area of the electronic device If they are consistent, the verification is passed and the operating system is logged in.
  • a chip system may include an embedded controller and a processor CPU.
  • the embedded controller and the processor CPU are integrated in the electronic device described in the first aspect.
  • the electronic device may also include Power button, fingerprint sensor. The power button and fingerprint sensor are integrated. among them,
  • EC can be used to detect that the power button is pressed by the user's finger, and obtain the user's fingerprint collected by the fingerprint sensor.
  • the fingerprint sensor collects fingerprints when the power button is pressed by the user's finger.
  • EC can also be used to encrypt user fingerprints, and the encrypted user fingerprints are stored in the internal storage space of EC.
  • the EC can also be used to obtain fingerprint verification instructions from the CPU through the first interface. In response to the fingerprint verification instruction, the EC can transmit the encrypted user fingerprint to the CPU through the first interface.
  • the CPU can be used to perform user identity verification based on the user's fingerprint, and if the verification is passed, log in to the operating system of the electronic device.
  • the chip system provided by the third aspect is integrated into the electronic device described in the first aspect, which can realize one-key boot and login, and can make the electronic device no longer need the MCU provided by the fingerprint sensor manufacturer (as shown in Figure 4) MCU 103), which can reduce costs and improve integration, which is conducive to the miniaturization of notebook computers.
  • the BIOS may be used to notify the EC and the CPU of the address of the shared memory before the communication between the EC and the CPU through the first interface.
  • the shared memory is used for subsequent exchange of data between the EC and the CPU.
  • the EC and the CPU can exchange data (such as fingerprints, fingerprint verification instructions, fingerprint entry instructions, etc.) through the shared memory according to the address of the shared memory to realize communication.
  • the EC in order to further improve user information security, can be used to delete the user fingerprint stored in the EC after transmitting the encrypted user fingerprint to the CPU through the first interface.
  • the user fingerprint stored in the EC is deleted.
  • a fingerprint registered user refers to a user who has entered a fingerprint template in advance.
  • EC in order to further improve the security of user information, EC can be used if the EC saves the user's fingerprint for more than a certain period of time (for example, 3 seconds), and has not received fingerprint verification from the fingerprint sensor driver. Command, delete the user's fingerprint.
  • a certain period of time for example, 3 seconds
  • the CPU may be used to write the fingerprint verification instruction to the shared memory before the EC obtains the fingerprint verification instruction from the CPU through the first interface.
  • the operating system running on the CPU sends a fingerprint verification request to the fingerprint sensor driver running on the CPU.
  • the fingerprint sensor driver running on the CPU writes a fingerprint verification instruction to the shared memory.
  • the CPU and the EC can also communicate through a universal input and output interface GPIO interface.
  • the CPU can be used to send a first notification to the EC through the GPIO interface after the CPU writes a fingerprint verification instruction to the shared memory.
  • the first notification can be used to notify the EC to read the fingerprint verification instruction from the shared memory.
  • the EC may be specifically used to read the fingerprint verification instruction written by the CPU into the shared memory from the shared memory through the first interface.
  • the EC may be specifically used to write the encrypted user fingerprint into the shared memory through the first interface. Then, the CPU reads the encrypted user fingerprint from the shared memory.
  • the CPU reading the encrypted user fingerprint from the shared memory may include: a fingerprint sensor driver running on the CPU reads the encrypted user fingerprint from the shared memory.
  • the fingerprint sensor driver running on the CPU sends the encrypted user fingerprint to the operating system running on the CPU.
  • the CPU and the EC also communicate via a universal input and output interface GPIO interface.
  • the EC can be used to send a second notification to the CPU through the GPIO interface after the EC writes the encrypted user fingerprint into the shared memory through the first interface.
  • the second notification is used to notify the CPU to read the encrypted user fingerprint from the shared memory.
  • the CPU may be specifically used to determine whether the user fingerprint is consistent with the fingerprint template in the first storage area of the electronic device. If they are consistent, the verification is passed and the operating system is logged in.
  • a computer-readable storage medium is provided, and instructions are stored on the readable storage medium, and the instructions run in the processor CPU of the electronic device described in the first aspect.
  • the electronic device also includes a power button, a fingerprint sensor, and an embedded controller EC; the power button and the fingerprint sensor are integrated.
  • the EC is connected to the fingerprint sensor; the EC and the CPU communicate through a first interface, and the first interface is a software communication interface created based on the shared memory between the EC and the CPU.
  • the processor CPU can be made to execute the following steps:
  • CPU transmits fingerprint verification instructions to EC
  • the CPU receives the encrypted user fingerprint sent by the EC;
  • the CPU performs user identity verification according to the user's fingerprint, and if the verification is passed, it logs in to the operating system of the electronic device.
  • the CPU transmits the fingerprint verification instruction to the EC, which may specifically include: the CPU writes the fingerprint verification instruction into the shared memory.
  • the CPU receiving the encrypted user fingerprint sent by the EC may specifically include: the CPU reads the encrypted user fingerprint from the shared memory.
  • a computer program product containing instructions, and the computer program product runs in the processor CPU of the electronic device described in the first aspect.
  • the electronic device also includes a power button, a fingerprint sensor, and an embedded controller EC; the power button and the fingerprint sensor are integrated.
  • the EC is connected to the fingerprint sensor; the EC and the CPU communicate through a first interface, and the first interface is a software communication interface created based on the shared memory between the EC and the CPU.
  • the processor CPU can be caused to execute the following steps:
  • CPU transmits fingerprint verification instructions to EC
  • the CPU receives the encrypted user fingerprint sent by the EC;
  • the CPU performs user identity verification according to the user's fingerprint, and if the verification is passed, it logs in to the operating system of the electronic device.
  • the CPU transmits the fingerprint verification instruction to the EC, which may specifically include: the CPU writes the fingerprint verification instruction into the shared memory.
  • the CPU receiving the encrypted user fingerprint sent by the EC may specifically include: the CPU reads the encrypted user fingerprint from the shared memory.
  • FIG. 1A exemplarily shows a typical electronic device provided by an embodiment of the present application
  • FIG. 1B exemplarily shows the settings of the power button and fingerprint sensor of the electronic device shown in FIG. 1A;
  • Figures 2A-2D exemplarily show the booting and operating system login process of a traditional notebook computer
  • 3A-3B exemplarily show the booting and system login process of the notebook computer shown in FIG. 1A;
  • FIG. 4 exemplarily shows an existing hardware architecture applied to the notebook computer shown in FIG. 1A;
  • FIG. 5 exemplarily shows that the present application provides a new hardware architecture applied to the notebook computer shown in FIG. 1A;
  • FIG. 6 shows a software architecture applied to the notebook computer shown in FIG. 1A based on the hardware architecture shown in FIG. 5;
  • FIG. 7 exemplarily shows a solution for implementing the operating system login method provided by this application in the notebook computer 100;
  • FIG. 8 shows a method for logging in to an operating system provided by an embodiment of the present application
  • FIG. 9 shows a method for logging in to an operating system provided by another embodiment of the present application.
  • FIG. 10 shows a method for logging in to an operating system provided by another embodiment of the present application.
  • Figure 11 exemplarily shows the "incorrect shutdown interface"
  • FIG. 12 shows a method for logging in to an operating system provided by another embodiment of the present application.
  • FIG. 13 shows the method of fingerprint template entry provided by this application
  • Figures 14A-14B exemplarily show a fingerprint entry window of "one-key login"
  • 15A-15B exemplarily show another fingerprint entry window of "one-key login"
  • Figure 16 exemplarily shows another fingerprint entry window of "one-click login"
  • Figure 17 exemplarily shows another fingerprint entry window of "one-key login"
  • FIG. 18 exemplarily shows another typical electronic device provided by an embodiment of the present application.
  • Fig. 19 exemplarily shows the booting and unlocking process of the electronic device shown in Fig. 18.
  • This application provides an electronic device that has an integrated power button and a fingerprint sensor.
  • the electronic device can be a notebook computer, a desktop computer, a tablet computer, a smart phone, and other types of electronic devices.
  • This application also provides a method for logging in to the operating system, which can be applied to the electronic device provided in this application, and can realize user identity authentication when the electronic device is turned on, so as to log in to the operating system of the electronic device, which can improve Login efficiency and simplify user operations.
  • the operating system of the electronic device may refer to a computer program that manages computer hardware and software resources.
  • the operating system needs to deal with basic tasks such as managing and configuring memory, determining the priority of system resource supply and demand, controlling input devices and output devices, operating the network, and managing the file system.
  • the operating system also provides an operation interface that allows users to interact with the system.
  • the operating system has configured a set of user names and passwords for each user, and users can use their own user names and passwords to log in to the operating system. After the login is successful, the user can legally use the capabilities of the account. For example, mailbox users can send and receive mail, view/change the address book, and so on.
  • passwords such as digital passwords, fingerprint passwords, facial feature passwords, and so on.
  • FIG. 1A exemplarily shows a typical electronic device: a notebook computer 100 provided by an embodiment of the present application.
  • the notebook computer 100 may include a power button 101 and a fingerprint sensor 102, wherein,
  • the fingerprint sensor 102 may be an optical fingerprint sensor, an ultrasonic fingerprint sensor, or other types of fingerprint sensors.
  • the fingerprint sensor 102 and the power button 101 are integrated.
  • the fingerprint sensor 102 may be pasted or printed on the surface of the power button 101. This surface can touch the user's finger when the user presses the power button 101. In this way, it can be realized that while the user presses the power button 101, the fingerprint sensor 102 can collect the user's fingerprint.
  • FIG. 2A-2D exemplarily show the booting and operating system login process of the traditional notebook computer 200. among them,
  • the traditional notebook computer 200 also includes a power button 201 and a fingerprint sensor 202
  • the power button 201 and the fingerprint sensor 202 are generally provided separately; or, the fingerprint sensor 202 can also be integrated in the notebook On the touch module 203 of the computer 200.
  • the notebook computer 201 can start up in response to the user's pressing operation on the power button 201, and display the user account icon 204 and the icon shown in FIG. 2B.
  • the operating system login interface of the user password input box 205 is for the user to enter the user password or wait for the user to enter the user's fingerprint information through the fingerprint sensor 202 to log in to the operating system of the notebook computer 200.
  • the fingerprint sensor 202 of the notebook computer 200 can collect the fingerprint of the user, so that the notebook computer 200 can perform user identity authentication. If the authentication is passed, the notebook computer 200 will display the system desktop as shown in FIG. 2D. So far, the user successfully logs in to the operating system of the notebook computer 200.
  • the traditional notebook computer 200 has the problems of cumbersome user operations and low login efficiency during the booting and system login process.
  • 3A-3B exemplarily show the booting and system login process of the notebook computer 100 shown in FIG. 1A. among them,
  • the notebook computer 100 when a user's finger presses the power button 101 of the notebook computer 100, the user's finger will also touch the fingerprint sensor 102 integrated on the power button 101. In response to the pressing operation of the user's finger on the power button 101, the notebook computer 100 can be powered on, and at the same time, the fingerprint sensor 102 can collect the user's fingerprint, so that the notebook computer 100 can perform user identity authentication. If the authentication is passed, the notebook computer 100 will display the system desktop as shown in FIG. 3B. So far, the user successfully logs in to the operating system of the notebook computer 100.
  • the notebook computer 100 provided by the embodiment of the present application can realize "one-key power-on login", that is, the user's finger presses the power button 101 once to complete the power-on and identity authentication, and quickly log in to the operating system.
  • the hardware architecture applied to the notebook computer 100 may include: a microcontroller processing unit (microcontroller unit, MCU) 103, an embedded controller (embedded controller, EC) 104 (also known as an embedded processing unit) Processor), central processing unit (CPU) 105.
  • MCU microcontroller processing unit
  • EC embedded controller
  • CPU central processing unit
  • the MCU 103 is connected to the fingerprint sensor 102.
  • the MCU 103 and the fingerprint sensor 102 may communicate through a serial peripheral interface (SPI) interface.
  • SPI serial peripheral interface
  • the MCU 103 sends a fingerprint acquisition request to the fingerprint sensor 102, and the fingerprint sensor 102 transmits the collected fingerprint to the MCU 103.
  • the MCU 103 may be responsible for encrypting the fingerprint from the fingerprint sensor 102.
  • the MCU 103 may have a memory, which can store the encrypted fingerprint, and transmit the encrypted fingerprint to the CPU 105 in response to the subsequent fingerprint entry instruction or fingerprint verification instruction sent by the CPU 105.
  • the CPU 105 is connected to the MCU 103.
  • the CPU 105 and the MCU 103 can communicate through the SPI interface.
  • the fingerprint sensor driver is loaded in the CPU 105.
  • the fingerprint sensor driver is a driver program of the fingerprint sensor 102.
  • the CPU 105 loaded with the fingerprint sensor driver can communicate with the MCU 103 through the SPI interface. For example, the CPU 105 sends a fingerprint entry instruction or fingerprint verification instruction to the MCU 103, and the MCU 103 transmits the fingerprint cached in the memory of the MCU 103 to the CPU 105.
  • the CPU 105 can be used to perform user identity verification based on the fingerprint from the MCU 103.
  • the fingerprint template refers to a user fingerprint entered in advance and stored in the notebook computer 100, which is equivalent to a password set by the user in advance to log in to the operating system. The following content will describe the implementation of fingerprint registration in detail, so I won't go into details here.
  • EC 104 is a separate processor.
  • the EC 104 and the CPU 105 can communicate through a general purpose input output (GPIO) interface.
  • the EC 104 and MCU 103 can communicate through the SPI interface.
  • the EC 104 controls the timing of most important signals.
  • the EC 104 keeps running and waits for the user's power-on signal.
  • the EC 104 can be used as a controller for devices such as the fingerprint sensor 102, keyboard, charging indicator, and fan.
  • the EC 104 can also control the standby and hibernation states of the system. After detecting that the user presses the power button 101, the EC 104 will notify the entire notebook computer 100 to power on.
  • the EC 104 When the power button 101 is pressed by the user's finger, the EC 104 notifies the MCU 103, the fingerprint sensor 102, and the CPU 105 to power on. After power-on, the fingerprint sensor 102 can collect the user's fingerprint, and the fingerprint is transmitted to the MCU 103 for encryption. After the CPU 105 loads and starts the operating system, it requests the MCU 103 to enter the fingerprint, so as to perform user authentication based on the fingerprint from the MCU 103. If the verification is passed, the CPU 105 can instruct the display screen (not shown) to display the system desktop shown in FIG. 3B. So far, the architecture shown in Figure 4 has achieved one-key boot and identity authentication, which can support users to quickly log in to the operating system.
  • the architecture of the notebook computer 100 shown in FIG. 4 requires an additional MCU to be configured for the fingerprint sensor: MCU 103. This will not only increase the cost, but also requires a larger internal design space, which is not conducive to the miniaturization of notebook computers.
  • FIG. 5 exemplarily shows that the present application provides a new hardware architecture applied to the notebook computer 100, which can not only realize one-key boot and identity authentication, simplify user login operations, but also overcome the existence of the hardware architecture shown in FIG. 4 The problem.
  • the new hardware architecture applied to the notebook computer 100 may include: EC 107, CPU 105. among them,
  • the EC 107 is a separate processor.
  • the EC 107 can be connected to the fingerprint sensor 102, and the EC 107 and the fingerprint sensor 102 can communicate through an SPI interface. For example, the EC 107 sends a fingerprint acquisition request to the fingerprint sensor 102, and the fingerprint sensor 102 transmits the collected fingerprint to the EC 107.
  • the firmware program of fingerprint encryption module can be loaded in EC 107.
  • the fingerprint encryption module may be responsible for encrypting the fingerprint from the fingerprint sensor 102.
  • the EC 107 may have a memory, which can store the encrypted fingerprint, and transmit the encrypted fingerprint to the CPU 105 in response to subsequent fingerprint entry instructions and fingerprint verification instructions from the CPU 105.
  • EC 107 can be connected to CPU 105.
  • the EC 107 and CPU 105 can communicate through the GPIO interface.
  • Such communication may include: the EC 107 sends an interrupt signal (such as notification) to the CPU 105 through a certain pin or pins of the GPIO, and the CPU 105 sends an interrupt signal (such as a notification) to the EC 107 through a certain pin or some pins.
  • the communication efficiency based on the GPIO interface is very high.
  • a software communication interface is introduced, which can be used to communicate user fingerprints between EC 107 and CPU 105. This software communication interface may be referred to as the first interface.
  • the first interface can realize the communication between the EC 107 and the CPU 105 based on the shared memory. Both the EC 107 and the CPU 105 can be connected to the shared memory through, but not limited to, an enhanced SPI (ESPI) interface, so as to write data to or read data from the shared memory through ESPI.
  • ESPI enhanced SPI
  • the follow-up content will be introduced in detail, so I won't go into details here.
  • the fingerprint sensor driver is loaded in the CPU 105.
  • the CPU 105 loaded with the fingerprint sensor driver can communicate with the EC 107 through the first interface. For example, the CPU 105 sends a fingerprint entry instruction or a fingerprint verification instruction to the EC 107, and the EC 107 transmits the fingerprint cached in the memory of the EC 107 to the CPU 105.
  • the CPU 105 can be used to perform user identity verification based on the fingerprint from the EC 107. If the fingerprint from the EC 107 is consistent with the fingerprint template pre-entered and stored in the notebook computer 100, the verification is passed; otherwise, the verification fails.
  • the EC 104 When the power button 101 is pressed by the user's finger, the EC 104 notifies the fingerprint sensor 102 and the CPU 105 to power on.
  • the fingerprint sensor 102 after power-on can collect the user's fingerprint, and the fingerprint is transmitted to the EC 104 for encryption and buffering.
  • the CPU 105 loads and starts the operating system, it obtains the fingerprint from the EC 104 through the first interface to perform user identity verification based on the fingerprint from the EC 104. If the verification is passed, the CPU 105 can instruct the display screen (not shown) to display the system desktop shown in FIG. 3B.
  • the hardware architecture shown in Figure 5 has achieved one-key boot and identity authentication, which can support users to quickly log in to the operating system.
  • the hardware architecture shown in FIG. 5 can also overcome the problems of the hardware architecture shown in FIG. 4.
  • the present application provides a software architecture applied to the notebook computer 100.
  • the software architecture may include: operating system 201 running on CPU 105, fingerprint sensor driver 202 loaded by operating system 201, basic input-output system (BIOS) 205, loaded on EC Fingerprint library 203 in 107. among them,
  • the operating system 201 is responsible for managing hardware resources and software resources.
  • Hardware resources include CPU 105, memory 108, graphics card, network card, sound card, hard disk, and so on.
  • Software resources include various programs, such as various hardware drivers.
  • the operating system 201 is also responsible for abstracting the interface of the hardware driver to form a simple software interface for the upper application.
  • the fingerprint sensor driver 202 can be used to initialize the fingerprint sensor 102 and provide a hardware resource access interface for the fingerprint sensor 102.
  • BIOS 205 is integrated in a read only memory (ROM) on the motherboard of the notebook computer 100, which mainly stores basic input and output programs, system information setting programs, power-on self-check programs, and system startup boot programs, etc. .
  • BIOS 205 can be regarded as a piece of software permanently recorded in ROM, which is a part of the input and output management system of the operating system.
  • the BIOS 205 Before being executed by the CPU 105, the BIOS 205 can be loaded into the memory 108.
  • the memory 108 may be a random access memory (RAM).
  • the BIOS 205 can be mainly used to start the notebook computer 100, control and drive important hardware, and provide basic calls for high-level software.
  • the BIOS 205 can be used to initialize the memory 108 after the laptop 100 is powered on, and inform the EC 107 and the fingerprint sensor driver 202 of the address of the shared memory used for communication between the EC 107 and the fingerprint sensor driver 202.
  • the interface for communication between the EC 107 and the fingerprint sensor driver 202 based on shared memory may be referred to as the first interface.
  • the fingerprint library 203 provides multiple types of software interfaces, such as service interfaces, control interfaces, interrupt service interfaces, and read-write interfaces.
  • the service interface can be used by the EC 107 to receive input-output (IO) instructions issued by the fingerprint sensor driver 202 and the EC 107 to send notifications to the fingerprint sensor driver 202 (for example, to notify that the fingerprint has been written to the shared memory); the control interface is available
  • the EC 107 sends an interrupt signal to the fingerprint sensor driver 202 through the GPIO interface;
  • the interrupt service interface can be used by the EC 107 to process the interrupt signal sent by the fingerprint sensor driver 202;
  • the read-write interface can be used by the EC 107 to respond to the IO commands sent by the fingerprint sensor driver 202 And read commands written by the fingerprint sensor driver 202 from the shared memory (such as fingerprint entry instructions, fingerprint verification instructions), and can be used by the EC to respond to the fingerprint entry instructions or fingerprint verification instructions written by the fingerprint sensor driver 202 to the shared memory.
  • the EC 104 When the power button 101 is pressed by the user's finger, the EC 104 notifies the fingerprint sensor 102 and the CPU 105 to power on.
  • the fingerprint sensor 102 after power-on can collect user fingerprints, and the user fingerprints are transmitted to the EC 104 for encryption and buffering.
  • the operating system 201 After the operating system 201 is started, the operating system 201 loads the fingerprint sensor driver 202.
  • the EC 107 can receive the specific IO command sent by the fingerprint sensor driver 202 through the service interface in the fingerprint library 203 (that is, the first notification mentioned in the subsequent embodiments).
  • the EC 107 can pass the fingerprint library 203
  • the read-write interface reads the fingerprint sensor drive commands (such as fingerprint entry instructions, fingerprint verification instructions) written by the fingerprint sensor driver 202 from the shared memory.
  • the EC 107 can write user fingerprints into the shared memory through the read-write interface in the fingerprint library 203, and send a notification to the fingerprint sensor driver 202 through the service interface in the fingerprint library 203 (that is, the second Notification) to notify the user that the fingerprint has been written into the shared memory.
  • the fingerprint sensor driver 202 will read the user's fingerprint from the shared memory according to the notification. So far, the fingerprint sensor driver 202 obtains the user fingerprint collected by the fingerprint sensor 102, and sends the user fingerprint to the operating system 201, so that the operating system 201 performs user identity verification based on the user fingerprint.
  • FIG. 7 exemplarily shows a solution for implementing the operating system login method provided by this application in the notebook computer 100.
  • the solution presents a combination of software architecture and hardware architecture, which can be divided into two parts: the device layer, the application, and the kernel layer.
  • the device layer may include devices connected to the CPU 105: local storage 206, BIOS 205, EC 107, fingerprint sensor 102, and power button 101. among them,
  • the local storage 206 can be used to store a fingerprint template, that is, a fingerprint entered in advance by a user to log in to the operating system 201.
  • the firmware program of fingerprint encryption module can be loaded in EC 107.
  • the fingerprint encryption module may be responsible for encrypting the fingerprint from the fingerprint sensor 102.
  • EC 107 can have a memory, which can store encrypted fingerprints.
  • the key KEY_A can be preset in the BIOS 205.
  • the key KEY_B can be preset in EC 107.
  • the EC 107 can use the key KEY_B to encrypt the user fingerprint collected by the fingerprint sensor 102.
  • BIOS 205 refers to ROM with integrated BIOS.
  • the key KEY_A is used by the fingerprint sensor driver 202, and the fingerprint sensor driver 202 can carry the key KEY_A in the fingerprint entry instruction or fingerprint verification instruction. Then, the EC 107 receiving the fingerprint entry instruction or fingerprint verification instruction will verify the key KEY_A, and if the verification is passed, the encrypted user fingerprint temporarily stored in the EC 107 will be transmitted to the fingerprint sensor driver 202 through the first interface.
  • the fingerprint sensor driver 202 can obtain the key KEY_A through the advanced configuration and power management interface device-specific method (ACPI DSM) provided by the BIOS 205.
  • ACPI DSM advanced configuration and power management interface device-specific method
  • the communication between the fingerprint sensor driver 202 running in the CPU 105 and the fingerprint encryption module in the EC 107 belongs to cross-chip communication. In order to ensure the security of fingerprint transmission, a communication link can be established between the two based on the Transport Layer Security Protocol (TLS).
  • TLS Transport Layer Security Protocol
  • the application and kernel layer may include various software programs running on the CPU 105: user login application (APP) 211, fingerprint management application (APP) 212, fingerprint recognition framework 210, storage adapter (storage adapter) 207, engine An engine adapter 208, a fingerprint recognition sensor adapter 209, a fingerprint recognition sensor driver 202, and a power management program 213. among them:
  • the user login APP 211 is responsible for the login management of the operating system 201, can prompt the user to enter a password, and perform user identity verification based on the fingerprint or other forms of password entered by the user. For example, if the result of the user identity verification is that the verification is passed, the user logs in to the APP 211 to display the system desktop as shown in FIG. 3B.
  • the fingerprint management APP 212 may be responsible for entering a fingerprint template, that is, responsible for setting the fingerprint entered by the user in advance to log in to the operating system 201.
  • the fingerprint management APP 212 can generally be integrated in a setting application.
  • the fingerprint recognition framework 210 may include various application programming interfaces (APIs) that may be used when building applications involving fingerprint recognition, and a service interface that allows consistent development and management of the fingerprint sensor 102, facilitating application development Personnel can carry out efficient development.
  • APIs application programming interfaces
  • the storage adapter 207 may provide an interface for storing or accessing fingerprint templates, and may be used for storing or accessing fingerprint templates.
  • the fingerprint sensor adapter 209 can be responsible for setting the fingerprint sensor 102 and reading the user's fingerprint from the fingerprint sensor driver 202.
  • the fingerprint sensor driver 202 can be used to initialize the fingerprint sensor 102 and provide the operating system 201 with an access interface for the hardware resources of the fingerprint sensor 102.
  • S1 Sleep state
  • S1 is also called power on suspend (POS) state, which is a low power consumption state.
  • POS power on suspend
  • S3 has also become a suspend to RAM (STR) state.
  • STR suspend to RAM
  • Hibernation state (marked as S4): Most of the characteristics of hibernation state and sleep state are the same, the difference is: the information left in the memory in the original sleep state is written to the hard disk as it is, and the system itself after the hibernation is completed Enter a zero power consumption state; when the system is woken up, the memory image in the hard disk is loaded into the memory as it is, and the system resumes operation.
  • the user will press the power button around the user's finger to illustrate how to log in to the operating system in several operating states of the notebook computer 100.
  • Embodiment 1 when the user's finger presses the power button, the notebook computer 100 is in the shutdown state (S5). At this time, the CPU and other hardware devices of the notebook computer 100 are in a power-off state. The user's finger pressing the power button will trigger the notebook computer 100 to switch from the shutdown state (S5) to the working state (S0).
  • FIG. 8 exemplarily shows the method for logging in to the operating system provided in Embodiment 1. As shown in Figure 8, the method may include the following steps:
  • the notebook computer 100 detects that the power button is pressed.
  • the EC of the notebook computer 100 is responsible for detecting whether the power button is pressed.
  • the EC determines that when the user's finger presses the power button, the notebook computer 100 is in a shutdown state. EC is responsible for managing the operating status of the laptop.
  • the notebook computer 100 After the power button is pressed, the notebook computer 100 starts to be powered on. Specifically, the EC in the notebook computer 100 may power on various hardware devices (such as a fingerprint sensor, BIOS, CPU, display screen, etc.) according to a power sequence. In the shutdown state, the EC keeps running and waits for a power-on signal (such as a high-level pulse signal generated by the power button being pressed).
  • a power-on signal such as a high-level pulse signal generated by the power button being pressed.
  • the CPU After the CPU is powered on, it will run the operating system and load the fingerprint sensor driver. Then, the operating system will request the fingerprint sensor driver to provide the user's fingerprint. There are several purposes for the operating system to obtain user fingerprints: 1. Enter the fingerprint template; 2. Perform user identity verification. This embodiment relates to the first purpose.
  • the EC is initialized. While controlling the power on of each hardware device, set the pin status of hardware devices such as memory and chips necessary for the operation of the operating system to initialize the internal environment.
  • the EC sends the fingerprint sensor configuration to the fingerprint sensor to enable the fingerprint sensor.
  • the configuration of the fingerprint sensor can be, for example, parameters such as the size of the fingerprint image and the resolution of the fingerprint image.
  • BIOS initializes the memory.
  • the BIOS waits for the EC to initialize the internal hardware devices before starting to run.
  • the fingerprint sensor integrated with the power button can detect the touch of the user's finger and collect the user's fingerprint.
  • the data representation form of the user's fingerprint may be a fingerprint image.
  • the laptop computer can display the operating system login interface including the user account icon 204 and the user password input box 205 as shown in FIG. 2B for the user to input the user password or wait for the user to touch the fingerprint sensor to input the fingerprint again to log in to the laptop.
  • the fingerprint sensor may notify the EC to obtain the user's fingerprint.
  • the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
  • SPI interface Communication between EC and fingerprint sensor is through SPI interface.
  • S104, S108, and S109-S110 are implemented based on the SPI interface.
  • the EC sends a request to the fingerprint sensor based on the SPI interface, and also reads the user's fingerprint in the fingerprint sensor based on the SPI interface.
  • S109-S110 can be executed multiple times to obtain a complete user fingerprint. Because the amount of data that can be interacted in one communication based on the SPI interface is limited, it is usually impossible to transmit a complete fingerprint image.
  • the complete fingerprint image refers to the fingerprint image actually collected by the fingerprint sensor.
  • the EC every time the EC reads the fingerprint data from the fingerprint sensor, it will be stored in the internal memory of the EC.
  • the firmware program of the fingerprint encryption module can be loaded in the EC.
  • EC can encrypt user fingerprints stored in it through the fingerprint encryption module.
  • BIOS After the BIOS performs memory initialization, the BIOS may notify the EC of the shared memory address.
  • the BIOS can also notify the fingerprint sensor driver running in the CPU of the shared memory address.
  • the shared memory can be used for data communication between the fingerprint encryption module loaded in the EC and the fingerprint sensor driver running in the CPU.
  • S112 can also occur before S111, or even before S106.
  • the fingerprint sensor driver running in the CPU can write a fingerprint verification instruction to the shared memory.
  • the fingerprint sensor driver received a fingerprint verification request from the operating system. Refer to S119.
  • the fingerprint verification request may specifically come from a user logging in to the APP running on the operating system.
  • the fingerprint sensor driver writes a fingerprint verification instruction to the shared memory to notify the EC to write the user's fingerprint collected by the fingerprint sensor into the shared memory.
  • the fingerprint verification instruction may be a specific command in the drive command set driven by the fingerprint sensor.
  • the fingerprint sensor driver sends a first notification (specific IO command) to the EC to trigger the EC to read the fingerprint verification command written by the fingerprint sensor driver from the shared memory.
  • the fingerprint sensor driver may send the first notification to the EC through the GPIO interface.
  • the transmission of the first notification based on the GPIO interface can improve the transmission efficiency of the first notification, thereby increasing the efficiency of fingerprint interaction between the EC and the CPU.
  • the EC 107 can read the fingerprint verification instruction written by the fingerprint sensor driver from the shared memory through the first interface (specifically, the read interface).
  • the EC can write the encrypted user fingerprint into the shared memory through the first interface (specifically, the write interface).
  • the EC may send a second notification (specific IO command) to the fingerprint sensor driver to notify the fingerprint sensor that the user's fingerprint has been written into the shared memory. Specifically, the EC may send the second notification to the fingerprint sensor driver through the GPIO interface.
  • the transmission of the second notification based on the GPIO interface can improve the transmission efficiency of the second notification, thereby increasing the efficiency of fingerprint interaction between the EC and the CPU.
  • the fingerprint sensor driver may read the user's fingerprint from the shared memory according to the second notification.
  • the fingerprint sensor driver has obtained the user fingerprint collected by the fingerprint sensor, and can send the user fingerprint to the operating system to support the operating system to perform user identity verification based on the user fingerprint.
  • S120 The fingerprint sensor driver sends the user's fingerprint to the operating system.
  • the operating system performs user identity verification according to the user's fingerprint. If the verification result is that the verification is passed, the notebook computer will display the operating system desktop as shown in FIG. 3B. At this point, the user has successfully logged in to the operating system of the laptop.
  • the operating system may compare the user fingerprint with the fingerprint template in the local storage 206, and if the user fingerprint is consistent with the fingerprint template, the verification result is determined to be verified; otherwise, the verification result is determined to be failed.
  • the notebook computer will display the operating system login interface including the user account icon 204 and the user password input box 205 as shown in FIG. 2B for the user to enter the user password or wait for the user to enter the user through the fingerprint sensor Fingerprint to log into the operating system of the laptop.
  • Embodiment 1 in the method for logging in to the operating system provided in Embodiment 1, by pressing the power button, the notebook computer 100 in the shutdown state (S5) can be turned on and logged in to the operating system, which is simple and efficient. Moreover, Embodiment 1 no longer needs the MCU provided by the fingerprint sensor manufacturer (MCU 103 in FIG. 4), which can reduce the cost, improve the integration level, and facilitate the miniaturization of the notebook computer.
  • MCU fingerprint sensor manufacturer
  • the method for logging in to the operating system provided in Embodiment 1 may further include: after S116, the EC deletes the user fingerprint stored in the EC. In other words, after the EC writes the user fingerprint into the shared memory, the user fingerprint stored in the EC is deleted. In this way, the information security of fingerprint registered users can be improved, and other users can be prevented from logging in to the operating system through the fingerprints of registered users left in the EC.
  • a fingerprint registered user refers to a user who has entered a fingerprint template in advance.
  • the method for logging in to the operating system provided in Embodiment 1 may further include: if the EC saves the user's fingerprint for more than a certain period of time (for example, 3 seconds), the fingerprint verification instruction from the fingerprint sensor driver has not been received. , The EC can delete the user's fingerprint.
  • a certain period of time for example, 3 seconds
  • the operating system may not be able to send fingerprint verification requests to the fingerprint sensor driver in time due to system failures or other reasons, resulting in the fingerprint sensor driver not being able to send fingerprint verification instructions to the EC in time. Or, the operating system sends the fingerprint verification request to the fingerprint sensor driver in time, but the fingerprint sensor driver fails to send the fingerprint verification instruction to the EC in time. In this way, it will lead to the failure to log in to the operating system in time, and the login process will be prolonged. A fingerprint-registered user may leave the laptop while waiting to log in to the operating system. If the user successfully logs in to the operating system after the user leaves, the user's information may be viewed or stolen by other users.
  • Embodiment 2 when the user's finger presses the power button, the notebook computer 100 is in a sleep state (S1 or S3), or a hibernation state (S4). At this time, the CPU of the notebook computer 100 is in the off state, and other hardware devices are in a low power consumption working state, for example, the screen is off (or called a black screen). The operation of the user's finger pressing the power button will trigger the notebook computer 100 to switch from the sleep state or the hibernation state to the working state.
  • FIG. 9 exemplarily shows the method for logging in to the operating system provided in Embodiment 2. As shown in Figure 9, the method may include the following steps:
  • S201 The notebook computer 100 detects that the power button is pressed. For details, refer to S101 in Embodiment 1, which will not be repeated here.
  • S202 When the user's finger presses the power button, some hardware devices in a low-power working state will be awakened, for example, the screen will be lit, the fingerprint sensor will start to collect fingerprints, and so on. At this time, the fingerprint sensor integrated with the power button can detect the user's finger touch and collect the user's fingerprint.
  • the data representation form of the user's fingerprint may be a fingerprint image. For details, refer to S107 in Embodiment 1, which will not be repeated here.
  • Embodiment 2 provides It is no longer necessary to power on the fingerprint sensor and initialize the EC in the method of logging in to the operating system.
  • the EC determines that when the user's finger presses the power button, the notebook computer 100 is in a dormant state or a sleep state. EC is responsible for managing the operating status of the laptop.
  • the CPU After the CPU is powered on, it will run the operating system and load the fingerprint sensor driver. Then, the operating system will request the fingerprint sensor driver to provide the user's fingerprint. There are several purposes for the operating system to obtain user fingerprints: 1. Enter the fingerprint template; 2. Perform user identity verification. This embodiment relates to the first purpose.
  • the fingerprint sensor may notify the EC to obtain the user's fingerprint.
  • the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
  • the fingerprint sensor driver running in the CPU writes a fingerprint verification instruction to the shared memory.
  • the fingerprint sensor driver received a fingerprint verification request from the operating system. Refer to S209.
  • the fingerprint verification request may specifically come from a user logging in to the APP running on the operating system.
  • the fingerprint sensor driver writes a fingerprint verification instruction to the shared memory to notify the EC to write the user's fingerprint collected by the fingerprint sensor into the shared memory.
  • the fingerprint verification instruction may be a specific command in the drive command set driven by the fingerprint sensor.
  • the BIOS in the notebook computer that is still working at that time has already initialized the memory and notified the EC and the CPU of the shared memory address. Therefore, the BIOS can no longer notify the EC and CPU of the shared memory address.
  • the fingerprint sensor driver sends a first notification (specific IO instruction) to the EC to trigger the EC to read the fingerprint verification instruction written by the fingerprint sensor driver from the shared memory. Specifically, the fingerprint sensor driver may send the first notification to the EC through the GPIO interface.
  • the EC 107 may read the fingerprint verification instruction written by the fingerprint sensor driver from the shared memory through the first interface (specifically, the read interface).
  • the EC may write the encrypted user fingerprint into the shared memory.
  • the EC may send a second notification (specific IO command) to the fingerprint sensor driver to notify the fingerprint sensor that the user's fingerprint has been written into the shared memory. Specifically, the EC may send the second notification to the fingerprint sensor driver through the GPIO interface.
  • the fingerprint sensor driver may read the user's fingerprint from the shared memory according to the second notification.
  • the fingerprint sensor driver has obtained the user fingerprint collected by the fingerprint sensor, and can send the user fingerprint to the operating system to support the operating system to perform user identity verification based on the user fingerprint.
  • S216 The fingerprint sensor driver sends the user's fingerprint to the operating system.
  • the operating system performs user identity verification based on the user's fingerprint. If the verification result is that the verification is passed, the notebook computer 100 will display the operating system desktop as shown in FIG. 3B. So far, the user successfully logs in to the operating system of the notebook computer 100.
  • the notebook computer will display the operating system login interface including the user account icon 204 and the user password input box 205 as shown in FIG. 2B for the user to enter the user password or wait for the user to enter the user through the fingerprint sensor Fingerprint to log into the operating system of the laptop.
  • Embodiment 2 in the method for logging in to the operating system provided in Embodiment 2, by pressing the power button, the notebook computer 100 in the dormant state or the sleeping state can be turned on and logged in to the operating system, which is simple and efficient. Moreover, Embodiment 2 no longer needs the MCU provided by the fingerprint sensor manufacturer (MCU 103 in FIG. 4), which can reduce the cost, improve the integration level, and facilitate the miniaturization of the notebook computer.
  • the method for logging in to the operating system provided in Embodiment 2 may further include: if the EC saves the user's fingerprint for more than a certain period of time (for example, 3 seconds), the fingerprint verification instruction from the fingerprint sensor driver has not been received , The EC can delete the user's fingerprint.
  • a certain period of time for example, 3 seconds
  • Embodiment 3 when the notebook computer 100 is in the sleep state (marked as S1 or S3) or the sleep state (S4), if the user's finger presses the power button for more than a certain period of time (for example, 5 seconds), that is, the user's finger presses the power button for a long time. Key, the notebook computer 100 can be triggered to shut down, and the notebook computer 100 will enter the shutdown state.
  • a certain period of time for example, 5 seconds
  • Example 3 The method of operating system can be as shown in Figure 10, including:
  • S301 The notebook computer 100 detects that the power button is long pressed by the user's finger.
  • the EC of the notebook computer 100 is responsible for detecting whether the power button is pressed, and the length of time the power button is pressed.
  • the long press means that the power button is pressed for longer than the first time period (for example, 5 seconds).
  • S302 When the user's finger presses the power button, some hardware devices in a low-power working state will be awakened, for example, the screen will be lit, the fingerprint sensor will start to collect fingerprints, and so on. At this time, the fingerprint sensor integrated with the power button can detect the user's finger touch and collect the user's fingerprint.
  • the data representation form of the user's fingerprint may be a fingerprint image. For details, refer to S202 in Embodiment 2, which will not be repeated here.
  • the EC determines that when the user's finger presses the power button, the notebook computer 100 is in a sleep state or a sleep state. EC is responsible for managing the operating status of the laptop.
  • the fingerprint sensor may notify the EC to obtain the user's fingerprint.
  • the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
  • the EC can write the encrypted user fingerprint into the shared memory.
  • the EC may send a third notification to the fingerprint sensor driver to notify the fingerprint sensor driver that the user fingerprint has been written into the shared memory, and notify the fingerprint sensor driver to trigger the operating system to perform user authentication.
  • the EC may send the third notification to the fingerprint sensor driver through the GPIO interface.
  • the third notification is transmitted based on the GPIO interface, which can improve the transmission efficiency of the third notification, thereby improving the efficiency of fingerprint interaction between the EC and the CPU.
  • the fingerprint sensor driver in response to the third notification, sends a fingerprint verification request to the operating system to request the operating system to perform user identity verification.
  • the EC proactively informs and requests the operating system to perform user identity verification, so as to prevent users other than the registered fingerprint user from forcibly shutting down the laptop 100, thereby avoiding the registered fingerprint user's Unsaved data is lost due to this forced shutdown operation.
  • the fingerprint sensor driver In response to the third notification, the fingerprint sensor driver also reads the user's fingerprint from the shared memory.
  • the fingerprint sensor driver sends the user fingerprint to the operating system.
  • the operating system can perform user identity verification according to the user fingerprint sent by the fingerprint sensor driver, and if the verification result is passed, the shutdown process will be executed. Specifically, the operating system can trigger components such as the EC and the power management unit to cooperate to complete the shutdown process.
  • the operating system can control the notebook computer 100 to enter the sleep state. If the verification result is that the verification fails, the operating system can also show the "incorrect shutdown interface" as shown in Figure 11.
  • the device may enter the sleep mode and display the "incorrect shutdown interface" as shown in FIG. 11.
  • the "Inadvertent Shutdown Interface” shown in FIG. 11 may display prompt messages of "The device is locked” and "No personnel other than the owner of the machine should continue to operate” 2001.
  • the method for logging in to the operating system provided in the third embodiment can prevent users other than the registered fingerprint user from pressing the power button of the device to turn off the device, and the device does not appear to be in the dormant state or the sleeping state of the notebook computer 100.
  • the saved information (such as the document being edited and unsaved in the device) is lost due to the forced shutdown of the device.
  • Embodiment 4 when the user's finger presses the power button, the notebook computer 100 is in the power-on state (S0). At this time, pressing the power button can have the following situations: 1. Short press the power button to sleep; 2. Long press the power button to shut down.
  • a long press means that the power key has been pressed for more than a specific time period (for example, 5 seconds), and a short press means that the power key has been pressed for no longer than the specific time period.
  • the EC can trigger the notebook computer 100 to sleep, and the notebook computer 100 will enter the sleep state.
  • the EC can trigger the notebook computer 100 to shut down, and the notebook computer 100 will enter the shutdown state.
  • S401 The notebook computer 100 detects that the power button is long pressed by the user's finger. For details, please refer to S301 in Embodiment 3, which will not be repeated here.
  • S402 When the user's finger presses the power button, the fingerprint sensor integrated with the power button can detect the touch of the user's finger and collect the user's fingerprint. For details, refer to S302 in Embodiment 3, which will not be repeated here.
  • the EC determines that the notebook computer 100 is in a working state when the user's finger presses the power button. EC is responsible for managing the operating status of the laptop.
  • the notebook computer 100 is in a working state, therefore, after the power button is pressed, there is no need to power on the CPU and other hardware devices, such as power on the screen and the fingerprint sensor.
  • the fingerprint sensor may notify the EC to obtain the user's fingerprint.
  • the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
  • the EC can write the encrypted user fingerprint into the shared memory.
  • the EC may send a notification to the fingerprint sensor driver to notify the fingerprint sensor driver that the user's fingerprint has been written into the shared memory.
  • the fingerprint sensor driver sends a fingerprint verification request to the operating system to request the operating system to perform user identity verification.
  • the fingerprint sensor driver In response to the notification, the fingerprint sensor driver also reads the user's fingerprint from the shared memory.
  • S413 The fingerprint sensor driver sends the user's fingerprint to the operating system.
  • S414 The operating system judges whether the notebook computer 100 is in a locked screen state. If the screen is locked, it means that the fingerprint-registered user has left the notebook computer 100, and S415 can be executed, that is, the user's identity needs to be verified before the shutdown process can be performed. If it is not in the lock screen state, it means that the fingerprint registered user is using the laptop 100, and there is no need to verify the user identity, and S416 can be executed, that is, the shutdown process will be executed directly.
  • S415 The operating system may perform user identity verification according to the user fingerprint sent by the fingerprint sensor driver. If the verification result is that the verification is passed, S416 may be executed, that is, the shutdown process may be executed. If the verification result is that the verification fails, the operating system can control the notebook computer 100 to enter the sleep state. If the verification result is that the verification fails, the operating system can also show the "incorrect shutdown interface" as shown in Figure 11.
  • the operating system executes a shutdown process. Specifically, the operating system can trigger components such as the EC and the power management unit to cooperate to complete the shutdown process.
  • the method for logging in to the operating system provided in Embodiment 4 is for the laptop 100 in a working state.
  • the laptop 100 When the laptop 100 is locked, it can prevent users other than the registered fingerprint user from pressing the power button of the device to turn off the device.
  • unsaved information in the device (such as editing and unsaved documents in the device) is lost due to the forced shutdown of the device.
  • the method for logging in to the operating system may further include: if the EC saves the user fingerprint for more than a certain period of time (For example, 3 seconds), the EC can delete the user's fingerprint if it has not detected that the power button has been pressed.
  • the previous embodiments respectively describe the method of triggering one-key startup and login by the user's finger pressing the power button when the notebook computer 100 is in different operating states.
  • the foregoing various embodiments can be implemented in combination.
  • the operating state of the notebook computer 100 when the user's finger presses the power button, or the length of time the user's finger presses the power source (short press or long press) can be determined to implement the foregoing embodiment 1.
  • the method for logging in to the operating system provided by a certain embodiment in embodiment 4. For example, when the user's finger presses the power button, if the running state of the notebook computer 100 is the shutdown state, the method for logging in to the operating system provided in Embodiment 1 can be executed.
  • the operating state of the notebook computer 100 is the sleep state or the sleep state when the user's finger presses the power button, the method for logging in to the operating system provided in Embodiment 2 can be executed.
  • the user identity verification mentioned in the previous embodiments is implemented by comparing the fingerprint template with the user fingerprint collected by the fingerprint sensor.
  • the following describes the entry process of the fingerprint template.
  • the login password is not set in the notebook computer 100
  • the CPU runs the operating system after being powered on, and the operating system desktop shown in FIG. 3B can be directly displayed.
  • the user can turn on the notebook computer 100 by pressing the power button, and directly log in to the operating system without passing identity verification.
  • the notebook computer 100 may display a "one-key login" fingerprint entry window 601 as shown in FIG. 14A on the operating system desktop shown in FIG. 3B.
  • the fingerprint template entry process can include:
  • S501 The notebook computer 100 detects that the power button is pressed.
  • the notebook computer 100 After the power button is pressed, the notebook computer 100 starts to be powered on. Specifically, the EC in the power-on state can power on various hardware devices (such as fingerprint sensors, BIOS, and CPU) according to the power-on sequence.
  • various hardware devices such as fingerprint sensors, BIOS, and CPU
  • the CPU After the CPU is powered on, it will run the operating system and load the fingerprint sensor driver. Then, the operating system will request the fingerprint sensor driver to provide the user's fingerprint. There are several purposes for the operating system to obtain user fingerprints: 1. Enter the fingerprint template; 2. Perform user identity verification. This embodiment relates to the second purpose.
  • the EC sends the fingerprint sensor configuration to the fingerprint sensor to enable the fingerprint sensor.
  • the BIOS initializes the memory.
  • the BIOS waits for the EC to initialize the internal hardware devices before starting to run.
  • the fingerprint sensor integrated with the power button can detect the touch of the user's finger and collect the user's fingerprint.
  • the fingerprint sensor may notify the EC to obtain the user's fingerprint.
  • the EC in response to the fingerprint sensor's notification, may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
  • the firmware program of the fingerprint encryption module can be loaded in the EC.
  • EC can encrypt the user's fingerprints stored in it through the pattern encryption module.
  • the BIOS may notify the EC of the shared memory address. Not shown, the BIOS can also notify the fingerprint sensor driver running in the CPU of the shared memory address.
  • the operating system may display a fingerprint entry window on the desktop of the operating system.
  • the operating system may display a fingerprint entry window 610 as shown in FIG. 14A on the desktop of the operating system.
  • the fingerprint entry window 610 may be a user interface provided by a fingerprint management APP.
  • the fingerprint entry window 610 may include a "fingerprint usage list” 611 and a "fingerprint list” 614.
  • the "fingerprint usage list” 611 may include at least one fingerprint usage option and its option switch.
  • the “fingerprint usage list” 611 may include the “operating system login” option and its option switch 612 and the “one-key boot login” option and its option switch 613.
  • the "fingerprint list” 614 may include an "add fingerprint” option 615.
  • the user can limit the use of user fingerprints added subsequently by turning on the option switch corresponding to the fingerprint use option in the "fingerprint use list" 611.
  • the option switch 613 of the "one-key power-on login" option in the "fingerprint usage list” 611 is in the on state, and the other option switches in the other "fingerprint usage list” 611 are in the off state; therefore 14A, when the user controls the cursor 620 to move to the “add fingerprint” option 615, click on the “add fingerprint” option 615 and perform subsequent fingerprint entry operations.
  • the entered user fingerprint can be used to perform the “one” of the notebook computer 100. Key to boot and login".
  • the operating system In response to the user's input command in the fingerprint entry window, the operating system sends a fingerprint entry request to the fingerprint sensor driver.
  • the fingerprint entry request may specifically come from a fingerprint management APP running on the operating system.
  • the fingerprint entry request is used to instruct the fingerprint sensor to drive to obtain the user fingerprint collected by the fingerprint sensor.
  • S515 In response to the fingerprint entry request from the operating system, the fingerprint sensor driver running in the CPU writes a fingerprint entry instruction to the shared memory to notify the EC to write the user fingerprint collected by the fingerprint sensor into the shared memory.
  • the fingerprint sensor driver sends a fifth notification (specific IO command) to the EC to trigger the EC to read the fingerprint entry command written by the fingerprint sensor driver from the shared memory. Specifically, the fingerprint sensor driver may send the fifth notification to the EC through the GPIO interface.
  • the EC may read the fingerprint entry instruction written by the fingerprint sensor driver from the shared memory.
  • the EC may send a sixth notification to the fingerprint sensor driver to notify the fingerprint sensor driver that the user's fingerprint has been written into the shared memory.
  • the fingerprint sensor driver may read the user fingerprint from the shared memory according to the sixth notification.
  • the fingerprint sensor driver has obtained the user fingerprint collected by the fingerprint sensor, and can send the user fingerprint to the operating system to support the operating system to set a fingerprint template according to the user fingerprint.
  • S521 The fingerprint sensor driver sends the user fingerprint to the operating system.
  • the operating system may save the user fingerprint as a fingerprint template. Specifically, the operating system may store the user fingerprint in a preset storage area in the local storage 206.
  • the preset storage area may be referred to as the first storage area.
  • the operating system can send a fingerprint entry instruction to the fingerprint sensor driver (ie, execute S514) , And display the first prompt information 630 in the fingerprint entry window 610 as shown in FIG. 14B.
  • the first prompt information 630 may include "Use fingerprints instead of passwords to implement device'one-key boot login'” and "First, Please put your thumb or other fingers on the "power button”” prompt text. Subsequently, as shown in FIG.
  • the fingerprint sensor 102 when the user's mobile phone touches the "power button" 101, the fingerprint sensor 102 can collect the user's fingerprint, and the EC can also obtain and save the user fingerprint collected by the fingerprint sensor 102, that is, execute S506-S510 .
  • the fingerprint sensor driver may obtain the user fingerprint collected by the fingerprint sensor 102 from the EC after receiving the fingerprint entry instruction (that is, execute S515-S520).
  • the EC may not obtain the user fingerprint immediately, but waits for the aforementioned specific IO command sent by the fingerprint sensor driver, and then obtains it from the fingerprint sensor User fingerprint.
  • the operating system may display the second prompt message 640 and the fingerprint filling window 650 in the fingerprint entry window 610 as shown in FIG. 15B.
  • the second prompt message 640 may be an instruction text including "Put your finger on the'power button'" and then remove, repeat this operation.”
  • the fingerprint filling window 650 can display a dynamic image in which the fingerprint lines in the fingerprint filling window 650 are gradually being filled.
  • the operating system can display a fingerprint entry window 610 as shown in FIG. 16.
  • the fingerprint entry window 610 may display the third prompt information 660 and the fingerprint filling window and 650 filled with fingerprint lines.
  • the third prompt message 660 may include an instruction text that "fingerprints have been entered, you can only enter your fingerprints to achieve "one-key startup and login" of the device".
  • the operating system may also display a fingerprint entry window 610 as shown in FIG. 17 after the fingerprint entry is completed.
  • the "fingerprint list" 614 of the fingerprint entry window 610 shown in FIG. 17 is increased by "fingerprint 1" 616 compared to the "fingerprint list” 614 of the fingerprint entry window 610 shown in FIG. 14A.
  • the "fingerprint 1" 616 can be used to implement "one-key startup and login" of the device.
  • the user can enter multiple fingerprints of different fingers in the notebook computer 100, which is convenient for Use different fingers to press the power button of the notebook computer 100 to realize the "one-key power-on login" of the notebook computer 100.
  • the fingerprint template entry process can also include: If the EC saves the user’s fingerprint for more than a certain period of time (such as 3 seconds) and has not received a fingerprint entry instruction from the fingerprint sensor driver, the EC can be deleted The user's fingerprint.
  • the operating system may not be able to send fingerprint entry instructions to the fingerprint sensor driver in time due to system failures or other reasons, resulting in the fingerprint sensor driver being unable to send fingerprint entry instructions to the EC in time. Or, the operating system sends the fingerprint entry instruction to the fingerprint sensor driver in time, but the fingerprint sensor driver fails to send the fingerprint entry instruction to the EC in time. In this way, the operating system will not be able to enter the fingerprint template in time, and there is a risk of confusion or theft of the fingerprint template entry.
  • the previous embodiments described the method for logging in to the operating system provided by this application by taking a laptop computer as an example.
  • the method is not limited to a laptop computer.
  • the method provided by this application can also be applied to other types of electronic devices, such as mobile phones.
  • FIG. 18 exemplarily shows a mobile phone 700 to which the method for logging in to an operating system provided by this application is applied.
  • the mobile phone 700 may include a power button 701 and a fingerprint sensor 702, and the power button 701 and the fingerprint sensor 702 are integrated.
  • the hardware architecture and software architecture of the mobile phone 700 can be implemented with reference to FIGS. 5-7.
  • the EC in the aforementioned notebook computer 100 may be a boot circuit corresponding to the mobile phone 700, such as a power integrated circuit (IC).
  • the boot circuit may be It has strong computing power and can encrypt user fingerprints.
  • the power button 701 of the mobile phone 700 in the shutdown state is pressed by the user's finger.
  • the user's finger presses the power button 701
  • the user's finger will definitely touch the fingerprint sensor 702. Therefore, when it is detected that the user's finger presses the power button 701, the fingerprint sensor 702 of the mobile phone 700 can collect the user's fingerprint.
  • the mobile phone 700 starts up, and at the same time, the user's fingerprint collected by the fingerprint sensor can be directly used for user identity verification. If the verification is passed, the mobile phone is unlocked and the home screen shown in 703 (home screen) interface.
  • the mobile phone 700 in the off state can be turned on and logged into the operating system, which is simple and efficient. Moreover, the integration level can be improved, which is conducive to the miniaturization of mobile phones.
  • the device includes functional modules corresponding to each function.
  • the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed by hardware or computer software-driven hardware depends on the specific application and design constraint conditions of the technical solution. Professionals and technicians can use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of this application.
  • each module or unit may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware, or in the form of software modules or units. Among them, the division of modules or units in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
  • the embodiment of the present invention also provides a computer storage medium, the computer storage medium stores computer program code, when the processor of the electronic device executes the computer program code, the device executes the relevant method steps in any of the foregoing embodiments.
  • the embodiment of the present invention also provides a computer program product, which when the computer program product runs on a computer, causes the computer to execute the relevant method steps in any of the foregoing embodiments to implement the device booting method in the foregoing embodiment.
  • the electronic device, computer storage medium or computer program product provided in the embodiments of the present invention are all used to execute the corresponding method provided above. Therefore, the beneficial effects that can be achieved can refer to the corresponding method provided above The beneficial effects in the process will not be repeated here.
  • the disclosed system, device, and method can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the modules or units is only a logical function division.
  • there may be other division methods for example, multiple units or components may be It can be combined or integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of the present application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , Including several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor execute all or part of the steps of the method described in each embodiment of the present application.
  • the aforementioned storage media include: flash memory, mobile hard disk, read-only memory, random access memory, magnetic disk or optical disk and other media that can store program codes.

Abstract

An electronic device and an method for logging in operating system, wherein the electronic device comprises a power key and a fingerprint sensor (102), and the fingerprint sensor (102) and power key are integrated in one. The electronic device further comprises an EC (107), and a CPU (105). When a user's finger presses the power key, the fingerprint sensor (102) may also acquire the user's fingerprint, and the fingerprint is transmitted to the EC (107) for encryption and caching. After the CPU (105) loads and starts the operating system, it obtains the fingerprint from the EC (107) to perform user identity authentication according to the fingerprint from the EC (107), which can support the user to quickly log in the operating system. Moreover, the architecture of the electronic device no longer needs an MCU provided by a fingerprint sensor manufacturer, can reduce the cost, and improve the integration level.

Description

一种电子设备及登录操作系统的方法Electronic equipment and method for logging in to operating system
本申请要求于2019年11月30日提交中国专利局、申请号为201911212056.2、申请名称为“一种电子设备及登录操作系统的方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the Chinese Patent Office, the application number is 201911212056.2, and the application name is "An electronic device and a method for logging in to an operating system" on November 30, 2019, the entire content of which is incorporated by reference In this application.
技术领域Technical field
本申请涉及电子技术领域,尤其涉及一种电子设备及登录操作系统的方法。This application relates to the field of electronic technology, and in particular to an electronic device and a method for logging in to an operating system.
背景技术Background technique
随着信息技术的快速发展,笔记本电脑等电子设备的使用越来越普及。为了提高用户信息的安全性,在用户登录操作系统时,笔记本电脑可为用户提供安全认证。安全认证可以是密码验证、指纹验证或人脸验证等等。传统的登录操作系统的方式是:用户按下电源键开机,然后通过输入密码/指纹解锁/人脸扫描等方式进行安全认证,最后登录操作系统。这种传统方式存在登录效率低、用户操作繁琐的问题。With the rapid development of information technology, the use of electronic devices such as notebook computers has become more and more popular. In order to improve the security of user information, when the user logs in to the operating system, the notebook computer can provide the user with security authentication. Security authentication can be password verification, fingerprint verification or face verification, etc. The traditional way to log in to the operating system is: the user presses the power button to turn on, then enters the password/fingerprint unlocking/face scan and other methods for security authentication, and finally logs into the operating system. This traditional method has the problems of low login efficiency and cumbersome user operations.
发明内容Summary of the invention
本申请提供一种电子设备及登录操作系统的方法,可在电子设备开机的同时进行用户身份认证,以登录电子设备的操作系统,可提高登录效率,简化用户操作。而且,该电子设备的架构不再需要指纹传感器厂商提供的MCU,可降低成本,提高集成度。This application provides an electronic device and a method for logging in to an operating system, which can perform user identity authentication while the electronic device is turned on to log in to the operating system of the electronic device, which can improve login efficiency and simplify user operations. Moreover, the architecture of the electronic device no longer requires the MCU provided by the fingerprint sensor manufacturer, which can reduce costs and improve integration.
第一方面,提供了一种电子设备,该电子设备如图5示例性所示,可包括:电源按键、指纹传感器102、EC 107、CPU 105。其中,In the first aspect, an electronic device is provided. As shown in FIG. 5 exemplarily, the electronic device may include a power button, a fingerprint sensor 102, an EC 107, and a CPU 105. among them,
指纹传感器102和电源键101集成于一体。例如,指纹传感器102可粘贴或印制在电源键101的表面。该表面可在用户按压电源键101时接触到用户手指。这样,可实现在用户按压电源键101的同时,指纹传感器102可采集到用户的指纹。The fingerprint sensor 102 and the power button 101 are integrated. For example, the fingerprint sensor 102 can be pasted or printed on the surface of the power button 101. This surface can touch the user's finger when the user presses the power button 101. In this way, it can be realized that while the user presses the power button 101, the fingerprint sensor 102 can collect the user's fingerprint.
EC 107是一个单独的处理器。EC 107可连接指纹传感器102,EC 107与指纹传感器102之间可通过SPI接口进行通信,例如EC 107向指纹传感器102发送指纹获取请求、指纹传感器102向EC 107传输采集到的指纹。EC 107内可加载有指纹加密模块这一固件程序。指纹加密模块可负责对来自指纹传感器102的指纹进行加密。EC 107可具有存储器,可存储加密后的指纹,以响应后续来自CPU 105的指纹录入指令、指纹验证指令而将加密后的指纹传输给CPU 105。EC 107 is a separate processor. The EC 107 can be connected to the fingerprint sensor 102, and the EC 107 and the fingerprint sensor 102 can communicate through an SPI interface. For example, the EC 107 sends a fingerprint acquisition request to the fingerprint sensor 102, and the fingerprint sensor 102 transmits the collected fingerprint to the EC 107. The firmware program of fingerprint encryption module can be loaded in EC 107. The fingerprint encryption module may be responsible for encrypting the fingerprint from the fingerprint sensor 102. The EC 107 may have a memory, which can store the encrypted fingerprint, and transmit the encrypted fingerprint to the CPU 105 in response to subsequent fingerprint entry instructions and fingerprint verification instructions from the CPU 105.
EC 107可连接CPU 105。EC 107和CPU 105之间可通过GPIO接口进行通信。这种通信可包括:EC 107通过GPIO的某一个或一些管脚向CPU 105发送中断信号(如通知)、CPU 105通过某一个或某一些管脚向EC 107发送中断信号(如通知)。基于GPIO接口的通信效率很高。为了实现EC 107和CPU 105之间传输用户指纹,引入了一种软体通信接口,可用于EC 107和CPU 105之间进行关于用户指纹的通信。该软件通信接口可称为第一接口。第一接口可基于共享内存实现EC 107和CPU 105之间的通信。EC 107、CPU 105都可通过但不限于增强型SPI接口连接到共享内存,以通过ESPI写入数据到共享内存或从 共享内存中读取数据。EC 107 can be connected to CPU 105. The EC 107 and CPU 105 can communicate through the GPIO interface. Such communication may include: the EC 107 sends an interrupt signal (such as notification) to the CPU 105 through a certain pin or pins of the GPIO, and the CPU 105 sends an interrupt signal (such as a notification) to the EC 107 through a certain pin or some pins. The communication efficiency based on the GPIO interface is very high. In order to realize the transmission of user fingerprints between EC 107 and CPU 105, a software communication interface is introduced, which can be used to communicate user fingerprints between EC 107 and CPU 105. This software communication interface may be referred to as the first interface. The first interface can realize the communication between the EC 107 and the CPU 105 based on the shared memory. Both EC 107 and CPU 105 can be connected to the shared memory through but not limited to the enhanced SPI interface to write data to or read data from the shared memory through ESPI.
CPU 105中加载有指纹传感器驱动。加载了指纹传感器驱动的CPU 105可通过第一接口和EC 107通信,例如CPU 105向EC 107发送指纹录入指令或指纹验证指令、EC 107向CPU 105传输缓存在EC 107的存储器中的指纹。CPU 105可用于根据来自EC 107的指纹进行用户身份验证。如果来自EC 107的指纹与预先录入并存储在笔记本电脑100中的指纹模板一致,则验证通过;否则,验证未通过。The fingerprint sensor driver is loaded in the CPU 105. The CPU 105 loaded with the fingerprint sensor driver can communicate with the EC 107 through the first interface. For example, the CPU 105 sends a fingerprint entry instruction or a fingerprint verification instruction to the EC 107, and the EC 107 transmits the fingerprint cached in the memory of the EC 107 to the CPU 105. The CPU 105 can be used to perform user identity verification based on the fingerprint from the EC 107. If the fingerprint from the EC 107 is consistent with the fingerprint template pre-entered and stored in the notebook computer 100, the verification is passed; otherwise, the verification fails.
当电源键101被用户手指按下后,EC 104通知指纹传感器102、CPU 105上电。上电后的指纹传感器102可采集到用户指纹,该指纹传输给EC 104加密并缓存。CPU 105加载启动操作系统后,通过第一接口获取来自EC 104的指纹,以根据来自EC 104的指纹进行用户身份验证。若验证通过,CPU 105可指令显示屏(未示出)显示图3B所示的系统桌面。When the power button 101 is pressed by the user's finger, the EC 104 notifies the fingerprint sensor 102 and the CPU 105 to power on. The fingerprint sensor 102 after power-on can collect the user's fingerprint, and the fingerprint is transmitted to the EC 104 for encryption and buffering. After the CPU 105 loads and starts the operating system, it obtains the fingerprint from the EC 104 through the first interface to perform user identity verification based on the fingerprint from the EC 104. If the verification is passed, the CPU 105 can instruct the display screen (not shown) to display the system desktop shown in FIG. 3B.
可以看出,第一方面提供的电子设备,可实现一键完成开机和身份认证,可支持用户快速登录操作系统。而且,第一方面提供的电子设备可降低成本,提高集成度,有利于笔记本电脑小型化。It can be seen that the electronic device provided in the first aspect can realize one-click power-on and identity authentication, and can support users to quickly log in to the operating system. Moreover, the electronic equipment provided by the first aspect can reduce costs and improve integration, which is conducive to miniaturization of notebook computers.
第二方面,提供了一种登录操作系统的方法,该方法应用于第一方面提供的电子设备。该方法可包括:EC检测到电源键被用户手指按下,获取指纹传感器采集的用户指纹。指纹传感器在电源键被用户手指按下时采集指纹。EC加密用户指纹,存储加密后的用户指纹在EC的内部存储空间中。然后,EC通过第一接口获取来自CPU的指纹验证指令。响应指纹验证指令,EC通过第一接口向CPU传输加密后的用户指纹。CPU根据用户指纹进行用户身份验证,若验证通过,则登录电子设备的操作系统。In the second aspect, a method for logging in to an operating system is provided, and the method is applied to the electronic device provided in the first aspect. The method may include: the EC detects that the power button is pressed by the user's finger, and obtains the user's fingerprint collected by the fingerprint sensor. The fingerprint sensor collects fingerprints when the power button is pressed by the user's finger. EC encrypts user fingerprints, and stores the encrypted user fingerprints in the internal storage space of EC. Then, the EC obtains the fingerprint verification instruction from the CPU through the first interface. In response to the fingerprint verification instruction, the EC transmits the encrypted user fingerprint to the CPU through the first interface. The CPU performs user identity verification according to the user's fingerprint, and if the verification is passed, it logs in to the operating system of the electronic device.
可以看出,第二方面提供的方法中,通过按下电源键,便可将处于关机状态(S5)笔记本电脑开机,并登录操作系统,简单高效。而且,电子设备不再需要指纹传感器厂商提供的MCU(如图4中的MCU 103),可降低成本,提高集成度,有利于笔记本电脑小型化。It can be seen that in the method provided by the second aspect, by pressing the power button, the notebook computer in the shutdown state (S5) can be turned on and logged in to the operating system, which is simple and efficient. Moreover, the electronic equipment no longer needs the MCU provided by the fingerprint sensor manufacturer (MCU 103 in Figure 4), which can reduce costs, improve integration, and facilitate the miniaturization of notebook computers.
结合第二方面,在一些实施例中,在EC和CPU之间通过第一接口进行通信之前,BIOS向EC、CPU通知共享内存的地址。该共享内存用于EC和CPU后续交换数据。这样,EC、CPU便可根据该共享内存的地址,通过该共享内存交换数据(如指纹、指纹验证指令、指纹录入指令等),实现通讯。With reference to the second aspect, in some embodiments, before communicating between the EC and the CPU through the first interface, the BIOS notifies the EC and the CPU of the address of the shared memory. The shared memory is used for subsequent exchange of data between the EC and the CPU. In this way, the EC and the CPU can exchange data (such as fingerprints, fingerprint verification instructions, fingerprint entry instructions, etc.) through the shared memory according to the address of the shared memory to realize communication.
结合第二方面,在一些实施例中,为了进一步提高用户信息安全性,在通过第一接口向CPU传输加密后的用户指纹后,EC可删除存储在EC内部的用户指纹。也即是说,EC向共享内存中写入用户指纹之后便删除EC内存储的用户指纹。这样,可提高指纹注册用户的信息安全性,避免其他用户通过遗留在EC中的注册用户的指纹登录操作系统。这里,指纹注册用户是指提前录入指纹模板的用户。With reference to the second aspect, in some embodiments, in order to further improve user information security, after transmitting the encrypted user fingerprint to the CPU through the first interface, the EC may delete the user fingerprint stored in the EC. In other words, after the EC writes the user fingerprint into the shared memory, the user fingerprint stored in the EC is deleted. In this way, the information security of fingerprint registered users can be improved, and other users can be prevented from logging in to the operating system through the fingerprints of registered users left in the EC. Here, a fingerprint registered user refers to a user who has entered a fingerprint template in advance.
结合第二方面,在一些实施例中,为了进一步提高用户信息安全性,如果EC保存用户指纹的时间超过特定时长(如3秒),还未收到来自指纹传感器驱动的指纹验证指令,则EC可删除该用户指纹。该特定时长可称为第一时间。In combination with the second aspect, in some embodiments, in order to further improve the security of user information, if the EC saves the user's fingerprint for more than a certain period of time (such as 3 seconds) and has not received a fingerprint verification instruction from the fingerprint sensor driver, the EC The user fingerprint can be deleted. This specific duration can be referred to as the first time.
结合第二方面,在一些实施例中,在EC通过第一接口获取来自CPU的指纹验证指令之前,CPU向共享内存中写入指纹验证指令。具体的,运行在CPU上的操作系统向运行在CPU上的指纹传感器驱动发送指纹验证请求。然后,响应指纹验证请求,运行在CPU上的指纹传感器驱动向共享内存中写入指纹验证指令。With reference to the second aspect, in some embodiments, before the EC obtains the fingerprint verification instruction from the CPU through the first interface, the CPU writes the fingerprint verification instruction into the shared memory. Specifically, the operating system running on the CPU sends a fingerprint verification request to the fingerprint sensor driver running on the CPU. Then, in response to the fingerprint verification request, the fingerprint sensor driver running on the CPU writes a fingerprint verification instruction to the shared memory.
结合第二方面,在一些实施例中,CPU和EC之间还可通过通用型输入输出接口GPIO接口通信。在CPU向共享内存中写入指纹验证指令之后,CPU通过GPIO接口向EC发送第一通知。第一通知可用于通知EC从共享内存中读取指纹验证指令。With reference to the second aspect, in some embodiments, the CPU and the EC can also communicate through a universal input and output interface GPIO interface. After the CPU writes the fingerprint verification instruction to the shared memory, the CPU sends the first notification to the EC through the GPIO interface. The first notification can be used to notify the EC to read the fingerprint verification instruction from the shared memory.
结合第二方面,在一些实施例中,EC通过第一接口获取来自CPU的指纹验证指令,具体可包括:EC可通过第一接口从共享内存中读取CPU写入到共享内存中的指纹验证指令。With reference to the second aspect, in some embodiments, the EC obtains the fingerprint verification instruction from the CPU through the first interface, which may specifically include: the EC can read from the shared memory through the first interface the fingerprint verification written by the CPU to the shared memory instruction.
结合第二方面,在一些实施例中,EC通过第一接口向CPU传输加密后的用户指纹,具体可包括:EC通过第一接口将加密后的用户指纹写入共享内存。然后,CPU从共享内存中读取加密后的用户指纹。With reference to the second aspect, in some embodiments, the EC transmits the encrypted user fingerprint to the CPU through the first interface, which may specifically include: the EC writes the encrypted user fingerprint into the shared memory through the first interface. Then, the CPU reads the encrypted user fingerprint from the shared memory.
具体的,CPU从共享内存中读取加密后的用户指纹,可包括:运行在CPU上的指纹传感器驱动从共享内存中读取加密后的用户指纹。运行在CPU上的指纹传感器驱动向运行在CPU上的操作系统发送加密后的用户指纹。Specifically, the CPU reading the encrypted user fingerprint from the shared memory may include: a fingerprint sensor driver running on the CPU reads the encrypted user fingerprint from the shared memory. The fingerprint sensor driver running on the CPU sends the encrypted user fingerprint to the operating system running on the CPU.
结合第二方面,在一些实施例中,CPU和EC之间还通过通用型输入输出接口GPIO接口通信。在EC通过第一接口将加密后的用户指纹写入共享内存之后,EC通过GPIO接口向CPU发送第二通知。第二通知用于通知CPU从共享内存中读取加密后的用户指纹。With reference to the second aspect, in some embodiments, the CPU and the EC also communicate via a universal input and output interface GPIO interface. After the EC writes the encrypted user fingerprint into the shared memory through the first interface, the EC sends a second notification to the CPU through the GPIO interface. The second notification is used to notify the CPU to read the encrypted user fingerprint from the shared memory.
结合第二方面,在一些实施例中,CPU根据用户指纹进行用户身份验证,若验证通过,则登录操作系统,具体可包括:CPU判断用户指纹与电子设备的第一存储区域中的指纹模板是否一致,若一致,则验证通过,登录操作系统。With reference to the second aspect, in some embodiments, the CPU performs user identity verification based on the user's fingerprint. If the verification is passed, logging in to the operating system may specifically include: the CPU determining whether the user's fingerprint is related to the fingerprint template in the first storage area of the electronic device If they are consistent, the verification is passed and the operating system is logged in.
第三方面,提供了一种芯片系统,该芯片系统可包括嵌入式控制器和处理器CPU,嵌入式控制器和处理器CPU集成于第一方面描述的电子设备中,该电子设备还可包括电源键、指纹传感器。电源键和指纹传感器集成于一体。其中,In a third aspect, a chip system is provided. The chip system may include an embedded controller and a processor CPU. The embedded controller and the processor CPU are integrated in the electronic device described in the first aspect. The electronic device may also include Power button, fingerprint sensor. The power button and fingerprint sensor are integrated. among them,
EC可用于检测到电源键被用户手指按下,获取指纹传感器采集的用户指纹。指纹传感器在电源键被用户手指按下时采集指纹。EC还可用于加密用户指纹,存储加密后的用户指纹在EC的内部存储空间中。EC还可用于通过第一接口获取来自CPU的指纹验证指令。响应指纹验证指令,EC可通过第一接口向CPU传输加密后的用户指纹。CPU可用于根据用户指纹进行用户身份验证,若验证通过,则登录电子设备的操作系统。EC can be used to detect that the power button is pressed by the user's finger, and obtain the user's fingerprint collected by the fingerprint sensor. The fingerprint sensor collects fingerprints when the power button is pressed by the user's finger. EC can also be used to encrypt user fingerprints, and the encrypted user fingerprints are stored in the internal storage space of EC. The EC can also be used to obtain fingerprint verification instructions from the CPU through the first interface. In response to the fingerprint verification instruction, the EC can transmit the encrypted user fingerprint to the CPU through the first interface. The CPU can be used to perform user identity verification based on the user's fingerprint, and if the verification is passed, log in to the operating system of the electronic device.
可以看出,第三方面提供的芯片系统,集成于第一方面描述的电子设备中,可实现一键开机登录,而且,可使得电子设备不再需要指纹传感器厂商提供的MCU(如图4中的MCU 103),可降低成本,提高集成度,有利于笔记本电脑小型化。It can be seen that the chip system provided by the third aspect is integrated into the electronic device described in the first aspect, which can realize one-key boot and login, and can make the electronic device no longer need the MCU provided by the fingerprint sensor manufacturer (as shown in Figure 4) MCU 103), which can reduce costs and improve integration, which is conducive to the miniaturization of notebook computers.
结合第三方面,在一些实施例中,BIOS可用于,在EC和CPU之间通过第一接口进行通信之前,向EC、CPU通知共享内存的地址。该共享内存用于EC和CPU后续交换数据。这样,EC、CPU便可根据该共享内存的地址,通过该共享内存交换数据(如指纹、指纹验证指令、指纹录入指令等),实现通讯。With reference to the third aspect, in some embodiments, the BIOS may be used to notify the EC and the CPU of the address of the shared memory before the communication between the EC and the CPU through the first interface. The shared memory is used for subsequent exchange of data between the EC and the CPU. In this way, the EC and the CPU can exchange data (such as fingerprints, fingerprint verification instructions, fingerprint entry instructions, etc.) through the shared memory according to the address of the shared memory to realize communication.
结合第三方面,在一些实施例中,为了进一步提高用户信息安全性,EC可用于在通过第一接口向CPU传输加密后的用户指纹后,删除存储在EC内部的用户指纹。也即是说,EC向共享内存中写入用户指纹之后便删除EC内存储的用户指纹。这样,可提高指纹注册用户的信息安全性,避免其他用户通过遗留在EC中的注册用户的指纹登录操作系统。这里,指纹注册用户是指提前录入指纹模板的用户。In combination with the third aspect, in some embodiments, in order to further improve user information security, the EC can be used to delete the user fingerprint stored in the EC after transmitting the encrypted user fingerprint to the CPU through the first interface. In other words, after the EC writes the user fingerprint into the shared memory, the user fingerprint stored in the EC is deleted. In this way, the information security of fingerprint registered users can be improved, and other users can be prevented from logging in to the operating system through the fingerprints of registered users left in the EC. Here, a fingerprint registered user refers to a user who has entered a fingerprint template in advance.
结合第三方面,在一些实施例中,为了进一步提高用户信息安全性,EC可用于,如果EC保存用户指纹的时间超过特定时长(如3秒),还未收到来自指纹传感器驱动的指纹验证指令,则删除该用户指纹。In combination with the third aspect, in some embodiments, in order to further improve the security of user information, EC can be used if the EC saves the user's fingerprint for more than a certain period of time (for example, 3 seconds), and has not received fingerprint verification from the fingerprint sensor driver. Command, delete the user's fingerprint.
结合第三方面,在一些实施例中,CPU可用于,在EC通过第一接口获取来自CPU的指纹验证指令之前,向共享内存中写入指纹验证指令。具体的,运行在CPU上的操作系统向运行在CPU上的指纹传感器驱动发送指纹验证请求。然后,响应指纹验证请求,运行在CPU上的指纹传感器驱动向共享内存中写入指纹验证指令。With reference to the third aspect, in some embodiments, the CPU may be used to write the fingerprint verification instruction to the shared memory before the EC obtains the fingerprint verification instruction from the CPU through the first interface. Specifically, the operating system running on the CPU sends a fingerprint verification request to the fingerprint sensor driver running on the CPU. Then, in response to the fingerprint verification request, the fingerprint sensor driver running on the CPU writes a fingerprint verification instruction to the shared memory.
结合第三方面,在一些实施例中,CPU和EC之间还可通过通用型输入输出接口GPIO接口通信。CPU可用于,在CPU向共享内存中写入指纹验证指令之后,通过GPIO接口向EC发送第一通知。第一通知可用于通知EC从共享内存中读取指纹验证指令。With reference to the third aspect, in some embodiments, the CPU and the EC can also communicate through a universal input and output interface GPIO interface. The CPU can be used to send a first notification to the EC through the GPIO interface after the CPU writes a fingerprint verification instruction to the shared memory. The first notification can be used to notify the EC to read the fingerprint verification instruction from the shared memory.
结合第三方面,在一些实施例中,EC可具体用于通过第一接口从共享内存中读取CPU写入到共享内存中的指纹验证指令。With reference to the third aspect, in some embodiments, the EC may be specifically used to read the fingerprint verification instruction written by the CPU into the shared memory from the shared memory through the first interface.
结合第三方面,在一些实施例中,EC可具体用于,通过第一接口将加密后的用户指纹写入共享内存。然后,CPU从共享内存中读取加密后的用户指纹。With reference to the third aspect, in some embodiments, the EC may be specifically used to write the encrypted user fingerprint into the shared memory through the first interface. Then, the CPU reads the encrypted user fingerprint from the shared memory.
具体的,CPU从共享内存中读取加密后的用户指纹,可包括:运行在CPU上的指纹传感器驱动从共享内存中读取加密后的用户指纹。运行在CPU上的指纹传感器驱动向运行在CPU上的操作系统发送加密后的用户指纹。Specifically, the CPU reading the encrypted user fingerprint from the shared memory may include: a fingerprint sensor driver running on the CPU reads the encrypted user fingerprint from the shared memory. The fingerprint sensor driver running on the CPU sends the encrypted user fingerprint to the operating system running on the CPU.
结合第三方面,在一些实施例中,CPU和EC之间还通过通用型输入输出接口GPIO接口通信。EC可用于,在EC通过第一接口将加密后的用户指纹写入共享内存之后,通过GPIO接口向CPU发送第二通知。第二通知用于通知CPU从共享内存中读取加密后的用户指纹。With reference to the third aspect, in some embodiments, the CPU and the EC also communicate via a universal input and output interface GPIO interface. The EC can be used to send a second notification to the CPU through the GPIO interface after the EC writes the encrypted user fingerprint into the shared memory through the first interface. The second notification is used to notify the CPU to read the encrypted user fingerprint from the shared memory.
结合第三方面,在一些实施例中,CPU可具体用于,判断用户指纹与电子设备的第一存储区域中的指纹模板是否一致,若一致,则验证通过,登录操作系统。With reference to the third aspect, in some embodiments, the CPU may be specifically used to determine whether the user fingerprint is consistent with the fingerprint template in the first storage area of the electronic device. If they are consistent, the verification is passed and the operating system is logged in.
第四方面,提供了一种计算机可读存储介质,可读存储介质上存储有指令,指令运行在第一方面描述的电子设备的处理器CPU中。该电子设备还包括电源键、指纹传感器、嵌入式控制器EC;电源键和指纹传感器集成于一体。其中,EC连接指纹传感器;EC和CPU之间通过第一接口进行通信,第一接口为基于EC与CPU之间的共享内存创建的软件通信接口。In a fourth aspect, a computer-readable storage medium is provided, and instructions are stored on the readable storage medium, and the instructions run in the processor CPU of the electronic device described in the first aspect. The electronic device also includes a power button, a fingerprint sensor, and an embedded controller EC; the power button and the fingerprint sensor are integrated. Among them, the EC is connected to the fingerprint sensor; the EC and the CPU communicate through a first interface, and the first interface is a software communication interface created based on the shared memory between the EC and the CPU.
当指令在电子设备的处理器CPU中运行时,可使得处理器CPU执行如下步骤:When the instruction runs in the processor CPU of the electronic device, the processor CPU can be made to execute the following steps:
CPU向EC传输指纹验证指令;CPU transmits fingerprint verification instructions to EC;
CPU接收EC发送的加密后的用户指纹;The CPU receives the encrypted user fingerprint sent by the EC;
CPU根据用户指纹进行用户身份验证,若验证通过,则登录电子设备的操作系统。The CPU performs user identity verification according to the user's fingerprint, and if the verification is passed, it logs in to the operating system of the electronic device.
其中,CPU向EC传输指纹验证指令,具体可包括:CPU向共享内存中写入指纹验证指令。Wherein, the CPU transmits the fingerprint verification instruction to the EC, which may specifically include: the CPU writes the fingerprint verification instruction into the shared memory.
其中,CPU接收EC发送的加密后的用户指纹,具体可包括:CPU从共享内存中读取加密后的用户指纹。Wherein, the CPU receiving the encrypted user fingerprint sent by the EC may specifically include: the CPU reads the encrypted user fingerprint from the shared memory.
第五方面,提供了一种包含指令的计算机程序产品,计算机程序产品运行在第一方面描述的电子设备的处理器CPU中。该电子设备还包括电源键、指纹传感器、嵌入式控制器 EC;电源键和指纹传感器集成于一体。其中,EC连接指纹传感器;EC和CPU之间通过第一接口进行通信,第一接口为基于EC与CPU之间的共享内存创建的软件通信接口。In a fifth aspect, a computer program product containing instructions is provided, and the computer program product runs in the processor CPU of the electronic device described in the first aspect. The electronic device also includes a power button, a fingerprint sensor, and an embedded controller EC; the power button and the fingerprint sensor are integrated. Among them, the EC is connected to the fingerprint sensor; the EC and the CPU communicate through a first interface, and the first interface is a software communication interface created based on the shared memory between the EC and the CPU.
当计算机程序产品在第一方面描述的电子设备的处理器CPU上运行时,可使得处理器CPU执行如下步骤:When the computer program product runs on the processor CPU of the electronic device described in the first aspect, the processor CPU can be caused to execute the following steps:
CPU向EC传输指纹验证指令;CPU transmits fingerprint verification instructions to EC;
CPU接收EC发送的加密后的用户指纹;The CPU receives the encrypted user fingerprint sent by the EC;
CPU根据用户指纹进行用户身份验证,若验证通过,则登录电子设备的操作系统。The CPU performs user identity verification according to the user's fingerprint, and if the verification is passed, it logs in to the operating system of the electronic device.
其中,CPU向EC传输指纹验证指令,具体可包括:CPU向共享内存中写入指纹验证指令。Wherein, the CPU transmits the fingerprint verification instruction to the EC, which may specifically include: the CPU writes the fingerprint verification instruction into the shared memory.
其中,CPU接收EC发送的加密后的用户指纹,具体可包括:CPU从共享内存中读取加密后的用户指纹。Wherein, the CPU receiving the encrypted user fingerprint sent by the EC may specifically include: the CPU reads the encrypted user fingerprint from the shared memory.
附图说明Description of the drawings
图1A示例性示出了本申请实施例提供的一种典型电子设备;FIG. 1A exemplarily shows a typical electronic device provided by an embodiment of the present application;
图1B示例性示出了图1A所示电子设备的电源键和指纹传感器的设置;FIG. 1B exemplarily shows the settings of the power button and fingerprint sensor of the electronic device shown in FIG. 1A;
图2A-图2D示例性示出了传统的笔记本电脑的开机以及操作系统登录过程;Figures 2A-2D exemplarily show the booting and operating system login process of a traditional notebook computer;
图3A-图3B示例性示出了图1A所示的笔记本电脑的开机以及系统登录过程;3A-3B exemplarily show the booting and system login process of the notebook computer shown in FIG. 1A;
图4示例性示出了应用于图1A所示的笔记本电脑的一种现有硬件架构;FIG. 4 exemplarily shows an existing hardware architecture applied to the notebook computer shown in FIG. 1A;
图5示例性示出了本申请提供了一种应用于图1A所示的笔记本电脑的新硬件架构;FIG. 5 exemplarily shows that the present application provides a new hardware architecture applied to the notebook computer shown in FIG. 1A;
图6示出了基于图5所示的硬件架构的应用于图1A所示的笔记本电脑的软件架构;FIG. 6 shows a software architecture applied to the notebook computer shown in FIG. 1A based on the hardware architecture shown in FIG. 5;
图7示例性示出了在笔记本电脑100中实施本申请提供的操作系统登录方法的方案;FIG. 7 exemplarily shows a solution for implementing the operating system login method provided by this application in the notebook computer 100;
图8示出了本申请的一个实施例提供的登录操作系统的方法;FIG. 8 shows a method for logging in to an operating system provided by an embodiment of the present application;
图9示出了本申请的另一个实施例提供的登录操作系统的方法;FIG. 9 shows a method for logging in to an operating system provided by another embodiment of the present application;
图10示出了本申请的另一个实施例提供的登录操作系统的方法;FIG. 10 shows a method for logging in to an operating system provided by another embodiment of the present application;
图11示例性示出了“误关机界面”;Figure 11 exemplarily shows the "incorrect shutdown interface";
图12示出了本申请的另一个实施例提供的登录操作系统的方法;FIG. 12 shows a method for logging in to an operating system provided by another embodiment of the present application;
图13示出了本申请提供的指纹模板录入的方法;FIG. 13 shows the method of fingerprint template entry provided by this application;
图14A-图14B示例性示出了“一键登录”的一种指纹录入窗口;Figures 14A-14B exemplarily show a fingerprint entry window of "one-key login";
图15A-图15B示例性示出了“一键登录”的另一指纹录入窗口;15A-15B exemplarily show another fingerprint entry window of "one-key login";
图16示例性示出了“一键登录”的另一指纹录入窗口;Figure 16 exemplarily shows another fingerprint entry window of "one-click login";
图17示例性示出了“一键登录”的另一指纹录入窗口;Figure 17 exemplarily shows another fingerprint entry window of "one-key login";
图18示例性示出了本申请实施例提供的另一种典型电子设备;FIG. 18 exemplarily shows another typical electronic device provided by an embodiment of the present application;
图19示例性示出了图18所示的电子设备的开机以及解锁过程。Fig. 19 exemplarily shows the booting and unlocking process of the electronic device shown in Fig. 18.
具体实施方式Detailed ways
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述。In order to make the purpose, technical solutions, and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings.
本申请提供了一种电子设备,该电子设备具有集成为一体的电源按键和指纹传感器,该电子设备可以是笔记本电脑、台式电脑、平板电脑、智能手机以及其他类型的电子设备。本申请还提供了一种登录操作系统的方法,该方法可应用于本申请提供的电子设备,可实现在该电子设备开机的同时进行用户身份认证,以登录该电子设备的操作系统,可提高登录效率,简化用户操作。This application provides an electronic device that has an integrated power button and a fingerprint sensor. The electronic device can be a notebook computer, a desktop computer, a tablet computer, a smart phone, and other types of electronic devices. This application also provides a method for logging in to the operating system, which can be applied to the electronic device provided in this application, and can realize user identity authentication when the electronic device is turned on, so as to log in to the operating system of the electronic device, which can improve Login efficiency and simplify user operations.
本申请实施例中,电子设备的操作系统可以是指管理计算机硬件与软件资源的计算机程序。操作系统需要处理,如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。操作系统为每位用户配置了一套用户名和密码,用户可以使用自己的用户名和密码来登录操作系统。登录成功之后,用户就可以合法地使用该账号具有的各项能力。例如,邮箱用户可以收发邮件、查看/更改通讯录等等。密码的形式可以有很多种,例如数字密码、指纹密码、面部特征密码等等。In the embodiments of the present application, the operating system of the electronic device may refer to a computer program that manages computer hardware and software resources. The operating system needs to deal with basic tasks such as managing and configuring memory, determining the priority of system resource supply and demand, controlling input devices and output devices, operating the network, and managing the file system. The operating system also provides an operation interface that allows users to interact with the system. The operating system has configured a set of user names and passwords for each user, and users can use their own user names and passwords to log in to the operating system. After the login is successful, the user can legally use the capabilities of the account. For example, mailbox users can send and receive mail, view/change the address book, and so on. There are many types of passwords, such as digital passwords, fingerprint passwords, facial feature passwords, and so on.
图1A示例性示出了本申请实施例提供的一种典型电子设备:笔记本电脑100。如图1A所示,笔记本电脑100可包括电源按键101和指纹传感器102,其中,FIG. 1A exemplarily shows a typical electronic device: a notebook computer 100 provided by an embodiment of the present application. As shown in FIG. 1A, the notebook computer 100 may include a power button 101 and a fingerprint sensor 102, wherein,
指纹传感器102可以为光学指纹传感器、超声波指纹传感器或者其他类型的指纹传感器。指纹传感器102和电源键101集成于一体。例如,如图1B所示,指纹传感器102可粘贴或印制在电源键101的表面。该表面可在用户按压电源键101时接触到用户手指。这样,可实现在用户按压电源键101的同时,指纹传感器102可采集到用户的指纹。The fingerprint sensor 102 may be an optical fingerprint sensor, an ultrasonic fingerprint sensor, or other types of fingerprint sensors. The fingerprint sensor 102 and the power button 101 are integrated. For example, as shown in FIG. 1B, the fingerprint sensor 102 may be pasted or printed on the surface of the power button 101. This surface can touch the user's finger when the user presses the power button 101. In this way, it can be realized that while the user presses the power button 101, the fingerprint sensor 102 can collect the user's fingerprint.
为了区别本申请提供的电子设备和传统的电子设备,下面简单介绍图1A所示的笔记本电脑100的开机以及操作系统登录过程,以及传统的笔记本电脑(如图2A-图2D所示的笔记本电脑200)的开机以及操作系统登录过程。In order to distinguish between the electronic equipment provided in this application and the traditional electronic equipment, the following briefly introduces the booting and operating system login process of the notebook computer 100 shown in FIG. 1A, as well as the traditional notebook computer (such as the notebook computer shown in FIGS. 2A-2D). 200) booting and operating system login process.
图2A-图2D示例性示出了传统的笔记本电脑200的开机以及操作系统登录过程。其中,2A-2D exemplarily show the booting and operating system login process of the traditional notebook computer 200. among them,
如图2A-图2D所示,传统的笔记本电脑200虽然也包括电源按键201和指纹传感器202,但是,电源按键201和指纹传感器202一般是分开设置;或者,该指纹传感器202还可以集成在笔记本电脑200的触控模块203上。As shown in Figures 2A-2D, although the traditional notebook computer 200 also includes a power button 201 and a fingerprint sensor 202, the power button 201 and the fingerprint sensor 202 are generally provided separately; or, the fingerprint sensor 202 can also be integrated in the notebook On the touch module 203 of the computer 200.
如图2A所示,当用户按压笔记本电脑200的电源按键201时,笔记本电脑201可以响应于用户对电源按键201的按压操作,开机启动,并显示如图2B所示的包括用户账户图标204和用户密码输入框205的操作系统登录界面,以供用户输入用户密码或者等待用户通过指纹传感器202录入用户指纹信息,以登录笔记本电脑200的操作系统。As shown in FIG. 2A, when the user presses the power button 201 of the notebook computer 200, the notebook computer 201 can start up in response to the user's pressing operation on the power button 201, and display the user account icon 204 and the icon shown in FIG. 2B. The operating system login interface of the user password input box 205 is for the user to enter the user password or wait for the user to enter the user's fingerprint information through the fingerprint sensor 202 to log in to the operating system of the notebook computer 200.
如图2C所示,当用户触摸笔记本电脑200的指纹传感器202时,指纹传感器202可采集到该用户的指纹,以便笔记本电脑200进行用户身份认证。若认证通过,笔记本电脑200会显示如图2D所示的系统桌面。至此,用户成功登录笔记本电脑200的操作系统。As shown in FIG. 2C, when a user touches the fingerprint sensor 202 of the notebook computer 200, the fingerprint sensor 202 can collect the fingerprint of the user, so that the notebook computer 200 can perform user identity authentication. If the authentication is passed, the notebook computer 200 will display the system desktop as shown in FIG. 2D. So far, the user successfully logs in to the operating system of the notebook computer 200.
可以看出,传统的笔记本电脑200的开机以及系统登录过程中,用户需要先按压电源键201实现笔记本电脑200的开机启动,然后再触摸指纹传感器202来录入指纹信息,即用户需要分别按压电源键和指纹传感器,才可以进行用户身份认证,登录操作系统。传统的笔记本电脑200的开机以及系统登录过程存在用户操作繁琐、登录效率低的问题。It can be seen that during the booting of the traditional notebook computer 200 and the system login process, the user needs to press the power button 201 to start the notebook computer 200, and then touch the fingerprint sensor 202 to enter the fingerprint information, that is, the user needs to press the power button respectively Only with fingerprint sensor can be used for user identity authentication and login to the operating system. The traditional notebook computer 200 has the problems of cumbersome user operations and low login efficiency during the booting and system login process.
图3A-图3B示例性示出了图1A所示的笔记本电脑100的开机以及系统登录过程。其 中,3A-3B exemplarily show the booting and system login process of the notebook computer 100 shown in FIG. 1A. among them,
如图3A所示,当用户手指按压笔记本电脑100的电源按键101时,该用户手指也会接触到集成于电源按键101上的指纹传感器102。响应于该用户手指在电源按键101上的按压操作,笔记本电脑100可以开机启动,同时,指纹传感器102可采集到该用户的指纹,以便笔记本电脑100进行用户身份认证。若认证通过,笔记本电脑100会显示如图3B所示的系统桌面。至此,用户成功登录笔记本电脑100的操作系统。As shown in FIG. 3A, when a user's finger presses the power button 101 of the notebook computer 100, the user's finger will also touch the fingerprint sensor 102 integrated on the power button 101. In response to the pressing operation of the user's finger on the power button 101, the notebook computer 100 can be powered on, and at the same time, the fingerprint sensor 102 can collect the user's fingerprint, so that the notebook computer 100 can perform user identity authentication. If the authentication is passed, the notebook computer 100 will display the system desktop as shown in FIG. 3B. So far, the user successfully logs in to the operating system of the notebook computer 100.
可以看出,本申请实施例提供的笔记本电脑100可实现“一键开机登录”,即用户手指按压电源键101一次便完成开机和身份认证,快捷登录操作系统。It can be seen that the notebook computer 100 provided by the embodiment of the present application can realize "one-key power-on login", that is, the user's finger presses the power button 101 once to complete the power-on and identity authentication, and quickly log in to the operating system.
目前,为了实现一键完成开机和身份认证,快捷登录操作系统,实施于笔记本电脑100的一种已有的硬件架构可如图4示例性所示。如图4所示,应用于笔记本电脑100的该硬件架构可包括:微控制器处理单元(micro controller unit,MCU)103、嵌入式控制器(embedded controller,EC)104(又称为嵌入式处理器)、中央处理器(central processing unit,CPU)105。At present, in order to achieve one-click completion of booting and identity authentication, and quick login to the operating system, an existing hardware architecture implemented in the notebook computer 100 can be exemplarily shown in FIG. 4. As shown in FIG. 4, the hardware architecture applied to the notebook computer 100 may include: a microcontroller processing unit (microcontroller unit, MCU) 103, an embedded controller (embedded controller, EC) 104 (also known as an embedded processing unit) Processor), central processing unit (CPU) 105.
MCU 103连接指纹传感器102。MCU 103与指纹传感器102之间可通过串行外设接口(serial peripheral interface,SPI)接口进行通信,例如MCU 103向指纹传感器102发送指纹获取请求、指纹传感器102向MCU 103传输采集到的指纹。MCU 103可负责对来自指纹传感器102的指纹进行加密。MCU 103可具有存储器,可存储来加密后的指纹,以响应后续CPU 105发送的指纹录入指令或指纹验证指令而将加密后的指纹传输给CPU 105。The MCU 103 is connected to the fingerprint sensor 102. The MCU 103 and the fingerprint sensor 102 may communicate through a serial peripheral interface (SPI) interface. For example, the MCU 103 sends a fingerprint acquisition request to the fingerprint sensor 102, and the fingerprint sensor 102 transmits the collected fingerprint to the MCU 103. The MCU 103 may be responsible for encrypting the fingerprint from the fingerprint sensor 102. The MCU 103 may have a memory, which can store the encrypted fingerprint, and transmit the encrypted fingerprint to the CPU 105 in response to the subsequent fingerprint entry instruction or fingerprint verification instruction sent by the CPU 105.
CPU 105连接MCU 103。CPU 105与MCU 103之间可通过SPI接口进行通信。CPU 105中加载有指纹传感器驱动。指纹传感器驱动是指纹传感器102的驱动程序。加载了指纹传感器驱动的CPU 105可通过SPI接口和MCU 103通信,例如CPU 105向MCU 103发送指纹录入指令或指纹验证指令、MCU 103向CPU 105传输缓存在MCU 103的存储器中的指纹。CPU 105可用于根据来自MCU 103的指纹进行用户身份验证。如果来自MCU 103的指纹与预先录入并存储在笔记本电脑100中的指纹模板一致,则验证通过;否则,验证未通过。指纹模板是指提前录入并存储在笔记本电脑100中的用户指纹,相当于用户提前设置的用来登录操作系统的密码。后面内容会详细描述指纹注册的实现,这里先不赘述。The CPU 105 is connected to the MCU 103. The CPU 105 and the MCU 103 can communicate through the SPI interface. The fingerprint sensor driver is loaded in the CPU 105. The fingerprint sensor driver is a driver program of the fingerprint sensor 102. The CPU 105 loaded with the fingerprint sensor driver can communicate with the MCU 103 through the SPI interface. For example, the CPU 105 sends a fingerprint entry instruction or fingerprint verification instruction to the MCU 103, and the MCU 103 transmits the fingerprint cached in the memory of the MCU 103 to the CPU 105. The CPU 105 can be used to perform user identity verification based on the fingerprint from the MCU 103. If the fingerprint from the MCU 103 is consistent with the fingerprint template pre-entered and stored in the notebook computer 100, the verification is passed; otherwise, the verification fails. The fingerprint template refers to a user fingerprint entered in advance and stored in the notebook computer 100, which is equivalent to a password set by the user in advance to log in to the operating system. The following content will describe the implementation of fingerprint registration in detail, so I won't go into details here.
MCU 103、CPU 105还连接EC 104。EC 104是一个单独的处理器。EC 104与CPU 105之间可通过通用型输入输出(general purpose input output,GPIO)接口通信。EC 104与MCU 103之间可通过SPI接口通信。在笔记本电脑100的操作系统启动的过程中,EC 104控制着绝大多数重要信号的时序。在笔记本电脑100处于关机状态下,EC 104一直保持运行,并等待用户的开机信号。而在笔记本电脑100开机后,EC 104可作为指纹传感器102、键盘、充电指示灯以及风扇等设备的控制器,EC 104还可控制系统的待机、休眠等状态。在检测到用户按下电源键101后,EC 104会通知整个笔记本电脑100上电。 MCU 103 and CPU 105 are also connected to EC 104. EC 104 is a separate processor. The EC 104 and the CPU 105 can communicate through a general purpose input output (GPIO) interface. The EC 104 and MCU 103 can communicate through the SPI interface. During the startup of the operating system of the notebook computer 100, the EC 104 controls the timing of most important signals. When the notebook computer 100 is in the shutdown state, the EC 104 keeps running and waits for the user's power-on signal. After the notebook computer 100 is turned on, the EC 104 can be used as a controller for devices such as the fingerprint sensor 102, keyboard, charging indicator, and fan. The EC 104 can also control the standby and hibernation states of the system. After detecting that the user presses the power button 101, the EC 104 will notify the entire notebook computer 100 to power on.
当电源键101被用户手指按下后,EC 104通知MCU 103、指纹传感器102、CPU 105上电。上电后的指纹传感器102可采集到用户指纹,该指纹传输给MCU 103加密。CPU 105加载启动操作系统后,向MCU 103请求录入指纹,以根据来自MCU 103的指纹进行用户身份验证。若验证通过,CPU 105可指令显示屏(未示出)显示图3B所示的系统桌面。至 此,图4所示的架构实现了一键完成开机和身份认证,可支持用户快速登录操作系统。When the power button 101 is pressed by the user's finger, the EC 104 notifies the MCU 103, the fingerprint sensor 102, and the CPU 105 to power on. After power-on, the fingerprint sensor 102 can collect the user's fingerprint, and the fingerprint is transmitted to the MCU 103 for encryption. After the CPU 105 loads and starts the operating system, it requests the MCU 103 to enter the fingerprint, so as to perform user authentication based on the fingerprint from the MCU 103. If the verification is passed, the CPU 105 can instruct the display screen (not shown) to display the system desktop shown in FIG. 3B. So far, the architecture shown in Figure 4 has achieved one-key boot and identity authentication, which can support users to quickly log in to the operating system.
但是,图4所示的这种笔记本电脑100的架构,需要额外为指纹传感器配置一个MCU:MCU 103。这不仅会增加成本,而且需要更大的内部设计空间,不利于笔记本电脑小型化。However, the architecture of the notebook computer 100 shown in FIG. 4 requires an additional MCU to be configured for the fingerprint sensor: MCU 103. This will not only increase the cost, but also requires a larger internal design space, which is not conducive to the miniaturization of notebook computers.
图5示例性示出了本申请提供了一种应用于笔记本电脑100的新硬件架构,不仅可实现一键完成开机和身份认证,简化用户登录操作,还可以克服图4所示的硬件架构存在的问题。FIG. 5 exemplarily shows that the present application provides a new hardware architecture applied to the notebook computer 100, which can not only realize one-key boot and identity authentication, simplify user login operations, but also overcome the existence of the hardware architecture shown in FIG. 4 The problem.
如图5所示,应用于笔记本电脑100的新硬件架构可包括:EC 107、CPU 105。其中,As shown in FIG. 5, the new hardware architecture applied to the notebook computer 100 may include: EC 107, CPU 105. among them,
EC 107是一个单独的处理器。EC 107可连接指纹传感器102,EC 107与指纹传感器102之间可通过SPI接口进行通信,例如EC 107向指纹传感器102发送指纹获取请求、指纹传感器102向EC 107传输采集到的指纹。EC 107内可加载有指纹加密模块这一固件程序。指纹加密模块可负责对来自指纹传感器102的指纹进行加密。EC 107可具有存储器,可存储加密后的指纹,以响应后续来自CPU 105的指纹录入指令、指纹验证指令而将加密后的指纹传输给CPU 105。 EC 107 is a separate processor. The EC 107 can be connected to the fingerprint sensor 102, and the EC 107 and the fingerprint sensor 102 can communicate through an SPI interface. For example, the EC 107 sends a fingerprint acquisition request to the fingerprint sensor 102, and the fingerprint sensor 102 transmits the collected fingerprint to the EC 107. The firmware program of fingerprint encryption module can be loaded in EC 107. The fingerprint encryption module may be responsible for encrypting the fingerprint from the fingerprint sensor 102. The EC 107 may have a memory, which can store the encrypted fingerprint, and transmit the encrypted fingerprint to the CPU 105 in response to subsequent fingerprint entry instructions and fingerprint verification instructions from the CPU 105.
EC 107可连接CPU 105。EC 107和CPU 105之间可通过GPIO接口进行通信。这种通信可包括:EC 107通过GPIO的某一个或一些管脚向CPU 105发送中断信号(如通知)、CPU 105通过某一个或某一些管脚向EC 107发送中断信号(如通知)。基于GPIO接口的通信效率很高。为了实现EC 107和CPU 105之间传输用户指纹,引入了一种软体通信接口,可用于EC 107和CPU 105之间进行关于用户指纹的通信。该软件通信接口可称为第一接口。第一接口可基于共享内存实现EC 107和CPU 105之间的通信。EC 107、CPU 105都可通过但不限于增强型SPI(enhanced SPI,ESPI)接口连接到共享内存,以通过ESPI写入数据到共享内存或从共享内存中读取数据。关于第一接口的具体实现,后续内容会详细介绍,这里先不赘述。 EC 107 can be connected to CPU 105. The EC 107 and CPU 105 can communicate through the GPIO interface. Such communication may include: the EC 107 sends an interrupt signal (such as notification) to the CPU 105 through a certain pin or pins of the GPIO, and the CPU 105 sends an interrupt signal (such as a notification) to the EC 107 through a certain pin or some pins. The communication efficiency based on the GPIO interface is very high. In order to realize the transmission of user fingerprints between EC 107 and CPU 105, a software communication interface is introduced, which can be used to communicate user fingerprints between EC 107 and CPU 105. This software communication interface may be referred to as the first interface. The first interface can realize the communication between the EC 107 and the CPU 105 based on the shared memory. Both the EC 107 and the CPU 105 can be connected to the shared memory through, but not limited to, an enhanced SPI (ESPI) interface, so as to write data to or read data from the shared memory through ESPI. Regarding the specific implementation of the first interface, the follow-up content will be introduced in detail, so I won't go into details here.
CPU 105中加载有指纹传感器驱动。加载了指纹传感器驱动的CPU 105可通过第一接口和EC 107通信,例如CPU 105向EC 107发送指纹录入指令或指纹验证指令、EC 107向CPU 105传输缓存在EC 107的存储器中的指纹。CPU 105可用于根据来自EC 107的指纹进行用户身份验证。如果来自EC 107的指纹与预先录入并存储在笔记本电脑100中的指纹模板一致,则验证通过;否则,验证未通过。The fingerprint sensor driver is loaded in the CPU 105. The CPU 105 loaded with the fingerprint sensor driver can communicate with the EC 107 through the first interface. For example, the CPU 105 sends a fingerprint entry instruction or a fingerprint verification instruction to the EC 107, and the EC 107 transmits the fingerprint cached in the memory of the EC 107 to the CPU 105. The CPU 105 can be used to perform user identity verification based on the fingerprint from the EC 107. If the fingerprint from the EC 107 is consistent with the fingerprint template pre-entered and stored in the notebook computer 100, the verification is passed; otherwise, the verification fails.
当电源键101被用户手指按下后,EC 104通知指纹传感器102、CPU 105上电。上电后的指纹传感器102可采集到用户指纹,该指纹传输给EC 104加密并缓存。CPU 105加载启动操作系统后,通过第一接口获取来自EC 104的指纹,以根据来自EC 104的指纹进行用户身份验证。若验证通过,CPU 105可指令显示屏(未示出)显示图3B所示的系统桌面。至此,图5所示的硬件架构实现了一键完成开机和身份认证,可支持用户快速登录操作系统。而且,图5所示的硬件架构还可以克服图4所示的硬件架构存在的问题。When the power button 101 is pressed by the user's finger, the EC 104 notifies the fingerprint sensor 102 and the CPU 105 to power on. The fingerprint sensor 102 after power-on can collect the user's fingerprint, and the fingerprint is transmitted to the EC 104 for encryption and buffering. After the CPU 105 loads and starts the operating system, it obtains the fingerprint from the EC 104 through the first interface to perform user identity verification based on the fingerprint from the EC 104. If the verification is passed, the CPU 105 can instruct the display screen (not shown) to display the system desktop shown in FIG. 3B. At this point, the hardware architecture shown in Figure 5 has achieved one-key boot and identity authentication, which can support users to quickly log in to the operating system. Moreover, the hardware architecture shown in FIG. 5 can also overcome the problems of the hardware architecture shown in FIG. 4.
基于图5所示的硬件架构,本申请提供了应用于笔记本电脑100的软件架构。如图6所示,该软件架构可包括:运行在CPU 105中的操作系统201、操作系统201加载的指纹传感器驱动202、基本输入输出系统(basic input-output system,BIOS)205、加载在EC 107 中的指纹库203。其中,Based on the hardware architecture shown in FIG. 5, the present application provides a software architecture applied to the notebook computer 100. As shown in Figure 6, the software architecture may include: operating system 201 running on CPU 105, fingerprint sensor driver 202 loaded by operating system 201, basic input-output system (BIOS) 205, loaded on EC Fingerprint library 203 in 107. among them,
操作系统201负责管理硬件资源与软件资源。硬件资源包括CPU 105、内存108、显卡、网卡、声卡、硬盘等等。软件资源包括各种程序,例如各种硬件驱动程序。操作系统201还负责将硬件驱动程序的接口抽象,形成一套简单的软件接口给上层应用程序。The operating system 201 is responsible for managing hardware resources and software resources. Hardware resources include CPU 105, memory 108, graphics card, network card, sound card, hard disk, and so on. Software resources include various programs, such as various hardware drivers. The operating system 201 is also responsible for abstracting the interface of the hardware driver to form a simple software interface for the upper application.
指纹传感器驱动202可用于初始化指纹传感器102,提供针对指纹传感器102的硬件资源访问接口。The fingerprint sensor driver 202 can be used to initialize the fingerprint sensor 102 and provide a hardware resource access interface for the fingerprint sensor 102.
BIOS 205集成在笔记本电脑100的主板上的一个只读存储器(read only memory,ROM)中,主要保存着基本输入输出程序、系统信息设置程序、开机上电自检程序和系统启动自举程序等。BIOS 205可以视为是一个永久地记录在ROM中的一个软件,是操作系统输入输出管理系统的一部分。在被CPU 105执行之前,BIOS 205可被加载到内存108中。内存108可以为随机存储器(random access memory,RAM)。BIOS 205可主要用来负责笔记本电脑100的启动、重要硬件的控制和驱动,并为高层软件提供基层调用。BIOS 205可用于在笔记本电脑100上电后初始化内存108,并将用于EC 107和指纹传感器驱动202之间通信的共享内存的地址告知EC 107和指纹传感器驱动202。EC 107和指纹传感器驱动202之间基于共享内存进行通信的接口可称为第一接口。 BIOS 205 is integrated in a read only memory (ROM) on the motherboard of the notebook computer 100, which mainly stores basic input and output programs, system information setting programs, power-on self-check programs, and system startup boot programs, etc. . BIOS 205 can be regarded as a piece of software permanently recorded in ROM, which is a part of the input and output management system of the operating system. Before being executed by the CPU 105, the BIOS 205 can be loaded into the memory 108. The memory 108 may be a random access memory (RAM). The BIOS 205 can be mainly used to start the notebook computer 100, control and drive important hardware, and provide basic calls for high-level software. The BIOS 205 can be used to initialize the memory 108 after the laptop 100 is powered on, and inform the EC 107 and the fingerprint sensor driver 202 of the address of the shared memory used for communication between the EC 107 and the fingerprint sensor driver 202. The interface for communication between the EC 107 and the fingerprint sensor driver 202 based on shared memory may be referred to as the first interface.
指纹库203提供多种类型的软件接口,如服务接口、控制接口、中断服务接口、读写接口。其中,服务接口可用于EC 107接收指纹传感器驱动202下发的输入输出(input-output,IO)指令以及EC 107向指纹传感器驱动202发送通知(例如通知指纹已写入共享内存);控制接口可用于EC 107通过GPIO接口向指纹传感器驱动202发送中断信号;中断服务接口可用于EC 107处理指纹传感器驱动202下发的中断信号;读写接口可用于EC 107响应于指纹传感器驱动202发送的IO指令而从共享内存中读取指纹传感器驱动202写入的命令(如指纹录入指令、指纹验证指令),以及可用于EC响应于指纹传感器驱动202写入共享内存的指纹录入指令或指纹验证指令而往共享内存中写入指纹传感器102采集到的用户指纹。The fingerprint library 203 provides multiple types of software interfaces, such as service interfaces, control interfaces, interrupt service interfaces, and read-write interfaces. Among them, the service interface can be used by the EC 107 to receive input-output (IO) instructions issued by the fingerprint sensor driver 202 and the EC 107 to send notifications to the fingerprint sensor driver 202 (for example, to notify that the fingerprint has been written to the shared memory); the control interface is available The EC 107 sends an interrupt signal to the fingerprint sensor driver 202 through the GPIO interface; the interrupt service interface can be used by the EC 107 to process the interrupt signal sent by the fingerprint sensor driver 202; the read-write interface can be used by the EC 107 to respond to the IO commands sent by the fingerprint sensor driver 202 And read commands written by the fingerprint sensor driver 202 from the shared memory (such as fingerprint entry instructions, fingerprint verification instructions), and can be used by the EC to respond to the fingerprint entry instructions or fingerprint verification instructions written by the fingerprint sensor driver 202 to the shared memory. The user fingerprint collected by the fingerprint sensor 102 is written into the shared memory.
当电源键101被用户手指按下后,EC 104通知指纹传感器102、CPU 105上电。上电后的指纹传感器102可采集到用户指纹,该用户指纹传输给EC 104加密并缓存。操作系统201启动后,操作系统201加载指纹传感器驱动202。EC 107可通过指纹库203中的服务接口接收指纹传感器驱动202发送的特定IO指令(即后续实施例中提及的第一通知),响应该特定IO指令,EC 107可通过指纹库203中的读写接口从共享内存中读取指纹传感器驱动202写入的指纹传感器驱动命令(如指纹录入指令、指纹验证指令)。然后,EC 107可通过指纹库203中的读写接口往共享内存中写入用户指纹,并通过指纹库203中的服务接口向指纹传感器驱动202发送通知(即后续实施例中提及的第二通知),以通知用户指纹已写入共享内存。最后,指纹传感器驱动202会根据该通知,从共享内存中读取用户指纹。至此,指纹传感器驱动202获得了指纹传感器102采集到的用户指纹,并向操作系统201发送该用户指纹,以使得操作系统201根据该用户指纹进行用户身份验证。When the power button 101 is pressed by the user's finger, the EC 104 notifies the fingerprint sensor 102 and the CPU 105 to power on. The fingerprint sensor 102 after power-on can collect user fingerprints, and the user fingerprints are transmitted to the EC 104 for encryption and buffering. After the operating system 201 is started, the operating system 201 loads the fingerprint sensor driver 202. The EC 107 can receive the specific IO command sent by the fingerprint sensor driver 202 through the service interface in the fingerprint library 203 (that is, the first notification mentioned in the subsequent embodiments). In response to the specific IO command, the EC 107 can pass the fingerprint library 203 The read-write interface reads the fingerprint sensor drive commands (such as fingerprint entry instructions, fingerprint verification instructions) written by the fingerprint sensor driver 202 from the shared memory. Then, the EC 107 can write user fingerprints into the shared memory through the read-write interface in the fingerprint library 203, and send a notification to the fingerprint sensor driver 202 through the service interface in the fingerprint library 203 (that is, the second Notification) to notify the user that the fingerprint has been written into the shared memory. Finally, the fingerprint sensor driver 202 will read the user's fingerprint from the shared memory according to the notification. So far, the fingerprint sensor driver 202 obtains the user fingerprint collected by the fingerprint sensor 102, and sends the user fingerprint to the operating system 201, so that the operating system 201 performs user identity verification based on the user fingerprint.
图7示例性示出了在笔记本电脑100中实施本申请提供的操作系统登录方法的方案。如图7所示,该方案呈现了软件架构和硬件架构的结合,可主要划分为两部分:设备层、 应用和内核层。FIG. 7 exemplarily shows a solution for implementing the operating system login method provided by this application in the notebook computer 100. As shown in Figure 7, the solution presents a combination of software architecture and hardware architecture, which can be divided into two parts: the device layer, the application, and the kernel layer.
1.设备层可包括连接CPU 105的设备:本地存储206、BIOS 205、EC 107、指纹传感器102和电源键101。其中,1. The device layer may include devices connected to the CPU 105: local storage 206, BIOS 205, EC 107, fingerprint sensor 102, and power button 101. among them,
本地存储206可用于存储指纹模板,即用户提前录入的用来登录操作系统201的指纹。The local storage 206 can be used to store a fingerprint template, that is, a fingerprint entered in advance by a user to log in to the operating system 201.
EC 107内可加载有指纹加密模块这一固件程序。指纹加密模块可负责对来自指纹传感器102的指纹进行加密。EC 107可具有存储器,可存储来加密后的指纹。BIOS 205中可预置有密钥KEY_A。EC 107中可预置有密钥KEY_B。EC 107可利用密钥KEY_B对指纹传感器102采集到的用户指纹进行加密。The firmware program of fingerprint encryption module can be loaded in EC 107. The fingerprint encryption module may be responsible for encrypting the fingerprint from the fingerprint sensor 102. EC 107 can have a memory, which can store encrypted fingerprints. The key KEY_A can be preset in the BIOS 205. The key KEY_B can be preset in EC 107. The EC 107 can use the key KEY_B to encrypt the user fingerprint collected by the fingerprint sensor 102.
BIOS 205是指集成了BIOS的ROM。密钥KEY_A供指纹传感器驱动202使用,指纹传感器驱动202可将密钥KEY_A携带在指纹录入指令或指纹验证指令中。然后,收到指纹录入指令或指纹验证指令的EC 107会验证密钥KEY_A,若验证通过,则将暂存在EC 107中的已加密的用户指纹通过第一接口传输给指纹传感器驱动202。指纹传感器驱动202可通过BIOS 205提供的高级配置和电源管理接口设备专用方法(advanced configuration and power management interfacedevice-specific method,ACPI DSM)来获取密钥KEY_A。 BIOS 205 refers to ROM with integrated BIOS. The key KEY_A is used by the fingerprint sensor driver 202, and the fingerprint sensor driver 202 can carry the key KEY_A in the fingerprint entry instruction or fingerprint verification instruction. Then, the EC 107 receiving the fingerprint entry instruction or fingerprint verification instruction will verify the key KEY_A, and if the verification is passed, the encrypted user fingerprint temporarily stored in the EC 107 will be transmitted to the fingerprint sensor driver 202 through the first interface. The fingerprint sensor driver 202 can obtain the key KEY_A through the advanced configuration and power management interface device-specific method (ACPI DSM) provided by the BIOS 205.
运行在CPU 105的指纹传感器驱动202和EC 107中的指纹加密模块之间的通信,属于跨芯片通信。为了确保指纹传输的安全,二者之间可以基于安全传输层协议(Transport Layer Security Protocol,TLS)建立通信链接。The communication between the fingerprint sensor driver 202 running in the CPU 105 and the fingerprint encryption module in the EC 107 belongs to cross-chip communication. In order to ensure the security of fingerprint transmission, a communication link can be established between the two based on the Transport Layer Security Protocol (TLS).
2.应用和内核层可包括运行在CPU 105上的各软件程序:用户登录应用(application,APP)211、指纹管理应用(APP)212、指纹识别框架210、存储适配器(storage adapter)207、引擎适配器(engine adapter)208、指纹传感器适配器(fingerprint recognition sensor adapter)209、指纹传感器驱动(fingerprint recognition sensor driver)202、以及电源管理程序213。其中:2. The application and kernel layer may include various software programs running on the CPU 105: user login application (APP) 211, fingerprint management application (APP) 212, fingerprint recognition framework 210, storage adapter (storage adapter) 207, engine An engine adapter 208, a fingerprint recognition sensor adapter 209, a fingerprint recognition sensor driver 202, and a power management program 213. among them:
用户登录APP 211负责操作系统201的登录管理,可提示用户输入密码,并基于用户输入的指纹或其他形式的密码进行用户身份验证。例如,如果用户身份验证的结果为通过验证,则用户登录APP 211可显示如图3B所示的系统桌面。The user login APP 211 is responsible for the login management of the operating system 201, can prompt the user to enter a password, and perform user identity verification based on the fingerprint or other forms of password entered by the user. For example, if the result of the user identity verification is that the verification is passed, the user logs in to the APP 211 to display the system desktop as shown in FIG. 3B.
指纹管理APP 212可负责录入指纹模板,即负责设置用户提前录入的用来登录操作系统201的指纹。指纹管理APP 212一般可集成在设置(setting)应用程序中。The fingerprint management APP 212 may be responsible for entering a fingerprint template, that is, responsible for setting the fingerprint entered by the user in advance to log in to the operating system 201. The fingerprint management APP 212 can generally be integrated in a setting application.
指纹识别框架210可以包括构建涉及指纹识别的应用程序时可能用到的各种应用程序编程接口(application programming interface,API),允许对指纹传感器102进行一致开发和管理的服务接口,便于应用程序开发人员可以进行高效开发。The fingerprint recognition framework 210 may include various application programming interfaces (APIs) that may be used when building applications involving fingerprint recognition, and a service interface that allows consistent development and management of the fingerprint sensor 102, facilitating application development Personnel can carry out efficient development.
存储适配器207可提供存储或访问指纹模板的接口,可用于存储指纹模板或访问指纹模板。The storage adapter 207 may provide an interface for storing or accessing fingerprint templates, and may be used for storing or accessing fingerprint templates.
引擎适配器208可负责指纹安全管理,运行指纹处理算法。具体的,引擎适配器208可在内存的一个加密的可信执行区域中,对指纹传感器驱动202获取的用户指纹进行管理或运算。引擎适配器208具体可包括两个模块:指纹采集208A和指纹认证208B。指纹采集208A可用于从指纹传感器适配器209获取用户指纹。指纹认证208B可用于验证指纹采集208A获取的用户指纹是否与存储适配器207访问到的指纹模板一致,若一致,则用户身份验证通过;否则用户身份验证未通过。The engine adapter 208 may be responsible for fingerprint security management and run fingerprint processing algorithms. Specifically, the engine adapter 208 can manage or calculate the user fingerprint acquired by the fingerprint sensor driver 202 in an encrypted trusted execution area of the memory. The engine adapter 208 may specifically include two modules: fingerprint collection 208A and fingerprint authentication 208B. The fingerprint collection 208A can be used to obtain a user's fingerprint from the fingerprint sensor adapter 209. The fingerprint authentication 208B can be used to verify whether the user fingerprint obtained by the fingerprint collection 208A is consistent with the fingerprint template accessed by the storage adapter 207. If they are consistent, the user identity verification passes; otherwise, the user identity verification fails.
指纹传感器适配器209可负责设置指纹传感器102、从指纹传感器驱动202那读取用户指纹。The fingerprint sensor adapter 209 can be responsible for setting the fingerprint sensor 102 and reading the user's fingerprint from the fingerprint sensor driver 202.
指纹传感器驱动202可用于初始化指纹传感器102,并向操作系统201提供指纹传感器102的硬件资源的访问接口。The fingerprint sensor driver 202 can be used to initialize the fingerprint sensor 102 and provide the operating system 201 with an access interface for the hardware resources of the fingerprint sensor 102.
基于前述笔记本电脑100的软件架构和硬件架构,下面将详细说明本申请提供的登录操作系统的方法。Based on the aforementioned software architecture and hardware architecture of the notebook computer 100, the method for logging in to the operating system provided by the present application will be described in detail below.
首先,介绍笔记本电脑100的几种运行状态:First, introduce several operating states of the notebook computer 100:
(1)工作状态(标记为S0):笔记本电脑100正常工作,所有硬件设备全部处于上电状态。(1) Working state (marked as S0): The notebook computer 100 is working normally, and all hardware devices are in a power-on state.
(2)睡眠状态(标记为S1或S3):CPU停止执行指令,内存中的东西原样留在内存中。其中,S1也称为电源挂起(power on suspend,POS)状态,是一种低耗电状态。在S1状态下,此时CPU停止工作,显示屏处于关闭状态,其他硬件设备处于低电耗的工作状态。S3也成为了挂起到内存(suspend to RAM,STR)状态。在S3状态下,运行中的数据写入内存,关闭除内存外的大多数硬件设备。(2) Sleep state (marked as S1 or S3): The CPU stops executing instructions, and the things in the memory remain in the memory as they are. Among them, S1 is also called power on suspend (POS) state, which is a low power consumption state. In the S1 state, the CPU stops working at this time, the display screen is off, and other hardware devices are in a low power consumption working state. S3 has also become a suspend to RAM (STR) state. In the S3 state, the running data is written into the memory, and most hardware devices except the memory are turned off.
(3)休眠状态(标记为S4):休眠状态和睡眠状态的大部分特征是相同的,区别之处在于:原先睡眠状态下留在内存中的信息被原样写入硬盘,休眠完成后系统自身进入零耗电状态;唤醒系统时,硬盘中的内存镜像被原样装入内存,系统恢复运行。(3) Hibernation state (marked as S4): Most of the characteristics of hibernation state and sleep state are the same, the difference is: the information left in the memory in the original sleep state is written to the hard disk as it is, and the system itself after the hibernation is completed Enter a zero power consumption state; when the system is woken up, the memory image in the hard disk is loaded into the memory as it is, and the system resumes operation.
(4)关机状态(标记为S5):又称为软关机(soft off)。笔记本电脑100的大部分硬件设备断电,但有些部件仍然带电,使笔记本电脑100仍然可以被键盘、时钟、modem(电话唤醒)、局域网(local area network,LAN)模块以及USB设备唤醒。(4) Shutdown state (marked as S5): also known as soft shutdown (soft off). Most of the hardware devices of the notebook computer 100 are powered off, but some components are still powered, so that the notebook computer 100 can still be awakened by the keyboard, clock, modem (phone wakeup), local area network (LAN) module, and USB devices.
接下来,将围绕用户手指按下电源键,说明在笔记本电脑100的几种运行状态下如何登录操作系统。Next, the user will press the power button around the user's finger to illustrate how to log in to the operating system in several operating states of the notebook computer 100.
实施例1Example 1
实施例1中,在用户手指按下电源键时,笔记本电脑100处于关机状态(S5)。此时,笔记本电脑100的CPU以及其他硬件设备处于断电状态。用户手指按下电源键这一操作将触发笔记本电脑100从关机状态(S5)切换到工作状态(S0)。In Embodiment 1, when the user's finger presses the power button, the notebook computer 100 is in the shutdown state (S5). At this time, the CPU and other hardware devices of the notebook computer 100 are in a power-off state. The user's finger pressing the power button will trigger the notebook computer 100 to switch from the shutdown state (S5) to the working state (S0).
图8示例性示出了实施例1提供的登录操作系统的方法。如图8所示,该方法可包括如下步骤:FIG. 8 exemplarily shows the method for logging in to the operating system provided in Embodiment 1. As shown in Figure 8, the method may include the following steps:
S101,笔记本电脑100检测到电源键被按下。S101, the notebook computer 100 detects that the power button is pressed.
具体的,笔记本电脑100的EC会负责检测电源键是否被按下。Specifically, the EC of the notebook computer 100 is responsible for detecting whether the power button is pressed.
S102,EC确定,在用户手指按下电源键时,笔记本电脑100处于关机状态。EC负责管理笔记本电脑的运行状态。In S102, the EC determines that when the user's finger presses the power button, the notebook computer 100 is in a shutdown state. EC is responsible for managing the operating status of the laptop.
S103,在电源键被按下后,笔记本电脑100开始上电。具体的,笔记本电脑100中的EC可按照上电时序(power sequence)对各个硬件设备(如指纹传感器、BIOS、CPU、显示屏等)进行上电。在关机状态下,EC也一直保持运行,并等待开机信号(如电源键被按下所产生高电平脉冲信号)。S103: After the power button is pressed, the notebook computer 100 starts to be powered on. Specifically, the EC in the notebook computer 100 may power on various hardware devices (such as a fingerprint sensor, BIOS, CPU, display screen, etc.) according to a power sequence. In the shutdown state, the EC keeps running and waits for a power-on signal (such as a high-level pulse signal generated by the power button being pressed).
CPU上电启动后会运行操作系统,加载指纹传感器驱动。然后,操作系统会请求指纹传感器驱动提供用户指纹。操作系统获取用户指纹存在下述几种目的:1.录入指纹模板;2.进行用户身份验证。本实施例涉及第1种目的。After the CPU is powered on, it will run the operating system and load the fingerprint sensor driver. Then, the operating system will request the fingerprint sensor driver to provide the user's fingerprint. There are several purposes for the operating system to obtain user fingerprints: 1. Enter the fingerprint template; 2. Perform user identity verification. This embodiment relates to the first purpose.
S104,EC初始化。在控制各个硬件设备上电的同时,设置操作系统运行所必需的内存、芯片等硬件设备的管脚状态,以初始化内部环境。S104, the EC is initialized. While controlling the power on of each hardware device, set the pin status of hardware devices such as memory and chips necessary for the operation of the operating system to initialize the internal environment.
S105,EC向指纹传感器发送指纹传感器配置,使能指纹传感器。指纹传感器配置可例如为指纹图像的尺寸、指纹图像的分辨率等参数。S105, the EC sends the fingerprint sensor configuration to the fingerprint sensor to enable the fingerprint sensor. The configuration of the fingerprint sensor can be, for example, parameters such as the size of the fingerprint image and the resolution of the fingerprint image.
S106,BIOS进行内存初始化。BIOS是在等EC把内部的硬件设备初始化后才开始运行的。S106: The BIOS initializes the memory. The BIOS waits for the EC to initialize the internal hardware devices before starting to run.
S107,当用户的手指按下电源按键时,与电源按键集成一体的指纹传感器便可以检测到用户手指触摸,并可采集用户指纹。具体的,用户指纹的数据表现形式可以是指纹图像。S107: When the user's finger presses the power button, the fingerprint sensor integrated with the power button can detect the touch of the user's finger and collect the user's fingerprint. Specifically, the data representation form of the user's fingerprint may be a fingerprint image.
如果用户手指按压电源键的时间过短,短于S102-S104的执行时间,则用户手指便会在指纹传感器使能之前离开指纹传感器。这样会导致指纹传感器不能采集到用户手指,无法登录操作系统。此时,笔记本电脑可显示如图2B所示的包括用户账户图标204和用户密码输入框205的操作系统登录界面,以供用户输入用户密码或者等待用户再次触摸指纹传感器输入指纹,以登录笔记本电脑的操作系统。If the time for the user's finger to press the power button is too short, shorter than the execution time of S102-S104, the user's finger will leave the fingerprint sensor before the fingerprint sensor is enabled. This will cause the fingerprint sensor to fail to collect the user's finger and fail to log into the operating system. At this time, the laptop computer can display the operating system login interface including the user account icon 204 and the user password input box 205 as shown in FIG. 2B for the user to input the user password or wait for the user to touch the fingerprint sensor to input the fingerprint again to log in to the laptop. Operating system.
S108,在采集到用户指纹后,指纹传感器可通知EC获取用户指纹。S108: After collecting the user's fingerprint, the fingerprint sensor may notify the EC to obtain the user's fingerprint.
S109-S110,响应于指纹传感器的通知,EC可向指纹传感器发送请求,以请求获取用户指纹。然后,指纹传感器向EC返回指纹传感器采集的用户指纹。S109-S110, in response to the fingerprint sensor's notification, the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
EC与指纹传感器之间通过SPI接口进行通信。也即是说S104、S108、S109-S110是基于SPI接口实现的。例如,EC基于SPI接口向指纹传感器发送请求,也基于SPI接口读取指纹传感器中的用户指纹。Communication between EC and fingerprint sensor is through SPI interface. In other words, S104, S108, and S109-S110 are implemented based on the SPI interface. For example, the EC sends a request to the fingerprint sensor based on the SPI interface, and also reads the user's fingerprint in the fingerprint sensor based on the SPI interface.
S109-S110可以被执行多次,以获得完整的用户指纹。因为,基于SPI接口的一次通信可交互的数据量是有限的,通常不能够传输一个完整的指纹图像。完整的指纹图像是指,指纹传感器实际采集到的指纹图像。S109-S110 can be executed multiple times to obtain a complete user fingerprint. Because the amount of data that can be interacted in one communication based on the SPI interface is limited, it is usually impossible to transmit a complete fingerprint image. The complete fingerprint image refers to the fingerprint image actually collected by the fingerprint sensor.
S111,EC在每次从指纹传感器那读取指纹数据后,都会存储在EC内部的存储器中。EC内可加载有指纹加密模块这一固件程序。EC可通过指纹加密模块对存储在其内部的用户指纹进行加密。S111, every time the EC reads the fingerprint data from the fingerprint sensor, it will be stored in the internal memory of the EC. The firmware program of the fingerprint encryption module can be loaded in the EC. EC can encrypt user fingerprints stored in it through the fingerprint encryption module.
S112,在BIOS进行内存初始化后,BIOS可向EC通知共享内存地址。S112: After the BIOS performs memory initialization, the BIOS may notify the EC of the shared memory address.
未示出的,BIOS还可向运行在CPU中的指纹传感器驱动通知共享内存地址。该共享内存可用于加载在EC内的指纹加密模块与运行在CPU中的指纹传感器驱动之间进行数据通信。Not shown, the BIOS can also notify the fingerprint sensor driver running in the CPU of the shared memory address. The shared memory can be used for data communication between the fingerprint encryption module loaded in the EC and the fingerprint sensor driver running in the CPU.
不限于图8所示的时序,S112也可以发生在S111之前,甚至S106之前。Not limited to the timing shown in FIG. 8, S112 can also occur before S111, or even before S106.
S113,运行在CPU中的指纹传感器驱动可向共享内存中写入指纹验证指令。在S113之前,指纹传感器驱动接收到了来自操作系统的指纹验证请求,可参考S119。该指纹验证请求具体可来自运行在操作系统上的用户登录APP。响应来自操作系统的指纹验证请求,指纹传感器驱动才向共享内存中写入指纹验证指令,以通知EC往共享内存中写入指纹传感器采集到的用户指纹。该指纹验证指令可以是指纹传感器驱动的驱动命令集中的某个特 定命令。S113: The fingerprint sensor driver running in the CPU can write a fingerprint verification instruction to the shared memory. Before S113, the fingerprint sensor driver received a fingerprint verification request from the operating system. Refer to S119. The fingerprint verification request may specifically come from a user logging in to the APP running on the operating system. In response to the fingerprint verification request from the operating system, the fingerprint sensor driver writes a fingerprint verification instruction to the shared memory to notify the EC to write the user's fingerprint collected by the fingerprint sensor into the shared memory. The fingerprint verification instruction may be a specific command in the drive command set driven by the fingerprint sensor.
S114,指纹传感器驱动向EC发送第一通知(特定IO指令),以触发EC从共享内存中读取指纹传感器驱动所写入的指纹验证指令。具体的,指纹传感器驱动可通过GPIO接口向EC发送第一通知。基于GPIO接口传输第一通知,可提高第一通知的传输效率,进而提高EC与CPU之间的指纹交互效率。S114: The fingerprint sensor driver sends a first notification (specific IO command) to the EC to trigger the EC to read the fingerprint verification command written by the fingerprint sensor driver from the shared memory. Specifically, the fingerprint sensor driver may send the first notification to the EC through the GPIO interface. The transmission of the first notification based on the GPIO interface can improve the transmission efficiency of the first notification, thereby increasing the efficiency of fingerprint interaction between the EC and the CPU.
S115,响应第一通知,EC 107可通过第一接口(具体为读接口)从共享内存中读取指纹传感器驱动写入的指纹验证指令。S115. In response to the first notification, the EC 107 can read the fingerprint verification instruction written by the fingerprint sensor driver from the shared memory through the first interface (specifically, the read interface).
S116,响应该指纹验证指令,EC可通过第一接口(具体为写接口)往共享内存中写入加密后的用户指纹。S116. In response to the fingerprint verification instruction, the EC can write the encrypted user fingerprint into the shared memory through the first interface (specifically, the write interface).
S117,在将用户指纹写入共享内存后,EC可向指纹传感器驱动发送第二通知(特定IO指令),以通知指纹传感器驱动用户指纹已写入共享内存。具体的,EC可通过GPIO接口向指纹传感器驱动发送第二通知。基于GPIO接口传输第二通知,可提高第二通知的传输效率,进而提高EC与CPU之间的指纹交互效率。S117: After writing the user's fingerprint into the shared memory, the EC may send a second notification (specific IO command) to the fingerprint sensor driver to notify the fingerprint sensor that the user's fingerprint has been written into the shared memory. Specifically, the EC may send the second notification to the fingerprint sensor driver through the GPIO interface. The transmission of the second notification based on the GPIO interface can improve the transmission efficiency of the second notification, thereby increasing the efficiency of fingerprint interaction between the EC and the CPU.
S118,指纹传感器驱动可根据第二通知,从共享内存中读取用户指纹。S118: The fingerprint sensor driver may read the user's fingerprint from the shared memory according to the second notification.
至此,指纹传感器驱动获得了指纹传感器采集到的用户指纹,可向操作系统发送该用户指纹,以支持操作系统根据该用户指纹进行用户身份验证。So far, the fingerprint sensor driver has obtained the user fingerprint collected by the fingerprint sensor, and can send the user fingerprint to the operating system to support the operating system to perform user identity verification based on the user fingerprint.
S120,指纹传感器驱动将用户指纹发送给操作系统。S120: The fingerprint sensor driver sends the user's fingerprint to the operating system.
S121-S122,操作系统根据该用户指纹进行用户身份验证,如果验证结果为验证通过,则笔记本电脑会显示如图3B所示的操作系统桌面。至此,用户成功登录笔记本电脑的操作系统。In S121-S122, the operating system performs user identity verification according to the user's fingerprint. If the verification result is that the verification is passed, the notebook computer will display the operating system desktop as shown in FIG. 3B. At this point, the user has successfully logged in to the operating system of the laptop.
具体的,操作系统可比较该用户指纹和本地存储206中的指纹模板,如果该用户指纹与指纹模板一致,则确定验证结果为验证通过;否则,确定验证结果为验证未通过。Specifically, the operating system may compare the user fingerprint with the fingerprint template in the local storage 206, and if the user fingerprint is consistent with the fingerprint template, the verification result is determined to be verified; otherwise, the verification result is determined to be failed.
如果验证结果为验证未通过,则笔记本电脑会显示如图2B所示的包括用户账户图标204和用户密码输入框205的操作系统登录界面,以供用户输入用户密码或者等待用户通过指纹传感器录入用户指纹,以登录笔记本电脑的操作系统。If the verification result is that the verification fails, the notebook computer will display the operating system login interface including the user account icon 204 and the user password input box 205 as shown in FIG. 2B for the user to enter the user password or wait for the user to enter the user through the fingerprint sensor Fingerprint to log into the operating system of the laptop.
可以看出,在实施例1提供的登录操作系统的方法中,通过按下电源键,便可将处于关机状态(S5)笔记本电脑100开机,并登录操作系统,简单高效。而且,实施例1不再需要指纹传感器厂商提供的MCU(如图4中的MCU 103),可降低成本,提高集成度,有利于笔记本电脑小型化。It can be seen that in the method for logging in to the operating system provided in Embodiment 1, by pressing the power button, the notebook computer 100 in the shutdown state (S5) can be turned on and logged in to the operating system, which is simple and efficient. Moreover, Embodiment 1 no longer needs the MCU provided by the fingerprint sensor manufacturer (MCU 103 in FIG. 4), which can reduce the cost, improve the integration level, and facilitate the miniaturization of the notebook computer.
为了进一步提高用户信息安全性,实施例1提供的登录操作系统的方法还可包括:在S116之后,EC删除存储在EC内部的用户指纹。也即是说,EC向共享内存中写入用户指纹之后便删除EC内存储的用户指纹。这样,可提高指纹注册用户的信息安全性,避免其他用户通过遗留在EC中的注册用户的指纹登录操作系统。这里,指纹注册用户是指提前录入指纹模板的用户。In order to further improve the security of user information, the method for logging in to the operating system provided in Embodiment 1 may further include: after S116, the EC deletes the user fingerprint stored in the EC. In other words, after the EC writes the user fingerprint into the shared memory, the user fingerprint stored in the EC is deleted. In this way, the information security of fingerprint registered users can be improved, and other users can be prevented from logging in to the operating system through the fingerprints of registered users left in the EC. Here, a fingerprint registered user refers to a user who has entered a fingerprint template in advance.
为了进一步提高用户信息安全性,实施例1提供的登录操作系统的方法还可包括:如果EC保存用户指纹的时间超过特定时长(如3秒),还未收到来自指纹传感器驱动的指纹验证指令,则EC可删除该用户指纹。In order to further improve the security of user information, the method for logging in to the operating system provided in Embodiment 1 may further include: if the EC saves the user's fingerprint for more than a certain period of time (for example, 3 seconds), the fingerprint verification instruction from the fingerprint sensor driver has not been received. , The EC can delete the user's fingerprint.
因为,操作系统可能会因为系统故障或其他原因,而不能及时向指纹传感器驱动发送 指纹验证请求,从而导致指纹传感器驱动不能及时向EC发送指纹验证指令。或者,操作系统及时向指纹传感器驱动发送了指纹验证请求,但指纹传感器驱动没能及时向EC发送指纹验证指令。这样,会导致不能及时登录操作系统,登录过程延长。指纹注册用户可能在等待登录操作系统的过程中离开笔记本电脑,若该用户离开后操作系统成功登录,则该用户的信息会存在被其他用户查看或窃取的风险。Because the operating system may not be able to send fingerprint verification requests to the fingerprint sensor driver in time due to system failures or other reasons, resulting in the fingerprint sensor driver not being able to send fingerprint verification instructions to the EC in time. Or, the operating system sends the fingerprint verification request to the fingerprint sensor driver in time, but the fingerprint sensor driver fails to send the fingerprint verification instruction to the EC in time. In this way, it will lead to the failure to log in to the operating system in time, and the login process will be prolonged. A fingerprint-registered user may leave the laptop while waiting to log in to the operating system. If the user successfully logs in to the operating system after the user leaves, the user's information may be viewed or stolen by other users.
实施例2Example 2
实施例2中,在用户手指按下电源键时,笔记本电脑100处于睡眠状态(S1或S3),或休眠状态(S4)。此时,笔记本电脑100的CPU处于关闭状态,其他硬件设备处于低功耗工作状态,例如屏幕熄屏(或称黑屏)。用户手指按下电源键这一操作将触发笔记本电脑100从睡眠状态或休眠状态,切换到工作状态。In Embodiment 2, when the user's finger presses the power button, the notebook computer 100 is in a sleep state (S1 or S3), or a hibernation state (S4). At this time, the CPU of the notebook computer 100 is in the off state, and other hardware devices are in a low power consumption working state, for example, the screen is off (or called a black screen). The operation of the user's finger pressing the power button will trigger the notebook computer 100 to switch from the sleep state or the hibernation state to the working state.
图9示例性示出了实施例2提供的登录操作系统的方法。如图9所示,该方法可包括如下步骤:FIG. 9 exemplarily shows the method for logging in to the operating system provided in Embodiment 2. As shown in Figure 9, the method may include the following steps:
S201,笔记本电脑100检测到电源键被按下。具体可参考实施例1中的S101,这里不再赘述。S201: The notebook computer 100 detects that the power button is pressed. For details, refer to S101 in Embodiment 1, which will not be repeated here.
S202,当用户的手指按下电源按键时,处于低功耗工作状态的一些硬件设备会被唤醒,例如屏幕会被点亮,指纹传感器开始采集指纹等等。此时,与电源按键集成一体的指纹传感器便可以检测到用户手指触摸,并可采集用户指纹。具体的,用户指纹的数据表现形式可以是指纹图像。具体可参考实施例1中的S107,这里不再赘述。S202: When the user's finger presses the power button, some hardware devices in a low-power working state will be awakened, for example, the screen will be lit, the fingerprint sensor will start to collect fingerprints, and so on. At this time, the fingerprint sensor integrated with the power button can detect the user's finger touch and collect the user's fingerprint. Specifically, the data representation form of the user's fingerprint may be a fingerprint image. For details, refer to S107 in Embodiment 1, which will not be repeated here.
由于在用户手指按下电源键时,笔记本电脑100处于睡眠状态或休眠状态,EC初始化完毕,指纹传感器处于低功耗工作状态,并未断电,能够采集用户指纹,因此,实施例2提供的登录操作系统的方法中不再需要对指纹传感器上电以及初始化EC。When the user's finger presses the power button, the notebook computer 100 is in a sleep state or a hibernation state, the EC is initialized, the fingerprint sensor is in a low-power working state, is not powered off, and can collect user fingerprints. Therefore, Embodiment 2 provides It is no longer necessary to power on the fingerprint sensor and initialize the EC in the method of logging in to the operating system.
S203,EC确定,在用户手指按下电源键时,笔记本电脑100处于休眠状态或睡眠状态。EC负责管理笔记本电脑的运行状态。In S203, the EC determines that when the user's finger presses the power button, the notebook computer 100 is in a dormant state or a sleep state. EC is responsible for managing the operating status of the laptop.
S204,在电源键被按下后,EC会控制CPU上电。S204: After the power button is pressed, the EC will control the CPU to power on.
CPU上电启动后会运行操作系统,加载指纹传感器驱动。然后,操作系统会请求指纹传感器驱动提供用户指纹。操作系统获取用户指纹存在下述几种目的:1.录入指纹模板;2.进行用户身份验证。本实施例涉及第1种目的。After the CPU is powered on, it will run the operating system and load the fingerprint sensor driver. Then, the operating system will request the fingerprint sensor driver to provide the user's fingerprint. There are several purposes for the operating system to obtain user fingerprints: 1. Enter the fingerprint template; 2. Perform user identity verification. This embodiment relates to the first purpose.
S205,在采集到用户指纹后,指纹传感器可通知EC获取用户指纹。S205: After collecting the user's fingerprint, the fingerprint sensor may notify the EC to obtain the user's fingerprint.
S206-S207,响应于指纹传感器的通知,EC可向指纹传感器发送请求,以请求获取用户指纹。然后,指纹传感器向EC返回指纹传感器采集的用户指纹。S206-S207, in response to the fingerprint sensor's notification, the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
具体可参考实施例1中的S109-S110,这里不再赘述。For details, please refer to S109-S110 in Embodiment 1, which will not be repeated here.
S208,EC加密获取到的用户指纹。具体可参考实施例1中的S111,这里不再赘述。S208, the EC encrypts the acquired user fingerprint. For details, refer to S111 in Embodiment 1, which will not be repeated here.
S210,运行在CPU中的指纹传感器驱动向共享内存中写入指纹验证指令。在S210之前,指纹传感器驱动接收到了来自操作系统的指纹验证请求,可参考S209。该指纹验证请求具体可来自运行在操作系统上的用户登录APP。响应该指纹验证请求,指纹传感器驱动才向共享内存中写入指纹验证指令,以通知EC往共享内存中写入指纹传感器采集到的用户指纹。该指纹验证指令可以是指纹传感器驱动的驱动命令集中的某个特定命令。S210: The fingerprint sensor driver running in the CPU writes a fingerprint verification instruction to the shared memory. Before S210, the fingerprint sensor driver received a fingerprint verification request from the operating system. Refer to S209. The fingerprint verification request may specifically come from a user logging in to the APP running on the operating system. In response to the fingerprint verification request, the fingerprint sensor driver writes a fingerprint verification instruction to the shared memory to notify the EC to write the user's fingerprint collected by the fingerprint sensor into the shared memory. The fingerprint verification instruction may be a specific command in the drive command set driven by the fingerprint sensor.
由于在笔记本电脑进入休眠状态或睡眠状态之前,当时还在工作状态的笔记本电脑中的BIOS就已经初始化内存,并向EC、CPU通知了共享内存地址。因此,BIOS可不再向EC、CPU通知共享内存地址。Because before the notebook computer enters the hibernation state or the sleep state, the BIOS in the notebook computer that is still working at that time has already initialized the memory and notified the EC and the CPU of the shared memory address. Therefore, the BIOS can no longer notify the EC and CPU of the shared memory address.
S211,指纹传感器驱动向EC发送第一通知(特定IO指令),以触发EC从共享内存中读取指纹传感器驱动所写入的指纹验证指令。具体的,指纹传感器驱动可通过GPIO接口向EC发送第一通知。S211: The fingerprint sensor driver sends a first notification (specific IO instruction) to the EC to trigger the EC to read the fingerprint verification instruction written by the fingerprint sensor driver from the shared memory. Specifically, the fingerprint sensor driver may send the first notification to the EC through the GPIO interface.
S212,响应第一通知,EC 107可通过第一接口(具体为读接口)从共享内存中读取指纹传感器驱动写入的指纹验证指令。S212. In response to the first notification, the EC 107 may read the fingerprint verification instruction written by the fingerprint sensor driver from the shared memory through the first interface (specifically, the read interface).
S213,响应该指纹验证指令,EC可往共享内存中写入加密后的用户指纹。S213. In response to the fingerprint verification instruction, the EC may write the encrypted user fingerprint into the shared memory.
S214,在将用户指纹写入共享内存后,EC可向指纹传感器驱动发送第二通知(特定IO指令),以通知指纹传感器驱动用户指纹已写入共享内存。具体的,EC可通过GPIO接口向指纹传感器驱动发送第二通知。S214: After writing the user's fingerprint into the shared memory, the EC may send a second notification (specific IO command) to the fingerprint sensor driver to notify the fingerprint sensor that the user's fingerprint has been written into the shared memory. Specifically, the EC may send the second notification to the fingerprint sensor driver through the GPIO interface.
S215,指纹传感器驱动可根据第二通知,从共享内存中读取用户指纹。S215: The fingerprint sensor driver may read the user's fingerprint from the shared memory according to the second notification.
至此,指纹传感器驱动获得了指纹传感器采集到的用户指纹,可向操作系统发送该用户指纹,以支持操作系统根据该用户指纹进行用户身份验证。So far, the fingerprint sensor driver has obtained the user fingerprint collected by the fingerprint sensor, and can send the user fingerprint to the operating system to support the operating system to perform user identity verification based on the user fingerprint.
S216,指纹传感器驱动将用户指纹发送给操作系统。S216: The fingerprint sensor driver sends the user's fingerprint to the operating system.
S217-S218,操作系统根据该用户指纹进行用户身份验证,如果验证结果为验证通过,则笔记本电脑100会显示如图3B所示的操作系统桌面。至此,用户成功登录笔记本电脑100的操作系统。In S217-S218, the operating system performs user identity verification based on the user's fingerprint. If the verification result is that the verification is passed, the notebook computer 100 will display the operating system desktop as shown in FIG. 3B. So far, the user successfully logs in to the operating system of the notebook computer 100.
如果验证结果为验证未通过,则笔记本电脑会显示如图2B所示的包括用户账户图标204和用户密码输入框205的操作系统登录界面,以供用户输入用户密码或者等待用户通过指纹传感器录入用户指纹,以登录笔记本电脑的操作系统。If the verification result is that the verification fails, the notebook computer will display the operating system login interface including the user account icon 204 and the user password input box 205 as shown in FIG. 2B for the user to enter the user password or wait for the user to enter the user through the fingerprint sensor Fingerprint to log into the operating system of the laptop.
可以看出,在实施例2提供的登录操作系统的方法中,通过按下电源键,便可将处于休眠状态或睡眠状态的笔记本电脑100开机,并登录操作系统,简单高效。而且,实施例2不再需要指纹传感器厂商提供的MCU(如图4中的MCU 103),可降低成本,提高集成度,有利于笔记本电脑小型化。It can be seen that in the method for logging in to the operating system provided in Embodiment 2, by pressing the power button, the notebook computer 100 in the dormant state or the sleeping state can be turned on and logged in to the operating system, which is simple and efficient. Moreover, Embodiment 2 no longer needs the MCU provided by the fingerprint sensor manufacturer (MCU 103 in FIG. 4), which can reduce the cost, improve the integration level, and facilitate the miniaturization of the notebook computer.
为了进一步提高用户信息安全性,实施例2提供的登录操作系统的方法还可包括:如果EC保存用户指纹的时间超过特定时长(如3秒),还未收到来自指纹传感器驱动的指纹验证指令,则EC可删除该用户指纹。In order to further improve the security of user information, the method for logging in to the operating system provided in Embodiment 2 may further include: if the EC saves the user's fingerprint for more than a certain period of time (for example, 3 seconds), the fingerprint verification instruction from the fingerprint sensor driver has not been received , The EC can delete the user's fingerprint.
实施例3Example 3
实施例3中,当笔记本电脑100处于睡眠状态(标记为S1或S3)或休眠状态(S4)时,如果用户手指按压电源键的时间超过特定时长(例如5秒),即用户手指长按电源键,则可触发笔记本电脑100关机,笔记本电脑100会进入关机状态。In Embodiment 3, when the notebook computer 100 is in the sleep state (marked as S1 or S3) or the sleep state (S4), if the user's finger presses the power button for more than a certain period of time (for example, 5 seconds), that is, the user's finger presses the power button for a long time. Key, the notebook computer 100 can be triggered to shut down, and the notebook computer 100 will enter the shutdown state.
为了避免注册指纹用户之外的其他用户按压设备的电源按键关闭设备,导致设备中未保存的信息(如设备中正在编辑、未保存的文档)因为设备强制关机而丢失,实施例3提供的登录操作系统的方法可如图10所示,包括:In order to prevent users other than the registered fingerprint user from pressing the power button of the device to turn off the device, causing unsaved information in the device (such as editing and unsaved documents in the device) to be lost due to the forced shutdown of the device, the login provided in Example 3 The method of operating system can be as shown in Figure 10, including:
S301,笔记本电脑100检测到电源键被用户手指长按。S301: The notebook computer 100 detects that the power button is long pressed by the user's finger.
具体的,笔记本电脑100的EC会负责检测电源键是否被按下,以及电源键被按压的时长。这里,长按是指电源键被按下的时间超过第一时长(例如5秒)。Specifically, the EC of the notebook computer 100 is responsible for detecting whether the power button is pressed, and the length of time the power button is pressed. Here, the long press means that the power button is pressed for longer than the first time period (for example, 5 seconds).
S302,当用户的手指按下电源按键时,处于低功耗工作状态的一些硬件设备会被唤醒,例如屏幕会被点亮,指纹传感器开始采集指纹等等。此时,与电源按键集成一体的指纹传感器便可以检测到用户手指触摸,并可采集用户指纹。具体的,用户指纹的数据表现形式可以是指纹图像。具体可参考实施例2中的S202,这里不再赘述。S302: When the user's finger presses the power button, some hardware devices in a low-power working state will be awakened, for example, the screen will be lit, the fingerprint sensor will start to collect fingerprints, and so on. At this time, the fingerprint sensor integrated with the power button can detect the user's finger touch and collect the user's fingerprint. Specifically, the data representation form of the user's fingerprint may be a fingerprint image. For details, refer to S202 in Embodiment 2, which will not be repeated here.
S303,EC确定,在用户手指按下电源键时,笔记本电脑100处于休眠状态或睡眠状态。EC负责管理笔记本电脑的运行状态。In S303, the EC determines that when the user's finger presses the power button, the notebook computer 100 is in a sleep state or a sleep state. EC is responsible for managing the operating status of the laptop.
S304,在电源键被按下后,EC会控制CPU上电。具体可参考实施例2中的S204,这里不再赘述。S304: After the power button is pressed, the EC will control the CPU to power on. For details, refer to S204 in Embodiment 2, which will not be repeated here.
S305,在采集到用户指纹后,指纹传感器可通知EC获取用户指纹。S305: After collecting the user's fingerprint, the fingerprint sensor may notify the EC to obtain the user's fingerprint.
S306-S307,响应于指纹传感器的通知,EC可向指纹传感器发送请求,以请求获取用户指纹。然后,指纹传感器向EC返回指纹传感器采集的用户指纹。S306-S307, in response to the notification from the fingerprint sensor, the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
具体可参考实施例2中的S206-S207,这里不再赘述。For details, refer to S206-S207 in Embodiment 2, which will not be repeated here.
S308,EC加密获取到的用户指纹。具体可参考实施例2中的S208,这里不再赘述。S308, the EC encrypts the acquired user fingerprint. For details, refer to S208 in Embodiment 2, which will not be repeated here.
S309,EC可往共享内存中写入加密后的用户指纹。S309, the EC can write the encrypted user fingerprint into the shared memory.
S310,在将用户指纹写入共享内存后,EC可向指纹传感器驱动发送第三通知,以通知指纹传感器驱动用户指纹已写入共享内存,并通知指纹传感器驱动触发操作系统进行用户身份验证。具体的,EC可通过GPIO接口向指纹传感器驱动发送第三通知。基于GPIO接口传输第三通知,可提高第三通知的传输效率,进而提高EC与CPU之间的指纹交互效率。S310: After writing the user fingerprint into the shared memory, the EC may send a third notification to the fingerprint sensor driver to notify the fingerprint sensor driver that the user fingerprint has been written into the shared memory, and notify the fingerprint sensor driver to trigger the operating system to perform user authentication. Specifically, the EC may send the third notification to the fingerprint sensor driver through the GPIO interface. The third notification is transmitted based on the GPIO interface, which can improve the transmission efficiency of the third notification, thereby improving the efficiency of fingerprint interaction between the EC and the CPU.
S311响应第三通知,指纹传感器驱动向操作系统发送指纹验证请求,以请求操作系统进行用户身份验证。In S311, in response to the third notification, the fingerprint sensor driver sends a fingerprint verification request to the operating system to request the operating system to perform user identity verification.
从S309-S311可以看出,EC在获取用户指纹后,主动通知请求操作系统进行用户身份验证,避免注册指纹用户之外的其他用户对笔记本电脑100进行强制关机操作,从而可避免注册指纹用户的未保存数据因该强制关机操作出现丢失。It can be seen from S309-S311 that after obtaining the user's fingerprint, the EC proactively informs and requests the operating system to perform user identity verification, so as to prevent users other than the registered fingerprint user from forcibly shutting down the laptop 100, thereby avoiding the registered fingerprint user's Unsaved data is lost due to this forced shutdown operation.
S312,响应第三通知,指纹传感器驱动还从共享内存中读取用户指纹。S312. In response to the third notification, the fingerprint sensor driver also reads the user's fingerprint from the shared memory.
S313,指纹传感器驱动将用户指纹发送给操作系统。S313, the fingerprint sensor driver sends the user fingerprint to the operating system.
S314-S315,操作系统可根据指纹传感器驱动发送的该用户指纹进行用户身份验证,如果验证结果为验证通过,则会执行关机流程。具体的,操作系统可触发EC和电源管理单元等部件共同配合完成关机流程。In S314-S315, the operating system can perform user identity verification according to the user fingerprint sent by the fingerprint sensor driver, and if the verification result is passed, the shutdown process will be executed. Specifically, the operating system can trigger components such as the EC and the power management unit to cooperate to complete the shutdown process.
其中,如果验证结果为验证未通过,则操作系统可以控制笔记本电脑100进入休眠状态。如果验证结果为验证未通过,操作系统还可如图11所示的“误关机界面”。Wherein, if the verification result is that the verification fails, the operating system can control the notebook computer 100 to enter the sleep state. If the verification result is that the verification fails, the operating system can also show the "incorrect shutdown interface" as shown in Figure 11.
示例性的,如果验证结果指示指纹验证未通过,设备则可以进入休眠模式,并显示如图11所示的“误关机界面”。例如,图11所示的“误关机界面”中可以显示有“设备已锁定”和“除机主外的其他人员请勿继续操作”2001的提示信息。Exemplarily, if the verification result indicates that the fingerprint verification is not passed, the device may enter the sleep mode and display the "incorrect shutdown interface" as shown in FIG. 11. For example, the "Inadvertent Shutdown Interface" shown in FIG. 11 may display prompt messages of "The device is locked" and "No personnel other than the owner of the machine should continue to operate" 2001.
可以看出,实施例3提供的登录操作系统的方法,针对处于休眠状态或睡眠状态的笔记本电脑100,可避免注册指纹用户之外的其他用户按压设备的电源按键关闭设备,而出现设备中未保存的信息(如设备中正在编辑、未保存的文档)因为设备强制关机发生丢失的问 题。It can be seen that the method for logging in to the operating system provided in the third embodiment can prevent users other than the registered fingerprint user from pressing the power button of the device to turn off the device, and the device does not appear to be in the dormant state or the sleeping state of the notebook computer 100. The saved information (such as the document being edited and unsaved in the device) is lost due to the forced shutdown of the device.
实施例4Example 4
实施例4中,在用户手指按下电源键时,笔记本电脑100处于开机状态(S0)。此时,按下电源键可以存在以下几种情况:1.短按电源键进行休眠状态;2.长按电源键关机。这里,长按是指电源键被按下的时间超过特定时长(例如5秒),短按是指电源键被按下的时间没有超过该特定时长。In Embodiment 4, when the user's finger presses the power button, the notebook computer 100 is in the power-on state (S0). At this time, pressing the power button can have the following situations: 1. Short press the power button to sleep; 2. Long press the power button to shut down. Here, a long press means that the power key has been pressed for more than a specific time period (for example, 5 seconds), and a short press means that the power key has been pressed for no longer than the specific time period.
其中,针对第1种情况,EC可触发笔记本电脑100休眠,笔记本电脑100会进入休眠状态。针对第2种情况,EC可触发笔记本电脑100关机,笔记本电脑100会进入关机状态。Among them, for the first case, the EC can trigger the notebook computer 100 to sleep, and the notebook computer 100 will enter the sleep state. For the second case, the EC can trigger the notebook computer 100 to shut down, and the notebook computer 100 will enter the shutdown state.
为了避免注册指纹用户之外的其他用户按压设备的电源按键关闭设备,导致设备中未保存的信息(如设备中正在编辑、未保存的文档)因为设备强制关机而丢失,实施例4提供的登录操作系统的方法可如图12所示,包括:In order to prevent users other than the registered fingerprint user from pressing the power button of the device to turn off the device, causing unsaved information in the device (such as editing and unsaved documents in the device) to be lost due to the forced shutdown of the device, the login provided in Example 4 The method of operating system can be shown in Figure 12, including:
S401,笔记本电脑100检测到电源键被用户手指长按。体可参考实施例3中的S301,这里不再赘述。S401: The notebook computer 100 detects that the power button is long pressed by the user's finger. For details, please refer to S301 in Embodiment 3, which will not be repeated here.
S402,当用户的手指按下电源按键时,与电源按键集成一体的指纹传感器便可以检测到用户手指触摸,并可采集用户指纹。具体可参考实施例3中的S302,这里不再赘述。S402: When the user's finger presses the power button, the fingerprint sensor integrated with the power button can detect the touch of the user's finger and collect the user's fingerprint. For details, refer to S302 in Embodiment 3, which will not be repeated here.
S403,EC确定,在用户手指按下电源键时,笔记本电脑100处于工作状态。EC负责管理笔记本电脑的运行状态。In S403, the EC determines that the notebook computer 100 is in a working state when the user's finger presses the power button. EC is responsible for managing the operating status of the laptop.
因为,笔记本电脑100处于工作状态,因此,在电源键被按下后,不需要再对CPU以及其他硬件设备上电,例如对屏幕、指纹传感器上电。Because the notebook computer 100 is in a working state, therefore, after the power button is pressed, there is no need to power on the CPU and other hardware devices, such as power on the screen and the fingerprint sensor.
S405,在采集到用户指纹后,指纹传感器可通知EC获取用户指纹。S405: After collecting the user's fingerprint, the fingerprint sensor may notify the EC to obtain the user's fingerprint.
S406-S407,响应于指纹传感器的通知,EC可向指纹传感器发送请求,以请求获取用户指纹。然后,指纹传感器向EC返回指纹传感器采集的用户指纹。S406-S407, in response to the notification from the fingerprint sensor, the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
具体可参考实施例3中的S306-S307,这里不再赘述。For details, please refer to S306-S307 in Embodiment 3, which will not be repeated here.
S408,EC加密获取到的用户指纹。具体可参考实施例3中的S308,这里不再赘述。S408, the EC encrypts the acquired user fingerprint. For details, refer to S308 in Embodiment 3, which will not be repeated here.
S409,EC可往共享内存中写入加密后的用户指纹。In S409, the EC can write the encrypted user fingerprint into the shared memory.
S410,在将用户指纹写入共享内存后,EC可向指纹传感器驱动发送通知,以通知指纹传感器驱动用户指纹已写入共享内存。In S410, after writing the user's fingerprint into the shared memory, the EC may send a notification to the fingerprint sensor driver to notify the fingerprint sensor driver that the user's fingerprint has been written into the shared memory.
S411响应该通知,指纹传感器驱动向操作系统发送指纹验证请求,以请求操作系统进行用户身份验证。S411 In response to the notification, the fingerprint sensor driver sends a fingerprint verification request to the operating system to request the operating system to perform user identity verification.
S412,响应该通知,指纹传感器驱动还从共享内存中读取用户指纹。S412. In response to the notification, the fingerprint sensor driver also reads the user's fingerprint from the shared memory.
S413,指纹传感器驱动将用户指纹发送给操作系统。S413: The fingerprint sensor driver sends the user's fingerprint to the operating system.
S414,操作系统判断笔记本电脑100是否处于锁屏状态。若处于锁屏状态,则表示指纹注册用户离开了笔记本电脑100,可执行S 415,即需要验证用户身份后才能执行关机流程。若未处于锁屏状态,则表示指纹注册用户正在使用笔记本电脑100,无需验证用户身份,可执行S416,即直接执行关机流程。S414: The operating system judges whether the notebook computer 100 is in a locked screen state. If the screen is locked, it means that the fingerprint-registered user has left the notebook computer 100, and S415 can be executed, that is, the user's identity needs to be verified before the shutdown process can be performed. If it is not in the lock screen state, it means that the fingerprint registered user is using the laptop 100, and there is no need to verify the user identity, and S416 can be executed, that is, the shutdown process will be executed directly.
S415,操作系统可根据指纹传感器驱动发送的该用户指纹进行用户身份验证,如果验证结果为验证通过,则可执行S416,即执行关机流程。如果验证结果为验证未通过,则操 作系统可以控制笔记本电脑100进入休眠状态。如果验证结果为验证未通过,操作系统还可如图11所示的“误关机界面”。S415: The operating system may perform user identity verification according to the user fingerprint sent by the fingerprint sensor driver. If the verification result is that the verification is passed, S416 may be executed, that is, the shutdown process may be executed. If the verification result is that the verification fails, the operating system can control the notebook computer 100 to enter the sleep state. If the verification result is that the verification fails, the operating system can also show the "incorrect shutdown interface" as shown in Figure 11.
S416,操作系统执行关机流程。具体的,操作系统可触发EC和电源管理单元等部件共同配合完成关机流程。S416: The operating system executes a shutdown process. Specifically, the operating system can trigger components such as the EC and the power management unit to cooperate to complete the shutdown process.
可以看出,实施例4提供的登录操作系统的方法,针对处于工作状态的笔记本电脑100,当笔记本电脑100锁屏时,可避免注册指纹用户之外的其他用户按压设备的电源按键关闭设备,而出现设备中未保存的信息(如设备中正在编辑、未保存的文档)因为设备强制关机发生丢失的问题。It can be seen that the method for logging in to the operating system provided in Embodiment 4 is for the laptop 100 in a working state. When the laptop 100 is locked, it can prevent users other than the registered fingerprint user from pressing the power button of the device to turn off the device. However, there is a problem that unsaved information in the device (such as editing and unsaved documents in the device) is lost due to the forced shutdown of the device.
另外,在笔记本电脑100处于工作状态、休眠状态或睡眠状态时,指纹注册用户可能会误触电源按键,而导致指纹传感器采集到用户指纹,并将该用户指纹保存在EC中。为了避免其他用户在这种情况下利用该用户指纹进行用户身份验证,进一步提高用户信息安全性,本申请实施例提供的登录操作系统的方法还可包括:如果EC保存用户指纹的时间超过特定时长(如3秒),还未检测到电源键被按下,则EC可删除该用户指纹。In addition, when the notebook computer 100 is in a working state, a dormant state, or a sleeping state, the fingerprint-registered user may accidentally touch the power button, which may cause the fingerprint sensor to collect the user's fingerprint and save the user's fingerprint in the EC. In order to prevent other users from using the user fingerprint for user identity verification in this case, and to further improve user information security, the method for logging in to the operating system provided in this embodiment of the application may further include: if the EC saves the user fingerprint for more than a certain period of time (For example, 3 seconds), the EC can delete the user's fingerprint if it has not detected that the power button has been pressed.
前面各个实施例分别描述了,在笔记本电脑100处于不同运行状态下,通过用户手指按下电源键触发一键开机登录的方法。前面各个实施例可以结合实施,具体可根据笔记本电脑100在用户手指按下电源键时的运行状态,或进一步考虑用户手指按下电源的时长(短按或长按),确定执行前述实施例1至实施例4中某一个实施例提供的登录操作系统的方法。例如,在用户手指按下电源键时,如果笔记本电脑100的运行状态为关机状态,则可执行实施例1提供的登录操作系统的方法。又例如,如果在用户手指按下电源键时,如果笔记本电脑100的运行状态为休眠状态或睡眠状态,则可执行实施例2提供的登录操作系统的方法。The previous embodiments respectively describe the method of triggering one-key startup and login by the user's finger pressing the power button when the notebook computer 100 is in different operating states. The foregoing various embodiments can be implemented in combination. Specifically, the operating state of the notebook computer 100 when the user's finger presses the power button, or the length of time the user's finger presses the power source (short press or long press), can be determined to implement the foregoing embodiment 1. To the method of logging in to the operating system provided by a certain embodiment in embodiment 4. For example, when the user's finger presses the power button, if the running state of the notebook computer 100 is the shutdown state, the method for logging in to the operating system provided in Embodiment 1 can be executed. For another example, if the operating state of the notebook computer 100 is the sleep state or the sleep state when the user's finger presses the power button, the method for logging in to the operating system provided in Embodiment 2 can be executed.
前面各个实施例中提及的用户身份验证是通过比较指纹模板和指纹传感器采集的用户指纹来实现的。下面介绍指纹模板的录入过程。The user identity verification mentioned in the previous embodiments is implemented by comparing the fingerprint template with the user fingerprint collected by the fingerprint sensor. The following describes the entry process of the fingerprint template.
在笔记本电脑100中未设置登录密码的情况下,当用户按压笔记本电脑100的电源键时,CPU上电后运行操作系统,可直接显示图3B所示的操作系统桌面。也即是说,在该情况下,用户按下电源键,可以开机启动笔记本电脑100,并直接登录操作系统,而无需通过身份验证。In the case that the login password is not set in the notebook computer 100, when the user presses the power button of the notebook computer 100, the CPU runs the operating system after being powered on, and the operating system desktop shown in FIG. 3B can be directly displayed. In other words, in this case, the user can turn on the notebook computer 100 by pressing the power button, and directly log in to the operating system without passing identity verification.
为了便于用户录入指纹模板来保护个人信息,笔记本电脑100可在图3B所示的操作系统桌面中显示如图14A所示的“一键登录”指纹录入窗口601。如图13所示,指纹模板的录入过程可包括:In order to facilitate the user to enter a fingerprint template to protect personal information, the notebook computer 100 may display a "one-key login" fingerprint entry window 601 as shown in FIG. 14A on the operating system desktop shown in FIG. 3B. As shown in Figure 13, the fingerprint template entry process can include:
S501,笔记本电脑100检测到电源键被按下。S501: The notebook computer 100 detects that the power button is pressed.
S502,在电源键被按下后,笔记本电脑100开始上电。具体的,处于通电状态的EC可按照上电时序对各个硬件设备(如指纹传感器、BIOS、CPU)进行上电。S502: After the power button is pressed, the notebook computer 100 starts to be powered on. Specifically, the EC in the power-on state can power on various hardware devices (such as fingerprint sensors, BIOS, and CPU) according to the power-on sequence.
CPU上电启动后会运行操作系统,加载指纹传感器驱动。然后,操作系统会请求指纹传感器驱动提供用户指纹。操作系统获取用户指纹存在下述几种目的:1.录入指纹模板;2.进行用户身份验证。本实施例涉及第2种目的。After the CPU is powered on, it will run the operating system and load the fingerprint sensor driver. Then, the operating system will request the fingerprint sensor driver to provide the user's fingerprint. There are several purposes for the operating system to obtain user fingerprints: 1. Enter the fingerprint template; 2. Perform user identity verification. This embodiment relates to the second purpose.
S503,EC初始化。S503, the EC is initialized.
S504,EC向指纹传感器发送指纹传感器配置,使能指纹传感器。S504, the EC sends the fingerprint sensor configuration to the fingerprint sensor to enable the fingerprint sensor.
S505,BIOS进行内存初始化。BIOS是在等EC把内部的硬件设备初始化后才开始运行的。S505, the BIOS initializes the memory. The BIOS waits for the EC to initialize the internal hardware devices before starting to run.
S506,当用户的手指按下电源按键时,与电源按键集成一体的指纹传感器便可以检测到用户手指触摸,并可采集用户指纹。S506: When the user's finger presses the power button, the fingerprint sensor integrated with the power button can detect the touch of the user's finger and collect the user's fingerprint.
S507,在采集到用户指纹后,指纹传感器可通知EC获取用户指纹。S507: After collecting the user's fingerprint, the fingerprint sensor may notify the EC to obtain the user's fingerprint.
S508-S509,响应于指纹传感器的通知,EC可向指纹传感器发送请求,以请求获取用户指纹。然后,指纹传感器向EC返回指纹传感器采集的用户指纹。S508-S509, in response to the fingerprint sensor's notification, the EC may send a request to the fingerprint sensor to request the user's fingerprint. Then, the fingerprint sensor returns the user fingerprint collected by the fingerprint sensor to the EC.
S510,EC在每次从指纹传感器那读取指纹数据后,都会存储在EC内部的存储器中。EC内可加载有指纹加密模块这一固件程序。EC可通过纹加密模块对存储在其内部的用户指纹进行加密。S510, every time the EC reads fingerprint data from the fingerprint sensor, it will be stored in the internal memory of the EC. The firmware program of the fingerprint encryption module can be loaded in the EC. EC can encrypt the user's fingerprints stored in it through the pattern encryption module.
S511,在BIOS进行内存初始化后,BIOS可向EC通知共享内存地址。未示出的,BIOS还可向运行在CPU中的指纹传感器驱动通知共享内存地址。S511: After the BIOS performs memory initialization, the BIOS may notify the EC of the shared memory address. Not shown, the BIOS can also notify the fingerprint sensor driver running in the CPU of the shared memory address.
S512:在CPU上电启动后会运行操作系统,加载指纹传感器驱动之后,操作系统可显示图3B示例性所示的操作系统桌面。S512: After the CPU is powered on and started, the operating system will run. After the fingerprint sensor driver is loaded, the operating system can display the operating system desktop as shown in FIG. 3B exemplarily.
S513:操作系统可以在操作系统桌面上显示指纹录入窗口。S513: The operating system may display a fingerprint entry window on the desktop of the operating system.
示例性的,操作系统可以在在操作系统桌面上显示如图14A所示的指纹录入窗口610。指纹录入窗口610可以是指纹管理APP提供的用户界面。如图14A所示,指纹录入窗口610中可以包括“指纹用途列表”611和“指纹列表”614。其中,“指纹用途列表”611中可以包括至少一个指纹用途选项及其选项开关。例如,“指纹用途列表”611中可以包括“操作系统登录”选项及其选项开关612和“一键开机登录”选项及其选项开关613。“指纹列表”614中可以包括“添加指纹”选项615。Exemplarily, the operating system may display a fingerprint entry window 610 as shown in FIG. 14A on the desktop of the operating system. The fingerprint entry window 610 may be a user interface provided by a fingerprint management APP. As shown in FIG. 14A, the fingerprint entry window 610 may include a "fingerprint usage list" 611 and a "fingerprint list" 614. Wherein, the "fingerprint usage list" 611 may include at least one fingerprint usage option and its option switch. For example, the “fingerprint usage list” 611 may include the “operating system login” option and its option switch 612 and the “one-key boot login” option and its option switch 613. The "fingerprint list" 614 may include an "add fingerprint" option 615.
其中,用户可以通过开启“指纹用途列表”611中对应指纹用途选项的选项开关,来限制后续添加的用户指纹的用途。例如,如图14A所示,由于“指纹用途列表”611中的“一键开机登录”选项的选项开关613处于开启状态,而其他“指纹用途列表”611中的其他选项开关处于关闭状态;因此,如图14A所示,当用户控制光标620移动至“添加指纹”选项615,点击“添加指纹”选项615并执行后续指纹录入操作所录入的用户指纹则可以用于进行笔记本电脑100的“一键开机登录”。Among them, the user can limit the use of user fingerprints added subsequently by turning on the option switch corresponding to the fingerprint use option in the "fingerprint use list" 611. For example, as shown in FIG. 14A, because the option switch 613 of the "one-key power-on login" option in the "fingerprint usage list" 611 is in the on state, and the other option switches in the other "fingerprint usage list" 611 are in the off state; therefore 14A, when the user controls the cursor 620 to move to the “add fingerprint” option 615, click on the “add fingerprint” option 615 and perform subsequent fingerprint entry operations. The entered user fingerprint can be used to perform the “one” of the notebook computer 100. Key to boot and login".
S514:操作系统响应于用户在指纹录入窗口的输入命令,向指纹传感器驱动发送指纹录入请求。该指纹录入请求具体可来自运行在操作系统上的指纹管理APP。S514: In response to the user's input command in the fingerprint entry window, the operating system sends a fingerprint entry request to the fingerprint sensor driver. The fingerprint entry request may specifically come from a fingerprint management APP running on the operating system.
其中,该指纹录入请求用于指示指纹传感器驱动获取指纹传感器采集到的用户指纹。Wherein, the fingerprint entry request is used to instruct the fingerprint sensor to drive to obtain the user fingerprint collected by the fingerprint sensor.
S515,响应来自操作系统的指纹录入请求,运行在CPU中的指纹传感器驱动向共享内存中写入指纹录入指令,以通知EC往共享内存中写入指纹传感器采集到的用户指纹。S515: In response to the fingerprint entry request from the operating system, the fingerprint sensor driver running in the CPU writes a fingerprint entry instruction to the shared memory to notify the EC to write the user fingerprint collected by the fingerprint sensor into the shared memory.
S516,指纹传感器驱动向EC发送第五通知(特定IO指令),以触发EC从共享内存中读取指纹传感器驱动所写入的指纹录入指令。具体的,指纹传感器驱动可通过GPIO接口向EC发送第五通知。S516: The fingerprint sensor driver sends a fifth notification (specific IO command) to the EC to trigger the EC to read the fingerprint entry command written by the fingerprint sensor driver from the shared memory. Specifically, the fingerprint sensor driver may send the fifth notification to the EC through the GPIO interface.
S517,响应第五通知,EC可从共享内存中读取指纹传感器驱动写入的指纹录入指令。S517. In response to the fifth notification, the EC may read the fingerprint entry instruction written by the fingerprint sensor driver from the shared memory.
S518,响应指纹录入指令,EC可往共享内存中写入加密后的用户指纹。S518: In response to the fingerprint entry instruction, the EC can write the encrypted user fingerprint into the shared memory.
S519,在将用户指纹写入共享内存后,EC可向指纹传感器驱动发送第六通知,以通知指纹传感器驱动用户指纹已写入共享内存。S519: After writing the user's fingerprint into the shared memory, the EC may send a sixth notification to the fingerprint sensor driver to notify the fingerprint sensor driver that the user's fingerprint has been written into the shared memory.
S520,指纹传感器驱动可根据第六通知,从共享内存中读取用户指纹。S520, the fingerprint sensor driver may read the user fingerprint from the shared memory according to the sixth notification.
至此,指纹传感器驱动获得了指纹传感器采集到的用户指纹,可向操作系统发送该用户指纹,以支持操作系统根据该用户指纹设置指纹模板。So far, the fingerprint sensor driver has obtained the user fingerprint collected by the fingerprint sensor, and can send the user fingerprint to the operating system to support the operating system to set a fingerprint template according to the user fingerprint.
S521,指纹传感器驱动将用户指纹发送给操作系统。S521: The fingerprint sensor driver sends the user fingerprint to the operating system.
S521,操作系统可将该用户指纹保存为指纹模板。具体的,操作系统可将该用户指纹存储在本地存储206内的预设存储区域中。该预设存储区域可称为第一存储区域。S521: The operating system may save the user fingerprint as a fingerprint template. Specifically, the operating system may store the user fingerprint in a preset storage area in the local storage 206. The preset storage area may be referred to as the first storage area.
示例性的,如图14A所示,当用户控制光标620移动至“添加指纹”选项615,点击“添加指纹”选项615后,操作系统便可以向指纹传感器驱动发送指纹录入指令(即执行S514),并在如图14B所示的指纹录入窗口610中显示第一提示信息630,例如,该第一提示信息630可以为包括“用指纹代替密码实现设备‘一键开机登录’”和“首先,请将拇指或者其他手指放在‘电源按键’上”的提示文字。随后,如图15A所示,当用户的手机接触“电源按键”101后,指纹传感器102则可以采集该用户的指纹,EC也可以获取并保存指纹传感器102采集的用户指纹,即执行S506-S510。并且,指纹传感器驱动可以在接收到上述指纹录入指令后,可以从EC获取指纹传感器102采集的用户指纹(即执行S515-S520)。Exemplarily, as shown in FIG. 14A, when the user controls the cursor 620 to move to the "add fingerprint" option 615, and after clicking the "add fingerprint" option 615, the operating system can send a fingerprint entry instruction to the fingerprint sensor driver (ie, execute S514) , And display the first prompt information 630 in the fingerprint entry window 610 as shown in FIG. 14B. For example, the first prompt information 630 may include "Use fingerprints instead of passwords to implement device'one-key boot login'" and "First, Please put your thumb or other fingers on the "power button"" prompt text. Subsequently, as shown in FIG. 15A, when the user's mobile phone touches the "power button" 101, the fingerprint sensor 102 can collect the user's fingerprint, and the EC can also obtain and save the user fingerprint collected by the fingerprint sensor 102, that is, execute S506-S510 . In addition, the fingerprint sensor driver may obtain the user fingerprint collected by the fingerprint sensor 102 from the EC after receiving the fingerprint entry instruction (that is, execute S515-S520).
在另一种可能的实现方式中,在指纹传感器采集到用户指纹后,EC可以不立即获取该用户指纹,而是在等待到指纹传感器驱动发送的前述特定IO指令之后,再从指纹传感器那获取用户指纹。In another possible implementation, after the fingerprint sensor collects the user fingerprint, the EC may not obtain the user fingerprint immediately, but waits for the aforementioned specific IO command sent by the fingerprint sensor driver, and then obtains it from the fingerprint sensor User fingerprint.
示例性的,如图15A所示,当用户的手机接触“电源按键”101后,操作系统可以在如图15B所示的指纹录入窗口610中显示第二提示信息640和指纹填充窗口650。例如,如图15B所示,第二提示信息640可以为包括“将手指放在‘电源按键’上”再移开,重复此操作”的指示文字。在用户按照第二提示信息640的提示,重复“将手指放在‘电源按键’上再移开”的动作的过程中,指纹填充窗口650中可以显示该指纹填充窗口650中的指纹线条逐渐被填充的动态图像。Exemplarily, as shown in FIG. 15A, when the user's mobile phone touches the "power button" 101, the operating system may display the second prompt message 640 and the fingerprint filling window 650 in the fingerprint entry window 610 as shown in FIG. 15B. For example, as shown in FIG. 15B, the second prompt message 640 may be an instruction text including "Put your finger on the'power button'" and then remove, repeat this operation." After the user follows the prompt of the second prompt message 640, In the process of repeating the action of "put your finger on the'power button' and then remove it", the fingerprint filling window 650 can display a dynamic image in which the fingerprint lines in the fingerprint filling window 650 are gradually being filled.
在指纹传感器驱动接收到EC发送的用户指纹,并将该用户指纹保存为指纹模板后,操作系统则可以显示如图16所示的指纹录入窗口610。此时,指纹录入窗口610可以显示第三提示信息660和指纹线条填充满的指纹填充窗口与650。例如,如图16所示,第三提示信息660可以为包括“指纹已录入,您可以只用录入指纹,实现设备‘一键开机登录’”的指示文字。After the fingerprint sensor driver receives the user fingerprint sent by the EC and saves the user fingerprint as a fingerprint template, the operating system can display a fingerprint entry window 610 as shown in FIG. 16. At this time, the fingerprint entry window 610 may display the third prompt information 660 and the fingerprint filling window and 650 filled with fingerprint lines. For example, as shown in FIG. 16, the third prompt message 660 may include an instruction text that "fingerprints have been entered, you can only enter your fingerprints to achieve "one-key startup and login" of the device".
进一步的,操作系统还可以在指纹录入结束后,显示如图17所示的指纹录入窗口610。其中,如图17所示的指纹录入窗口610的“指纹列表”614相比于如图14A所示的指纹录入窗口610的“指纹列表”614,增加了“指纹1”616。该“指纹1”616可以用于实现设备“一键开机登录”。Further, the operating system may also display a fingerprint entry window 610 as shown in FIG. 17 after the fingerprint entry is completed. Among them, the "fingerprint list" 614 of the fingerprint entry window 610 shown in FIG. 17 is increased by "fingerprint 1" 616 compared to the "fingerprint list" 614 of the fingerprint entry window 610 shown in FIG. 14A. The "fingerprint 1" 616 can be used to implement "one-key startup and login" of the device.
通过图13所述的以及图14A-图14B、图15A-图15B、图16-图17所示的指纹模板的录入过程,用户可以在笔记本电脑100中录入多个不同手指的指纹,便于可以使用不同手指按压该笔记本电脑100的电源按键,实现笔记本电脑100的“一键开机登录”。Through the fingerprint template entry process described in Figure 13 and Figures 14A-14B, Figure 15A-15B, and Figure 16-17, the user can enter multiple fingerprints of different fingers in the notebook computer 100, which is convenient for Use different fingers to press the power button of the notebook computer 100 to realize the "one-key power-on login" of the notebook computer 100.
为了进一步提高用户信息安全性,指纹模板的录入过程还可包括:如果EC保存用户指纹的时间超过特定时长(如3秒),还未收到来自指纹传感器驱动的指纹录入指令,则EC可删除该用户指纹。In order to further improve user information security, the fingerprint template entry process can also include: If the EC saves the user’s fingerprint for more than a certain period of time (such as 3 seconds) and has not received a fingerprint entry instruction from the fingerprint sensor driver, the EC can be deleted The user's fingerprint.
因为,操作系统可能会因为系统故障或其他原因,而不能及时向指纹传感器驱动发送指纹录入指令,从而导致指纹传感器驱动不能及时向EC发送指纹录入指令。或者,操作系统及时向指纹传感器驱动发送了指纹录入指令,但指纹传感器驱动没能及时向EC发送指纹录入指令。这样,会导致操作系统不能及时录入指纹模板,存在指纹模板录入混乱或被窃取的风险。Because the operating system may not be able to send fingerprint entry instructions to the fingerprint sensor driver in time due to system failures or other reasons, resulting in the fingerprint sensor driver being unable to send fingerprint entry instructions to the EC in time. Or, the operating system sends the fingerprint entry instruction to the fingerprint sensor driver in time, but the fingerprint sensor driver fails to send the fingerprint entry instruction to the EC in time. In this way, the operating system will not be able to enter the fingerprint template in time, and there is a risk of confusion or theft of the fingerprint template entry.
前面各个实施例以笔记本电脑为例描述了本申请提供的登录操作系统的方法,不限于笔记本电脑,本申请提供的方法还可以应用于其他类型的电子设备,例如手机。The previous embodiments described the method for logging in to the operating system provided by this application by taking a laptop computer as an example. The method is not limited to a laptop computer. The method provided by this application can also be applied to other types of electronic devices, such as mobile phones.
图18示例性示出了本申请提供的登录操作系统的方法所应用于的手机700。如图18所示,手机700可包括电源键701和指纹传感器702,电源键701和指纹传感器702集成于一体。手机700的硬件架构、软件架构可以参考图5-图7实现,前述笔记本电脑100中的EC可以是对应在手机700中的开机电路,例如电源集成电路(integrated circuit,IC),该开机电路可以具有较强的运算能力,能够对用户指纹进行加密处理。FIG. 18 exemplarily shows a mobile phone 700 to which the method for logging in to an operating system provided by this application is applied. As shown in FIG. 18, the mobile phone 700 may include a power button 701 and a fingerprint sensor 702, and the power button 701 and the fingerprint sensor 702 are integrated. The hardware architecture and software architecture of the mobile phone 700 can be implemented with reference to FIGS. 5-7. The EC in the aforementioned notebook computer 100 may be a boot circuit corresponding to the mobile phone 700, such as a power integrated circuit (IC). The boot circuit may be It has strong computing power and can encrypt user fingerprints.
如图19所示,处于关机状态的手机700的电源键701被用户手指按下。当用户手指按下电源键701时,用户手指一定会接触到指纹传感器702。因此,当检测到用户手指按下电源键701时,手机700的指纹传感器702可以采集到用户指纹。响应于用户手指按下电源键701,手机700开机启动,同时可直接利用指纹传感器采集到的用户指纹进行用户身份验证,若通过验证,则解锁手机,并可显示703所示的主屏幕(home screen)界面。As shown in FIG. 19, the power button 701 of the mobile phone 700 in the shutdown state is pressed by the user's finger. When the user's finger presses the power button 701, the user's finger will definitely touch the fingerprint sensor 702. Therefore, when it is detected that the user's finger presses the power button 701, the fingerprint sensor 702 of the mobile phone 700 can collect the user's fingerprint. In response to the user's finger pressing the power button 701, the mobile phone 700 starts up, and at the same time, the user's fingerprint collected by the fingerprint sensor can be directly used for user identity verification. If the verification is passed, the mobile phone is unlocked and the home screen shown in 703 (home screen) interface.
通过图19可以看出,通过按下电源键,便可将处于关机状态手机700开机,并登录操作系统,简单高效。而且,可提高集成度,有利于手机小型化。It can be seen from FIG. 19 that by pressing the power button, the mobile phone 700 in the off state can be turned on and logged into the operating system, which is simple and efficient. Moreover, the integration level can be improved, which is conducive to the miniaturization of mobile phones.
上述主要从用户手指按压电子设备的电源按键启动电子设备的过程的角度对本申请实施例提供的方案进行了介绍。可以理解的是,设备为了实现上述功能,其包含了执行各个功能相应的功能模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的终端及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。The foregoing mainly introduces the solution provided by the embodiment of the present application from the perspective of the process of the user's finger pressing the power button of the electronic device to start the electronic device. It can be understood that, in order to implement the above-mentioned functions, the device includes functional modules corresponding to each function. Those skilled in the art should easily realize that in combination with the terminals and algorithm steps of the examples described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed by hardware or computer software-driven hardware depends on the specific application and design constraint conditions of the technical solution. Professionals and technicians can use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of this application.
本申请实施例可以根据上述方法示例对设备进行划分,例如,可以对应各个功能划分各个模块或者单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件模块或者单元的形式实现。其中,本申请实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。The embodiments of the present application may divide devices according to the foregoing method examples. For example, each module or unit may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The above-mentioned integrated modules can be implemented in the form of hardware, or in the form of software modules or units. Among them, the division of modules or units in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
本发明实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机程序代码,当电子设备的处理器执行该计算机程序代码时,该设备执行前述任一实施例中的相关 方法步骤实现上述实施例中的设备开机的方法。The embodiment of the present invention also provides a computer storage medium, the computer storage medium stores computer program code, when the processor of the electronic device executes the computer program code, the device executes the relevant method steps in any of the foregoing embodiments. The device booting method in the above embodiment.
本发明实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行前述任一实施例中的相关方法步骤实现上述实施例中的设备开机的方法。The embodiment of the present invention also provides a computer program product, which when the computer program product runs on a computer, causes the computer to execute the relevant method steps in any of the foregoing embodiments to implement the device booting method in the foregoing embodiment.
其中,本发明实施例提供的电子设备、计算机存储介质或者计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。Among them, the electronic device, computer storage medium or computer program product provided in the embodiments of the present invention are all used to execute the corresponding method provided above. Therefore, the beneficial effects that can be achieved can refer to the corresponding method provided above The beneficial effects in the process will not be repeated here.
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Through the description of the above embodiments, those skilled in the art can clearly understand that for the convenience and brevity of the description, only the division of the above-mentioned functional modules is used as an example. In practical applications, the above-mentioned functions can be allocated according to needs. It is completed by different functional modules, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. For the specific working process of the above-described system, device, and unit, reference may be made to the corresponding process in the foregoing method embodiment, which will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed system, device, and method can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, for example, multiple units or components may be It can be combined or integrated into another system, or some features can be ignored or not implemented. In addition, the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solution of the present application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , Including several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage media include: flash memory, mobile hard disk, read-only memory, random access memory, magnetic disk or optical disk and other media that can store program codes.
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。The above are only specific implementations of this application, but the protection scope of this application is not limited to this. Any change or replacement within the technical scope disclosed in this application shall be covered by the protection scope of this application. . Therefore, the protection scope of this application should be subject to the protection scope of the claims.

Claims (33)

  1. 一种登录操作系统的方法,所述方法应用于电子设备,其特征在于,所述电子设备包括电源键、指纹传感器、嵌入式控制器EC、中央处理器CPU;所述电源键和所述指纹传感器集成于一体;其中,所述EC连接所述指纹传感器;所述EC和所述CPU之间通过第一接口进行通信,所述第一接口为基于所述EC与所述CPU之间的共享内存创建的软件通信接口;A method for logging in to an operating system, which is applied to an electronic device, characterized in that the electronic device includes a power button, a fingerprint sensor, an embedded controller EC, and a central processing unit CPU; the power button and the fingerprint The sensor is integrated; wherein the EC is connected to the fingerprint sensor; the EC and the CPU communicate through a first interface, and the first interface is based on the sharing between the EC and the CPU Software communication interface created by memory;
    所述方法包括:The method includes:
    所述EC检测到所述电源键被用户手指按下,获取所述指纹传感器采集的用户指纹;所述指纹传感器在所述电源键被用户手指按下时采集指纹;The EC detects that the power button is pressed by the user's finger, and acquires the user fingerprint collected by the fingerprint sensor; the fingerprint sensor collects the fingerprint when the power button is pressed by the user's finger;
    所述EC加密所述用户指纹,存储加密后的所述用户指纹在所述EC的内部存储空间中;The EC encrypts the user fingerprint, and stores the encrypted user fingerprint in the internal storage space of the EC;
    所述EC通过所述第一接口获取来自所述CPU的指纹验证指令;The EC obtains the fingerprint verification instruction from the CPU through the first interface;
    响应所述指纹验证指令,所述EC通过所述第一接口向所述CPU传输加密后的所述用户指纹;In response to the fingerprint verification instruction, the EC transmits the encrypted user fingerprint to the CPU through the first interface;
    所述CPU根据所述用户指纹进行用户身份验证,若验证通过,则登录所述电子设备的操作系统。The CPU performs user identity verification according to the user fingerprint, and if the verification is passed, logs in to the operating system of the electronic device.
  2. 如权利要求1所述的方法,其特征在于,所述CPU用于运行基本输入输出系统BIOS;所述方法还包括:所述BIOS向所述EC、所述CPU通知所述共享内存的地址。The method according to claim 1, wherein the CPU is used to run a basic input output system (BIOS); the method further comprises: the BIOS notifies the EC and the CPU of the address of the shared memory.
  3. 如权利要求1-2中任一项所述的方法,其特征在于,还包括:The method according to any one of claims 1-2, further comprising:
    在通过所述第一接口向所述CPU传输加密后的所述用户指纹后,所述EC删除存储在所述EC内部的所述用户指纹。After transmitting the encrypted user fingerprint to the CPU through the first interface, the EC deletes the user fingerprint stored in the EC.
  4. 如权利要求1-3中任一项所述的方法,其特征在于,还包括:The method according to any one of claims 1-3, further comprising:
    如果所述EC存储加密后的所述用户指纹的时间超过第一时间,通过所述第一接口还未收到来自所述CPU发送的所述指纹验证指令,则所述EC删除存储在所述EC内部的所述用户指纹。If the time for the EC to store the encrypted user fingerprint exceeds the first time, and the fingerprint verification instruction sent from the CPU has not been received through the first interface, the EC is deleted and stored in the The user fingerprint inside the EC.
  5. 如权利要求1-4中任一项所述的方法,其特征在于,还包括:所述CPU向所述共享内存中写入所述指纹验证指令。The method according to any one of claims 1 to 4, further comprising: the CPU writing the fingerprint verification instruction into the shared memory.
  6. 如权利要求5所述的方法,其特征在于,所述CPU和所述EC之间还通过通用型输入输出接口GPIO接口通信;所述方法还包括:在所述CPU向所述共享内存中写入所述指纹验证指令之后,所述CPU通过所述GPIO接口向所述EC发送第一通知;所述第一通知用于通知所述EC从所述共享内存中读取所述指纹验证指令。The method of claim 5, wherein the CPU and the EC also communicate through a general-purpose input and output interface GPIO interface; the method further comprises: writing to the shared memory on the CPU After entering the fingerprint verification instruction, the CPU sends a first notification to the EC through the GPIO interface; the first notification is used to notify the EC to read the fingerprint verification instruction from the shared memory.
  7. 如权利要求5或6所述的方法,其特征在于,所述EC通过所述第一接口获取来自 所述CPU的指纹验证指令,具体包括:所述EC通过所述第一接口从所述共享内存中读取所述CPU写入到所述共享内存中的所述指纹验证指令。The method according to claim 5 or 6, wherein the EC obtains the fingerprint verification instruction from the CPU through the first interface, which specifically includes: the EC obtains the fingerprint verification instruction from the shared computer through the first interface The fingerprint verification instruction written by the CPU into the shared memory is read from the memory.
  8. 如权利要求5-7中任一项所述的方法,其特征在于,所述操作系统加载有指纹传感器驱动;所述CPU向所述共享内存中写入所述指纹验证指令,具体包括:7. The method of any one of claims 5-7, wherein the operating system is loaded with a fingerprint sensor driver; and the CPU writing the fingerprint verification instruction to the shared memory specifically includes:
    运行在所述CPU上的所述操作系统向运行在所述CPU上的所述指纹传感器驱动发送指纹验证请求;The operating system running on the CPU sends a fingerprint verification request to the fingerprint sensor driver running on the CPU;
    响应所述指纹验证请求,运行在所述CPU上的所述指纹传感器驱动向所述共享内存中写入所述指纹验证指令。In response to the fingerprint verification request, the fingerprint sensor driver running on the CPU writes the fingerprint verification instruction into the shared memory.
  9. 如权利要求1-7中任一项所述的方法,其特征在于,所述EC通过所述第一接口向所述CPU传输加密后的所述用户指纹,包括:7. The method according to any one of claims 1-7, wherein the EC transmitting the encrypted user fingerprint to the CPU through the first interface comprises:
    所述EC通过所述第一接口将加密后的所述用户指纹写入所述共享内存;The EC writes the encrypted user fingerprint into the shared memory through the first interface;
    所述CPU从所述共享内存中读取加密后的所述用户指纹。The CPU reads the encrypted user fingerprint from the shared memory.
  10. 如权利要求9所述的方法,其特征在于,所述CPU和所述EC之间还通过通用型输入输出接口GPIO接口通信;还包括:The method according to claim 9, characterized in that the communication between the CPU and the EC is also through a universal input and output interface GPIO interface; further comprising:
    在所述EC通过所述第一接口将加密后的所述用户指纹写入所述共享内存之后,所述EC通过所述GPIO接口向所述CPU发送第二通知;所述第二通知用于通知所述CPU从所述共享内存中读取加密后的所述用户指纹。After the EC writes the encrypted user fingerprint into the shared memory through the first interface, the EC sends a second notification to the CPU through the GPIO interface; the second notification is used for Notifying the CPU to read the encrypted user fingerprint from the shared memory.
  11. 如权利要求9所述的方法,其特征在于,所述CPU从所述共享内存中读取加密后的所述用户指纹,具体包括:The method of claim 9, wherein the CPU reading the encrypted user fingerprint from the shared memory specifically includes:
    运行在所述CPU上的所述指纹传感器驱动从所述共享内存中读取加密后的所述用户指纹;The fingerprint sensor driver running on the CPU reads the encrypted user fingerprint from the shared memory;
    运行在所述CPU上的所述指纹传感器驱动向运行在所述CPU上的所述操作系统发送加密后的所述用户指纹。The fingerprint sensor driver running on the CPU sends the encrypted user fingerprint to the operating system running on the CPU.
  12. 如权利要求1-11中任一项所述的方法,其特征在于,所述CPU根据所述用户指纹进行用户身份验证,若验证通过,则登录所述操作系统,包括:The method according to any one of claims 1-11, wherein the CPU performs user identity verification based on the user fingerprint, and if the verification is passed, logging in to the operating system, comprising:
    所述CPU判断所述用户指纹与所述电子设备的第一存储区域中的指纹模板是否一致,若一致,则验证通过,登录所述操作系统。The CPU determines whether the user fingerprint is consistent with the fingerprint template in the first storage area of the electronic device, and if they are consistent, the verification is passed and the operating system is logged in.
  13. 一种电子设备,其特征在于,包括:电源键、指纹传感器、嵌入式控制器EC、中央处理器CPU;所述电源键和所述指纹传感器集成于一体;其中,所述EC连接所述指纹传感器;所述EC和所述CPU之间通过第一接口进行通信,所述第一接口为基于所述EC与所述CPU之间的共享内存创建的软件通信接口;An electronic device, comprising: a power button, a fingerprint sensor, an embedded controller EC, and a central processing unit CPU; the power button and the fingerprint sensor are integrated; wherein the EC is connected to the fingerprint Sensor; the EC and the CPU communicate through a first interface, the first interface being a software communication interface created based on the shared memory between the EC and the CPU;
    所述EC用于检测到所述电源键被用户手指按下,获取所述指纹传感器采集的用户指 纹;所述指纹传感器在所述电源键被用户手指按下时采集指纹;The EC is used to detect that the power button is pressed by the user's finger, and obtain the user fingerprint collected by the fingerprint sensor; the fingerprint sensor collects the fingerprint when the power button is pressed by the user's finger;
    所述EC用于加密所述用户指纹,存储加密后的所述用户指纹在所述EC的内部存储空间中;The EC is used to encrypt the user fingerprint, and the encrypted user fingerprint is stored in the internal storage space of the EC;
    所述EC用于通过所述第一接口获取来自所述CPU的指纹验证指令;The EC is used to obtain a fingerprint verification instruction from the CPU through the first interface;
    所述EC用于响应所述指纹验证指令,通过所述第一接口向所述CPU传输加密后的所述用户指纹;The EC is configured to respond to the fingerprint verification instruction and transmit the encrypted user fingerprint to the CPU through the first interface;
    所述CPU用于根据所述用户指纹进行用户身份验证,若验证通过,则登录所述电子设备的操作系统。The CPU is configured to perform user identity verification according to the user fingerprint, and if the verification is passed, log in to the operating system of the electronic device.
  14. 如权利要求13所述的电子设备,其特征在于,所述CPU用于运行基本输入输出系统BIOS;所述BIOS用于向所述EC、所述CPU通知所述共享内存的地址。The electronic device according to claim 13, wherein the CPU is used to run a basic input output system (BIOS); the BIOS is used to notify the EC and the CPU of the address of the shared memory.
  15. 如权利要求13-14中任一项所述的电子设备,其特征在于,所述EC还用于在通过所述第一接口向所述CPU传输加密后的所述用户指纹后,删除存储在所述EC内部的所述用户指纹。The electronic device according to any one of claims 13-14, wherein the EC is further configured to delete the encrypted user fingerprint after transmitting the encrypted user fingerprint to the CPU through the first interface The user fingerprint inside the EC.
  16. 如权利要求13-15中任一项所述的电子设备,其特征在于,所述EC还用于,如果所述EC存储加密后的所述用户指纹的时间超过第一时间,通过所述第一接口还未收到来自所述CPU发送的所述指纹验证指令,则删除存储在所述EC内部的所述用户指纹。The electronic device according to any one of claims 13-15, wherein the EC is further configured to: if the time for the EC to store the encrypted user fingerprint exceeds the first time, pass the first time If an interface has not received the fingerprint verification instruction sent from the CPU, the user fingerprint stored in the EC is deleted.
  17. 如权利要求13-15中任一项所述的电子设备,其特征在于,所述CPU还用于向所述共享内存中写入所述指纹验证指令。15. The electronic device according to any one of claims 13-15, wherein the CPU is further configured to write the fingerprint verification instruction into the shared memory.
  18. 如权利要求17所述的电子设备,其特征在于,所述CPU和所述EC之间还通过通用型输入输出接口GPIO接口通信;所述CPU还用于,在所述CPU向所述共享内存中写入所述指纹验证指令之后,通过所述GPIO接口向所述EC发送第一通知;所述第一通知用于通知所述EC从所述共享内存中读取所述指纹验证指令。The electronic device according to claim 17, wherein the CPU and the EC also communicate through a general-purpose input and output interface GPIO interface; the CPU is also used to communicate between the CPU and the shared memory After the fingerprint verification instruction is written in, a first notification is sent to the EC through the GPIO interface; the first notification is used to notify the EC to read the fingerprint verification instruction from the shared memory.
  19. 如权利要求17或18所述的电子设备,其特征在于,所述EC具体用于,通过所述第一接口从所述共享内存中读取所述CPU写入到所述共享内存中的所述指纹验证指令。The electronic device according to claim 17 or 18, wherein the EC is specifically used to read from the shared memory through the first interface all the information written by the CPU to the shared memory. Describe fingerprint verification instructions.
  20. 如权利要求13-19中任一项所述的电子设备,其特征在于,所述EC具体用于通过所述第一接口将加密后的所述用户指纹写入所述共享内存;所述CPU用于从所述共享内存中读取加密后的所述用户指纹。The electronic device according to any one of claims 13-19, wherein the EC is specifically configured to write the encrypted user fingerprint into the shared memory through the first interface; the CPU It is used to read the encrypted user fingerprint from the shared memory.
  21. 如权利要求20所述的电子设备,其特征在于,所述CPU和所述EC之间还通过通用型输入输出接口GPIO接口通信;所述EC具体用于,在所述EC通过所述第一接口将加密后的所述用户指纹写入所述共享内存之后,通过所述GPIO接口向所述CPU发送第二 通知;所述第二通知用于通知所述CPU从所述共享内存中读取加密后的所述用户指纹。The electronic device according to claim 20, wherein the CPU and the EC also communicate through a universal input/output interface GPIO interface; the EC is specifically used to communicate with the EC through the first After the interface writes the encrypted user fingerprint into the shared memory, it sends a second notification to the CPU through the GPIO interface; the second notification is used to notify the CPU to read from the shared memory The encrypted user fingerprint.
  22. 如权利要求13-21中任一项所述的电子设备,其特征在于,所述CPU具体用于,判断所述用户指纹与所述电子设备的第一存储区域中的指纹模板是否一致,若一致,则验证通过,登录所述操作系统。The electronic device according to any one of claims 13-21, wherein the CPU is specifically configured to determine whether the user fingerprint is consistent with the fingerprint template in the first storage area of the electronic device, if If they are consistent, the verification is passed and the operating system is logged in.
  23. 一种芯片系统,其特征在于,所述芯片系统包括:嵌入式控制器和处理器CPU,所述嵌入式控制器和处理器CPU集成于电子设备中,所述电子设备还包括电源键、指纹传感器;所述电源键和所述指纹传感器集成于一体;其中,所述EC连接所述指纹传感器;所述EC和所述CPU之间通过第一接口进行通信,所述第一接口为基于所述EC与所述CPU之间的共享内存创建的软件通信接口;A chip system, characterized in that, the chip system includes: an embedded controller and a processor CPU, the embedded controller and the processor CPU are integrated in an electronic device, and the electronic device also includes a power button, a fingerprint Sensor; the power button and the fingerprint sensor are integrated; wherein, the EC is connected to the fingerprint sensor; communication between the EC and the CPU through a first interface, the first interface is based on The software communication interface created by the shared memory between the EC and the CPU;
    所述EC用于检测到所述电源键被用户手指按下,获取所述指纹传感器采集的用户指纹;所述指纹传感器在所述电源键被用户手指按下时采集指纹;The EC is used to detect that the power button is pressed by the user's finger, and obtain the user fingerprint collected by the fingerprint sensor; the fingerprint sensor collects the fingerprint when the power button is pressed by the user's finger;
    所述EC用于加密所述用户指纹,存储加密后的所述用户指纹在所述EC的内部存储空间中;The EC is used to encrypt the user fingerprint, and the encrypted user fingerprint is stored in the internal storage space of the EC;
    所述EC用于通过所述第一接口获取来自所述CPU的指纹验证指令;The EC is used to obtain a fingerprint verification instruction from the CPU through the first interface;
    响应所述指纹验证指令,所述EC通过所述第一接口向所述CPU传输加密后的所述用户指纹;In response to the fingerprint verification instruction, the EC transmits the encrypted user fingerprint to the CPU through the first interface;
    所述CPU用于根据所述用户指纹进行用户身份验证,若验证通过,则登录所述电子设备的操作系统。The CPU is configured to perform user identity verification according to the user fingerprint, and if the verification is passed, log in to the operating system of the electronic device.
  24. 如权利要求23所述的芯片系统,其特征在于,所述EC还用于在通过所述第一接口向所述CPU传输加密后的所述用户指纹后,删除存储在所述EC内部的所述用户指纹。The chip system according to claim 23, wherein the EC is further configured to delete all the user fingerprints stored in the EC after the encrypted user fingerprint is transmitted to the CPU through the first interface. Describe the user's fingerprint.
  25. 如权利要求23或24所述的芯片系统,其特征在于,所述EC还用于,如果所述EC存储加密后的所述用户指纹的时间超过第一时间,通过所述第一接口还未收到来自所述CPU发送的所述指纹验证指令,则删除存储在所述EC内部的所述用户指纹。The chip system according to claim 23 or 24, wherein the EC is also used to, if the time for the EC to store the encrypted user fingerprint exceeds the first time, the first interface has not been used yet. When the fingerprint verification instruction sent from the CPU is received, the user fingerprint stored in the EC is deleted.
  26. 如权利要求23-25中任一项所述的芯片系统,其特征在于,所述CPU还用于向所述共享内存中写入所述指纹验证指令。22. The chip system according to any one of claims 23-25, wherein the CPU is further configured to write the fingerprint verification instruction into the shared memory.
  27. 如权利要求26所述的芯片系统,其特征在于,所述CPU和所述EC之间还通过通用型输入输出接口GPIO接口通信;所述CPU还用于,在所述CPU向所述共享内存中写入所述指纹验证指令之后,通过所述GPIO接口向所述EC发送第一通知;所述第一通知用于通知所述EC从所述共享内存中读取所述指纹验证指令。The chip system according to claim 26, wherein the CPU and the EC also communicate through a general-purpose input and output interface GPIO interface; the CPU is also used to communicate between the CPU and the shared memory After the fingerprint verification instruction is written in, a first notification is sent to the EC through the GPIO interface; the first notification is used to notify the EC to read the fingerprint verification instruction from the shared memory.
  28. 如权利要求26或27所述的芯片系统,其特征在于,所述EC具体用于,通过所述第一接口从所述共享内存中读取所述CPU写入到所述共享内存中的所述指纹验证指令。The chip system according to claim 26 or 27, wherein the EC is specifically used to read from the shared memory through the first interface all the CPU writes to the shared memory. Describe fingerprint verification instructions.
  29. 如权利要求23-28中任一项所述的芯片系统,其特征在于,所述EC具体用于通过所述第一接口将加密后的所述用户指纹写入所述共享内存;所述CPU用于从所述共享内存中读取加密后的所述用户指纹。The chip system according to any one of claims 23-28, wherein the EC is specifically configured to write the encrypted user fingerprint into the shared memory through the first interface; the CPU It is used to read the encrypted user fingerprint from the shared memory.
  30. 如权利要求29所述的芯片系统,其特征在于,所述CPU和所述EC之间还通过通用型输入输出接口GPIO接口通信;所述EC具体用于,在所述EC通过所述第一接口将加密后的所述用户指纹写入所述共享内存之后,通过所述GPIO接口向所述CPU发送第二通知;所述第二通知用于通知所述CPU从所述共享内存中读取加密后的所述用户指纹。The chip system according to claim 29, wherein the CPU and the EC also communicate through a general-purpose input and output interface GPIO interface; the EC is specifically used for, when the EC passes through the first After the interface writes the encrypted user fingerprint into the shared memory, it sends a second notification to the CPU through the GPIO interface; the second notification is used to notify the CPU to read from the shared memory The encrypted user fingerprint.
  31. 一种计算机可读存储介质,包括指令,其特征在于,所述指令运行在电子设备的处理器CPU中;所述电子设备还包括电源键、指纹传感器、嵌入式控制器EC;所述电源键和所述指纹传感器集成于一体;其中,所述EC连接所述指纹传感器;所述EC和所述CPU之间通过第一接口进行通信,所述第一接口为基于所述EC与所述CPU之间的共享内存创建的软件通信接口;A computer-readable storage medium, including instructions, characterized in that the instructions run in the processor CPU of an electronic device; the electronic device further includes a power button, a fingerprint sensor, and an embedded controller EC; the power button Integrated with the fingerprint sensor; wherein, the EC is connected to the fingerprint sensor; the EC and the CPU communicate through a first interface, and the first interface is based on the EC and the CPU Software communication interface created between shared memory;
    当所述指令在电子设备的处理器CPU中运行时,使得所述处理器CPU执行如下步骤:When the instruction runs in the processor CPU of the electronic device, the processor CPU is caused to execute the following steps:
    所述CPU向所述EC传输所述指纹验证指令;The CPU transmits the fingerprint verification instruction to the EC;
    所述CPU接收所述EC发送的加密后的所述用户指纹;Receiving, by the CPU, the encrypted user fingerprint sent by the EC;
    所述CPU根据所述用户指纹进行用户身份验证,若验证通过,则登录所述电子设备的操作系统。The CPU performs user identity verification according to the user fingerprint, and if the verification is passed, logs in to the operating system of the electronic device.
  32. 如权利要求31所述的计算机可读存储介质,其特征在于,所述CPU向所述EC传输所述指纹验证指令,具体包括:The computer-readable storage medium of claim 31, wherein the CPU transmitting the fingerprint verification instruction to the EC specifically includes:
    所述CPU向所述共享内存中写入所述指纹验证指令。The CPU writes the fingerprint verification instruction into the shared memory.
  33. 如权利要求31或32所述的计算机可读存储介质,其特征在于,所述CPU接收所述EC发送的加密后的所述用户指纹,具体包括:The computer-readable storage medium according to claim 31 or 32, wherein the CPU receiving the encrypted user fingerprint sent by the EC specifically includes:
    所述CPU从所述共享内存中读取加密后的所述用户指纹。The CPU reads the encrypted user fingerprint from the shared memory.
PCT/CN2020/131915 2019-11-30 2020-11-26 Electronic device and method for logging in operating system WO2021104401A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911212056.2 2019-11-30
CN201911212056.2A CN111125664B (en) 2019-11-30 2019-11-30 Electronic equipment and method for logging in operating system

Publications (1)

Publication Number Publication Date
WO2021104401A1 true WO2021104401A1 (en) 2021-06-03

Family

ID=70497083

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/131915 WO2021104401A1 (en) 2019-11-30 2020-11-26 Electronic device and method for logging in operating system

Country Status (2)

Country Link
CN (1) CN111125664B (en)
WO (1) WO2021104401A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116483014A (en) * 2023-06-20 2023-07-25 飞天诚信科技股份有限公司 Fingerprint input realization method, device and system

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111125664B (en) * 2019-11-30 2022-07-12 华为技术有限公司 Electronic equipment and method for logging in operating system
CN117785249A (en) * 2021-08-20 2024-03-29 荣耀终端有限公司 Firmware processing method, chip, system and electronic equipment
CN115562895B (en) * 2022-04-07 2023-10-20 荣耀终端有限公司 Abnormality recovery method and device for electronic equipment
CN117826961A (en) * 2022-05-16 2024-04-05 荣耀终端有限公司 Abnormality recovery method for electronic equipment and electronic equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN203761447U (en) * 2014-03-27 2014-08-06 浙江大华技术股份有限公司 Control assembly and mobile terminal
US20140257591A1 (en) * 2013-03-11 2014-09-11 Ice Computer, Inc. Modular computer and thermal management
CN207884711U (en) * 2017-12-21 2018-09-18 帝晶光电(深圳)有限公司 A kind of system for increasing touch release tab on product mechanical key
CN108701180A (en) * 2017-04-26 2018-10-23 华为技术有限公司 A kind of method and apparatus of device power-up
CN108959894A (en) * 2018-08-09 2018-12-07 中新工程技术研究院有限公司 A kind of implementation method and device, computer readable storage medium, terminal of fingerprint control booting
CN111125664A (en) * 2019-11-30 2020-05-08 华为技术有限公司 Electronic equipment and method for logging in operating system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN204348338U (en) * 2015-01-06 2015-05-20 中州大学 A kind of electronic information memory
EP3567502B1 (en) * 2018-03-20 2023-08-09 Shenzhen Goodix Technology Co., Ltd. Startup processing method and apparatus for terminal device, and terminal device
CN108920961A (en) * 2018-06-21 2018-11-30 山东超越数控电子股份有限公司 A method of realizing encrypting fingerprint in domestic firmware
CN110309640B (en) * 2019-07-01 2022-05-31 联想(北京)有限公司 Electronic equipment starting method and electronic equipment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140257591A1 (en) * 2013-03-11 2014-09-11 Ice Computer, Inc. Modular computer and thermal management
CN203761447U (en) * 2014-03-27 2014-08-06 浙江大华技术股份有限公司 Control assembly and mobile terminal
CN108701180A (en) * 2017-04-26 2018-10-23 华为技术有限公司 A kind of method and apparatus of device power-up
CN207884711U (en) * 2017-12-21 2018-09-18 帝晶光电(深圳)有限公司 A kind of system for increasing touch release tab on product mechanical key
CN108959894A (en) * 2018-08-09 2018-12-07 中新工程技术研究院有限公司 A kind of implementation method and device, computer readable storage medium, terminal of fingerprint control booting
CN111125664A (en) * 2019-11-30 2020-05-08 华为技术有限公司 Electronic equipment and method for logging in operating system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116483014A (en) * 2023-06-20 2023-07-25 飞天诚信科技股份有限公司 Fingerprint input realization method, device and system
CN116483014B (en) * 2023-06-20 2023-09-19 飞天诚信科技股份有限公司 Fingerprint input realization method, device and system

Also Published As

Publication number Publication date
CN111125664B (en) 2022-07-12
CN111125664A (en) 2020-05-08

Similar Documents

Publication Publication Date Title
WO2021104401A1 (en) Electronic device and method for logging in operating system
US11698792B2 (en) Method for starting up device and device
JP4933519B2 (en) Computer with biometric authentication device
US6760850B1 (en) Method and apparatus executing power on self test code to enable a wakeup device for a computer system responsive to detecting an AC power source
US20160110532A1 (en) User Authorization And Presence Detection In Isolation From Interference From And Control By Host Central Processing Unit And Operating System
US20090100516A1 (en) Secure Bait and Switch Resume
WO2020135814A1 (en) Locking method and related electronic device
CN115562895B (en) Abnormality recovery method and device for electronic equipment
US11544414B2 (en) Secure wake-on of a computing device
US20210034132A1 (en) Systems And Methods For Waking An Information Handling System From A Wireless Peripheral Device
JP2000215167A (en) Computer system and remote control method of same system
TW200421092A (en) Computer system having an identification means
TWI581186B (en) Method for inhibiting local input, remotely-bootable computing system, and related computer-readable medium
CN113343316A (en) Device and method for realizing isolated switching of multiple computing devices
CN116088658B (en) Abnormality recovery method for electronic equipment and electronic equipment
TWI612428B (en) Integrated circuit, electronic device and operation method thereof
WO2023142743A1 (en) Device unlocking method and apparatus, electronic device and computer-readable storage medium
WO2023142749A1 (en) Device unlocking method and apparatus, electronic device and computer-readable storage medium
WO2023142748A1 (en) Device unlocking method and apparatus, electronic device and computer-readable storage medium
US11645371B2 (en) Securing computing devices
JP5698194B2 (en) Method for synchronizing information terminal device and information terminal device
JP4968634B1 (en) Computer system
CN109344597B (en) Device pairing authentication method and computer system applying same
JP2024031367A (en) Information processing device and control method
JP4800340B2 (en) Physical presence authentication method and computer based on TCG specification

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20892335

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20892335

Country of ref document: EP

Kind code of ref document: A1