IP Library › Granted Patent US 11,972,116
Granted Patent B2
US 11,972,116 · App. 16/831,123 · Granted Apr 30, 2024

Process monitoring method and apparatus

Inventors: Jinfeng Yuan (Beijing, CN); Shengqiang Huang (Vancouver, CA); Yongcun Gan (Beijing, CN)
Assignee: Huawei Technologies Co., Ltd.
G06F3/0622G06F3/0637G06F3/0659G06F3/0673G06F21/52G06F21/53G06F2221/033
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,972,116
App. No.
16/831,123
Granted
Apr 30, 2024
Kind
B2
Abstract

A processing unit determines a first mapping relationship and a second mapping relationship, where the first mapping relationship indicates that an access rule of a first physical address is access forbidden, and the second mapping relationship indicates that an access rule of the first physical address is access allowed. The processing unit determines that a target mapping relationship is the first mapping relationship, sends a first access request to a memory control unit. The processing unit receives first exception information sent by the memory control unit, where the first exception information is sent when the memory control unit determines that the access rule of the first physical address in the target mapping relationship is access forbidden. The processing unit monitors a process based on the first exception information, switches the target mapping relationship; and re-sends the first access request to the memory control unit.

Claims (38)

1. A process monitoring method performed by a computing device that comprises a processing unit, a memory, and a memory control unit, comprising:

determining, by the processing unit, a first mapping relationship and a second mapping relationship, wherein the first mapping relationship indicates a mapping relationship between a first virtual address and a first physical address and the second mapping relationship also indicates a mapping relationship between the first virtual address and the first physical address, and the first mapping relationship and the second mapping relationship both indicate an access rule of the first physical address, wherein the first mapping relationship indicates that the access rule of the first physical address is access forbidden, and the second mapping relationship indicates that the access rule of the first physical address is access allowed, wherein the first physical address is a physical address of a first memory space in the memory, the first memory space is different from a second memory space in the memory, and the second memory space stores program code for generating a first process;

when the first process starts to run, determining, by the processing unit, that a target mapping relationship is the first mapping relationship, wherein the target mapping relationship is used when the memory control unit controls access to the memory;

when the first process needs to access the first memory space, sending, by the processing unit, a first access request to the memory control unit, wherein the first access request includes the first virtual address;

receiving, by the processing unit, first exception information sent by the memory control unit, when the memory control unit determines that the access rule of the first physical address in the target mapping relationship is access forbidden;

monitoring, by the processing unit, the first process based on the first exception information;

switching, by the processing unit, the target mapping relationship to switch the target mapping relationship from the first mapping relationship to the second mapping relationship; and

re-sending, by the processing unit, the first access request to the memory control unit.

2. The method according to claim 1 , wherein the first mapping relationship indicates a mapping relationship between a second virtual address and a second physical address and the second mapping relationship also indicates a mapping relationship between the second virtual address and the second physical address, and the first mapping relationship and the second mapping relationship both indicate an access rule of the second physical address, wherein the first mapping relationship indicates that the access rule of the second physical address is access allowed, the second mapping relationship indicates that the access rule of the second physical address is access forbidden, and the second physical address is a physical address of the second memory space; and

after the switching the target mapping relationship, the method further comprises:

when code stored in the first memory space indicates that the second memory space needs to be accessed, sending, by the processing unit, a second access request to the memory control unit, wherein the second access request includes the second virtual address;

receiving, by the processing unit, second exception information sent by the memory control unit, when the memory control unit determines that the access rule of the second physical address in the target mapping relationship is access forbidden;

monitoring, by the processing unit, the first process based on the second exception information;

switching, by the processing unit, the target mapping relationship to switch the target mapping relationship from the second mapping relationship to the first mapping relationship; and

re-sending, by the processing unit, the second access request to the memory control unit.

3. The method according to claim 2 , wherein the determining, by the processing unit, the first mapping relationship and the second mapping relationship comprises:

when the first process is created, determining, by the processing unit, a second process, wherein the second process is a parent process of the first process; and

when the second process needs to be monitored, determining, by the processing unit, access rules of the second physical address in the first mapping relationship and the second mapping relationship.

4. The method according to claim 1 , wherein the method further comprises:

when the first process ends, deleting, by the processing unit, the first mapping relationship and the second mapping relationship.

5. The method according to claim 2 , wherein the method further comprises:

when the first process ends, deleting, by the processing unit, the first mapping relationship and the second mapping relationship.

6. The method according to claim 3 , wherein the method further comprises:

when the first process ends, deleting, by the processing unit, the first mapping relationship and the second mapping relationship.

7. The method according to claim 1 , wherein the first memory space is used to store code of an external function, the external function comprises a function other than a process function, and the process function is a function comprised in the program code for generating the first process.

8. The method according to claim 7 , wherein the code of the external function comprises at least one of process shared code or system kernel code.

9. The method according to claim 2 , wherein the first memory space stores code of an external function, the external function comprises a function other than a process function, and the process function is a function comprised in the program code for generating the first process.

10. The method according to claim 9 , wherein the code of the external function comprises at least one of process shared code or system kernel code.

11. The method according to claim 3 , wherein the first memory space stores code of an external function, the external function comprises a function other than a process function, and the process function is a function comprised in the program code for generating the first process.

12. The method according to claim 11 , wherein the code of the external function comprises at least one of process shared code or system kernel code.

13. A non-transitory computer-readable storage media storing a computer instructions, that when executed by a processing unit in the computer device, cause the processing unit to perform the steps of:

determining a first mapping relationship and a second mapping relationship, wherein the first mapping relationship indicates a mapping relationship between a first virtual address and a first physical address and the second mapping relationship also indicates a mapping relationship between the first virtual address and the first physical address, and the first mapping relationship and the second mapping relationship both indicate an access rule of the first physical address, wherein the first mapping relationship indicates that the access rule of the first physical address is access forbidden, and the second mapping relationship indicates that the access rule of the first physical address is access allowed, wherein the first physical address is a physical address of a first memory space in the memory, and the first memory space is different from a second memory space in the memory, and wherein the second memory space is memory space used to store program code for generating a first process;

when the first process starts to run, determining that a target mapping relationship is the first mapping relationship, wherein the target mapping relationship is used when a memory control unit in the computer device controls access to the memory;

when the first process needs to access the first memory space, sending a first access request to the memory control unit, wherein the first access request includes the first virtual address;

receiving first exception information sent by the memory control unit, wherein the first exception information is sent when the memory control unit determines that the access rule of the first physical address in the target mapping relationship is access forbidden;

monitoring the first process based on the first exception information;

switching the target mapping relationship to switch the target mapping relationship from the first mapping relationship to the second mapping relationship; and

re-sending the first access request to the memory control unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2020
From: YUAN, JINFENG; HUANG, SHENGQIANG; GAN, YONGCUN
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 053929/0746 →
Priority Claims (1)
CN 201710897225.5 · Sep 28, 2017 · national
Continuity (2)
Continuation PCTCN2018102476 · Aug 27, 2018
Related Publication 20200225855A1 · Jul 16, 2020