harmony 鸿蒙oom

  • 2022-08-09
  • 浏览 (826)

oom

Command Function

This command is used to query and set the low memory threshold and the PageCache reclaim threshold.

Syntax

oom

oom -i [interval]

oom -m [mem byte]

oom -r [mem byte]

oom -h|–help

Parameters

Table 1 Parameter description

Parameter Description Value Range
-i [interval] Sets the interval (in ms) for checking the Out Of Memory (OOM) thread task. [100, 10000]
-m [mem byte] Sets the low memory threshold (in MB). 0 to 1
The value 0 means not to perform the low memory threshold check.
-r [mem byte] Sets the PageCache reclaim threshold. Low memory threshold to the maximum available memory of the system
Generally, the size of a PageCache is 4 KB. Sometimes, it is 16 KB to 64 KB.
-h |–help Displays help information. N/A

Usage Guidelines

If no parameter is specified, this command displays the current OOM configuration.

NOTE
If the system memory is insufficient, the system displays a message indicating the insufficiency.

Example

Run the following commands:

  • oom
  • oom -i 100

Output

Example 1: The OOM configuration is displayed by default.

OHOS:/$ oom
[oom] oom loop task status: enabled
      oom low memory threshold: 0x80000(byte)
      oom reclaim memory threshold: 0x500000(byte)
      oom check interval: 100(microsecond)

Information displayed when the system memory is insufficient:

T:20 Enter:IT MEM 00M 001
[oom] OS is in low memory state
total physical memory: 0x1bcf000(byte), used: 0x1b50000(byte) ,free: 0x7f000(byte), low memory threshold: 0x80000(byte)
[oom] candidate victim process init pid: 1, actual phy mem byte:82602
[oom] candidate victim process shell pid: 3, actual phy mem byte:14950e
[oom] candidate victim process testsuits app pid: 4, actual phy mem byte:1334598
[oom] candidate victim process UserProcess12 pid: 12, actual phy mem byte:25951558
[oom] max phy mem used process UserProcess12 pid: 12, actual phy mem 25951558
################excFrom: User!####################
data abort fsr:0x817, far:0x225af000
Abort caused by a write instruction. Translation fault, page
excType: data abort
processName    = UserProcess12
processID      = 12
process aspace = 0х01000000 -> 0х3f000000
taskName       = threado
taskID         = 22
task user stack = 0х20e17000 -> 0х20e21000
pc   = 0x93969dc in /usr/bin/testsuits app ---> 0x19f9dc
ulr  = 0x93969cc in /usr/bin/testsuits app ---> 0x19f9cc
usp  = 0х20e20c68fp = 0x20e20c8c
R0   = 0х20e35000
R1   = 0x225af000
R2   = 0x0
R3   = 0х28e35000
R4   = 0х0
R5   = 0х9500000
R6   = 0х14
R7   = 0х97822c4
R8   = 0x970cfa8
R9   = 0x9090909
R10  = 0xa0a0a0a
R11  = 0x20e20c8c
R12  = 0х0
CPSR = 0х80000010
***backtrace beain***
traceback 0 -- lr = 0x9242e1c fp = 0х20e20cc4 lr in /usr/bin/testsuits apr 0x4be1c
traceback 1 -- 1r = 0х92430cc fp = 0x20e20cdc lr in /usr/bin/testsuits app --> 0x4c0cc
traceback 2 -- 1r = 0x9396ab0 fp = 0x20e20cec lr in /usr/bin/testsuits app -> 0х19fab0
traceback 3 -- lr = 0x9393eb4 fp = 0x20e20cf4 lr in /usr/bin/testsuits ap --> 0x19ceb4
traceback 4 -- lr = 0x92427d4 fp = 0x20e20d44 lr in /usr/bin/testsuits app --> 0x4b7d4
traceback 5 -- 1r = 0x20c4df50 fp = 0хb0b0b0b 1r in /1ib/libc.so - -> 0x62f50

Example 2: The OOM check interval is set to 100 ms.

OHOS:/$ oom -i 100
[oom] set oom check interval (100)ms successful

Table 2 Output description

Parameter Description
[oom] OS is in low memory state
total physical memory: 0x1bcf000(byte), used: 0x1b50000(byte), free: 0x7f000(byte), low memory threshold: 0x80000(byte)
The OS has low memory.
The total physical memory is 0x1bcf000 bytes, 0x1b50000 bytes are used, and 0x7f000 bytes are left.
The current lower memory threshold is 0x80000 bytes.
[oom] candidate victim process init pid: 1, actual phy mem byte: 82602 The memory occupied by the init process is 82602 bytes.
[oom] candidate victim process UserProcess12 pid: 12, actual phy mem byte: 25951558 The memory used by the UserProcess12 process is 25951558 bytes.
[oom] max phy mem used process UserProcess12 pid: 12, actual phy mem: 25951558 The process that uses the most memory currently is UserProcess12.
excFrom: User! The system memory is low, and the UserProcess12 process fails to apply for memory and exits.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Kernel

harmony 鸿蒙Kernel Coding Specification

harmony 鸿蒙Standard Libraries

harmony 鸿蒙Interrupt Management

harmony 鸿蒙Event

harmony 鸿蒙Mutex

harmony 鸿蒙Queue

harmony 鸿蒙Semaphore

harmony 鸿蒙Doubly Linked List

harmony 鸿蒙Memory Management

0  赞