Patentable/Patents/US-9733979
US-9733979

Communication device

PublishedAugust 15, 2017
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A communication device communicating in conformance with a prescribed communication standard. The device includes a storage storing at least a first virtual program that includes a program implementing a first function of the communication device and a second virtual program that includes a program implementing a second function of the communication device. It also includes an executor configured to successively execute the first and second virtual programs, and a switching controller configured to read at least a part of either one of the first and second virtual programs from the storage, to store the part of either one of the first and second virtual programs into a memory of the executor, to execute the part of either one of the first and second virtual programs in the executor, thereby, to switch the first and second virtual programs to be executed in the executor.

Patent Claims
9 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A communication device communicating in conformance with a prescribed communication standard, the communication device comprising: a first virtual program that includes a protocol stack defined by the prescribed communication standard and configured to be executed via the protocol stack; wherein the first virtual program further comprises (1) only a program configured to execute a function of receiving data from outside or a function of sending the data to the outside which is a first function of the communication device, and does not comprise a program configured to execute a function of processing the data after receiving the data from the outside or a function of processing the data before transmitting the data to the outside which is a second function of the communication device, and (2) a parameter that is used for transmitting and receiving the data; a second virtual program that does not include any protocol stack; wherein the second virtual program further comprises (1) only a program configured to execute the second function of the communication device not using any protocol stack which is a function of processing the data after receiving the data from outside or processing the data before transmitting the data to the outside and does not comprise a program configured to execute a function of receiving data from outside or a function of sending the data to the outside which is the first function of the communication device, and (2) a parameter that is used for processing the data; a storage storing configured to non-temporarily store the first virtual program and the second virtual program; a volatile memory configured to temporarily store the first virtual program and the second virtual program non-temporarily stored in the storage when the first virtual program and the second virtual program are executed; a circuitry configured: to read one of the first and second virtual programs from the storage; to store the one of the first and second virtual programs into the volatile memory; to execute the one of the first and second virtual programs; to verify free area of the volatile memory after completion of the execution of the one of the first and second virtual programs; to delete the one of the first and second virtual programs from the volatile memory when it is verified that there is no free area of the volatile memory to store another of the first and second virtual programs; to read the other of the first and second virtual programs from the storage; to store the other of the first and second virtual programs into the volatile memory; and to execute the other of the first and second virtual programs, thereby, to switch the first and second virtual programs to be executed and to successively execute the first and second virtual programs.

Plain English Translation

A communication device adhering to a communication standard uses two virtual programs for operation. The first program handles data transmission and reception using the protocol stack defined by the communication standard, and includes related parameters, but excludes data processing. The second program, without a protocol stack, processes the received or to-be-transmitted data, and includes corresponding parameters, but excludes transmission/reception functions. The device stores both programs. A circuit loads and executes either program from storage into volatile memory. After execution, it checks for available memory. If no free space is available, the executed program is removed from memory, before the other program is loaded from storage and executed. This allows switching and successive execution of the first and second virtual programs.

Claim 2

Original Legal Text

2. The communication device according to claim 1 , further comprising an information holder storing information passed between the first and second virtual programs.

Plain English Translation

The communication device described above includes a data holder that stores information shared between the two virtual programs: the program for handling data transmission/reception with the protocol stack, and the program for data processing without a protocol stack. This information holder allows the two programs to work together, passing data and control information back and forth as needed to complete communication tasks.

Claim 3

Original Legal Text

3. The communication device according to claim 1 , wherein, when the data is transmitted to the communication device from outside, the circuitry is configured to execute the first virtual program, to cause the first virtual program to perform the receiving processing of the data, after completion of the performance of the receiving processing by the first virtual program, to switch from the first virtual program being executed to the second virtual program, to cause the second virtual program to perform post-processing of the data subjected to the receiving processing.

Plain English Translation

In the communication device, when data arrives from an external source, the circuit executes the first virtual program which is for data transmission/reception including the protocol stack, performing the receiving function. Once the receiving process is complete, the system switches to the second virtual program which is for data processing without a protocol stack, enabling it to perform post-processing on the received data. This separation of tasks optimizes the device's operation.

Claim 4

Original Legal Text

4. The communication device according to claim 1 , wherein, when the data is transmitted to outside of the communication device, the circuitry is configured to execute the second virtual program, to cause the second virtual program to perform pre-processing of the data, after completion of the performance of the pre-processing of the second virtual program, to switch from the second virtual program being executed to the first virtual program, and to cause the first virtual program to perform transmission processing of the data subjected to the pre-processing.

Plain English Translation

In the communication device, when data needs to be sent out, the circuitry first executes the second virtual program which is for data processing without a protocol stack to perform pre-processing on the data. After pre-processing is done, the system switches to the first virtual program which is for data transmission/reception including the protocol stack. This program then performs the transmission of the pre-processed data.

