A method for mutual communication between processes of a many-core processor, wherein the method is executed by a target kernel, the target kernel is running in a target processor core, and the method comprises: acquiring a message header of a message from a source kernel through a message channel, wherein the message header includes a start address of a message body and a size of the message body, or a start address and an end address of the message body; detecting, according to the message header of the message, whether a corresponding message body is transmitted by the message channel; if the message body is not transmitted by the message channel, learning that the message body is stored in a shared memory, executing a CPU pre-fetching command according to the message header, so that a message body, of the message, that is stored in the shared memory and corresponds to the message header is loaded to a cache of the target processor core; and switching to a target process, so that the target process acquires the message body from the cache; and if the message body is transmitted by the message channel, switching to the target process, so that the target process acquires the message body from a message queue that corresponds to the target process, wherein the message body is sent by a source processor core by using the following method: detecting whether the size of the message body is greater than a maximum payload that can be sent by the message channel; and if it is detected that the size of the message body is greater than the maximum payload that can be sent by the message channel, storing, by the source processor core, the message body into the shared memory; and storing, by the source kernel, information that is used to indicate the message body of the message stored in the shared memory as the message header into the message channel, and sending to the target kernel; if it is detected that the size of the message body is not greater than the maximum payload that can be sent by the message channel, storing, by the source kernel, the message body of the message into the message channel; and storing information that is used to indicate the message body of the message stored in the message channel as the message header into the message channel, and sending to the target kernel. acquiring a message header of a message from a source kernel through a message channel, wherein the message header includes a start address of a message body and a size of the message body, or a start address and an end address of the message body; detecting, according to the message header of the message, whether a corresponding message body is transmitted by the message channel; if the message body is not transmitted by the message channel, learning that the message body is stored in a shared memory, executing a CPU pre-fetching command according to the message header, so that a message body, of the message, that is stored in the shared memory and corresponds to the message header is loaded to a cache of the target processor core; and switching to a target process, so that the target process acquires the message body from the cache; and if the message body is transmitted by the message channel, switching to the target process, so that the target process acquires the message body from a message queue that corresponds to the target process, wherein the message body is sent by a source processor core by using the following method: detecting whether the size of the message body is greater than a maximum payload that can be sent by the message channel; and if it is detected that the size of the message body is greater than the maximum payload that can be sent by the message channel, storing, by the source processor core, the message body into the shared memory; and storing, by the source kernel, information that is used to indicate the message body of the message stored in the shared memory as the message header into the message channel, and sending to the target kernel; if it is detected that the size of the message body is not greater than the maximum payload that can be sent by the message channel, storing, by the source kernel, the message body of the message into the message channel; and storing information that is used to indicate the message body of the message stored in the message channel as the message header into the message channel, and sending to the target kernel. detecting whether the size of the message body is greater than a maximum payload that can be sent by the message channel; and if it is detected that the size of the message body is greater than the maximum payload that can be sent by the message channel, storing, by the source processor core, the message body into the shared memory; and storing, by the source kernel, information that is used to indicate the message body of the message stored in the shared memory as the message header into the message channel, and sending to the target kernel; if it is detected that the size of the message body is not greater than the maximum payload that can be sent by the message channel, storing, by the source kernel, the message body of the message into the message channel; and storing information that is used to indicate the message body of the message stored in the message channel as the message header into the message channel, and sending to the target kernel.