Claim 5

Original Legal Text

5. The communication device according to claim 1 , wherein the first virtual program comprises a program to be used during usual operation pre-configured based on a frequency of execution, and wherein the second virtual program comprises a program to be used during a non-usual operation pre-configured based on the frequency of execution.

Plain English Translation

In the communication device, the first virtual program, responsible for data transmission/reception including the protocol stack, is designed for common, frequent tasks. The second virtual program, responsible for data processing without a protocol stack, is designed for less frequent or unusual operations. The programs are selected based on frequency of execution, so common tasks get priority and unusual tasks only run when required.

Claim 6

Original Legal Text

6. The communication device according to claim 1 , wherein, after completion of the execution of the one of the first and second virtual programs, if it is verified that there is free area to store the other of the first and second virtual programs into the memory, the circuitry is configured to store the other of the first and second virtual programs into the memory without deleting the one of the first and second virtual programs from the volatile memory.

Plain English Translation

In the communication device, after a virtual program which is either the program for handling data transmission/reception including the protocol stack, or the program for data processing without a protocol stack, finishes executing, the system checks if there's enough free memory to load the other virtual program. If sufficient space is available, the second program is loaded without removing the first, already executed, program from memory. This allows having both virtual programs stored in memory simultaneously which reduces overhead if switching back and forth.

Claim 7

Original Legal Text

7. A program execution control method in a communication device communicating in conformance with a prescribed communication standard, the method comprising: a step of storing non-temporarily into a storage of the communication device one of a first virtual program and a second virtual program; wherein the first virtual program includes a protocol stack defined by the prescribed communication standard and configured to be executed via the protocol stack; and wherein the first virtual program further comprises (1) only a program configured to execute a function of receiving data from outside or a function of sending the data to the outside which is a first function of the communication device and does not comprise a program configured to execute a function of processing the data after receiving the data from the outside or a function of processing the data before transmitting the data to the outside which is a second function of the communication device, and (2) a parameter that is used for transmitting and receiving the data; the second virtual program that does not include any protocol stack; wherein the second virtual program further comprises (1) only a program configured to execute the second function of the communication device not using any protocol stack which is a function of processing the data via the protocol stack after receiving the data from outside or processing the data before transmitting the data to the outside and does not comprise a program configured to execute a function of receiving data from outside or a function of sending the data to the outside, which is the first function of the communication device, and (2) a parameter that is used for processing the data; a step, after completion of execution of the one of the first and second virtual programs, of verifying a free area of the memory and of deleting the one of the first and second virtual programs from the volatile memory when it is verified that there is no free area of the volatile memory to store another of the first and second virtual programs; and a step, after deleting the one of the first and second virtual programs from the volatile memory of the executor in accordance with free area in the volatile memory, of storing the other of the first and second virtual programs into the volatile memory and executing the other of the first and second virtual programs.

Plain English Translation

A method for controlling program execution in a communication device adhering to a communication standard involves storing two virtual programs. The first program handles data transmission/reception including the protocol stack using the communication standard, but excludes data processing. The second program, without a protocol stack, handles data processing. After execution of either program, available memory is checked. If there's insufficient memory, the executed program is deleted. Then, the other program is loaded and executed. This ensures efficient use of limited memory resources.

Claim 8

Original Legal Text

8. The method according to claim 7 , wherein the first virtual program comprises a program to be used during usual operation pre-configured based on a frequency of execution, and wherein the second virtual program comprises a program to be used during a non-usual operation pre-configured based on the frequency of execution.

Plain English Translation

In the program execution control method, the first virtual program, responsible for data transmission/reception including the protocol stack, is designed for common, frequent tasks. The second virtual program, responsible for data processing without a protocol stack, is designed for less frequent or unusual operations. Thus program selection is based on task frequency.

Claim 9

Original Legal Text

9. The method according to claim 7 , wherein the step of deleting the one of the first and second virtual programs from the memory in accordance with free area in the volatile memory comprises a step of, without deleting the one of the first and second virtual programs from the volatile memory, storing the other of the first and second virtual programs into the volatile memory of the executor if there is free area to store the other of the first and second virtual programs into the volatile memory.

Plain English Translation

In the program execution control method, after execution of either the virtual program for data transmission/reception with the protocol stack, or the program for data processing without a protocol stack, the available memory is checked. If enough memory is available, the second program is loaded without deleting the currently running program. This allows both programs to be resident in memory at the same time.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

May 24, 2013

Publication Date

August 15, 2017

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Communication device” (US-9733979). https://patentable.app/patents/US-9733979

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-9733979. See llms.txt for full attribution policy.