[go: up one dir, main page]

KR101887786B1 - Apparatus for processing process - Google Patents

Apparatus for processing process Download PDF

Info

Publication number
KR101887786B1
KR101887786B1 KR1020160166167A KR20160166167A KR101887786B1 KR 101887786 B1 KR101887786 B1 KR 101887786B1 KR 1020160166167 A KR1020160166167 A KR 1020160166167A KR 20160166167 A KR20160166167 A KR 20160166167A KR 101887786 B1 KR101887786 B1 KR 101887786B1
Authority
KR
South Korea
Prior art keywords
variable
memory area
memory
area
stored
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020160166167A
Other languages
Korean (ko)
Other versions
KR20180066335A (en
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 현대오트론 주식회사
Priority to KR1020160166167A priority Critical patent/KR101887786B1/en
Publication of KR20180066335A publication Critical patent/KR20180066335A/en
Application granted granted Critical
Publication of KR101887786B1 publication Critical patent/KR101887786B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 프로세스 처리 장치에 관한 것으로, 보다 상세하게는 변수가 할당되는 프로세스의 개수에 따라 해당 변수를 메모리 영역에 저장하고, 레지스터 영역의 비트값을 이용하여 메모리 영역에 대한 접근을 허용하거나 차단하는 프로세스 처리 장치에 관한 것이다. 본 발명의 일 실시예에 따른 프로세스 처리 장치는 프로세스에 할당되는 변수를 저장하는 메모리 영역 및 상기 메모리 영역에 대한 접근을 허용하거나 차단하는 레지스터 영역을 포함하는 메모리부 및 상기 레지스터 영역의 비트값을 참조하여 상기 메모리 영역에 접근하고, 상기 메모리 영역에 저장된 변수를 상기 프로세스에 할당하여 상기 프로세스를 처리하는 처리부를 포함하고, 상기 변수는 상기 변수가 할당되는 프로세스의 개수에 따라 상기 메모리 영역에 저장되는 것을 특징으로 한다.The present invention relates to a process processing apparatus, and more particularly, to a process processing apparatus that stores a variable in a memory area according to the number of processes to which a variable is allocated, and permits or blocks access to the memory area using a bit value of the register area To a process processing apparatus. A processor unit according to an embodiment of the present invention includes a memory unit including a memory area for storing a variable allocated to a process and a register area for allowing or blocking access to the memory area, And a processor for accessing the memory area and allocating a variable stored in the memory area to the process to process the process, wherein the variable is stored in the memory area according to the number of processes to which the variable is allocated .

Description

프로세스 처리 장치{Apparatus for processing process}Apparatus for processing < RTI ID = 0.0 > process &

본 발명은 프로세스 처리 장치에 관한 것으로, 보다 상세하게는 변수가 할당되는 프로세스의 개수에 따라 해당 변수를 메모리 영역에 저장하고, 레지스터 영역의 비트값을 이용하여 메모리 영역에 대한 접근을 허용하거나 차단하는 프로세스 처리 장치에 관한 것이다.The present invention relates to a process processing apparatus, and more particularly, to a process processing apparatus that stores a variable in a memory area according to the number of processes to which a variable is allocated, and permits or blocks access to the memory area using a bit value of the register area To a process processing apparatus.

최근 대부분의 차량에 디지털 기술이 도입되고, 차량에 탑재되는 전자 제품의 수가 무수히 많아지면서 차량 내 외의 많은 변수들을 고려하여 차량 시스템을 제어할 필요성이 대두되고 있다. 이에 따라, 엔진의 기능뿐만 아니라 구동계통 및 조향계통 등 차량의 모든 부분을 제어하기 위한 차량용 전자 제어 장치(Electronic Control Unit; ECU)가 이용된다.Recently, digital technology has been introduced to most vehicles, and the number of electronic products mounted on the vehicle has increased so much that there is a need to control the vehicle system in consideration of many parameters inside and outside the vehicle. Accordingly, an electronic control unit (ECU) for a vehicle is used to control not only the function of the engine but also all parts of the vehicle such as the drive system and the steering system.

이러한 차량용 전자 제어 장치에는 소프트웨어가 포함되어 있고, 표준화된 소프트웨어 구조를 정의하기 위해 대표적으로 AUTOSAR(Automotive Open System Architecture) 기반의 소프트웨어가 이용되고 있다.Software is included in such vehicle electronic control devices, and AUTOSAR (Automotive Open System Architecture) -based software is typically used to define a standardized software structure.

AUTOSAR 기반의 소프트웨어에서, 차량용 전자 제어 장치에 포함되는 차량용 MCU(Micro Controller Unit)는 차량 운행에 필요한 프로세스를 처리하기 위해 메모리에 접근하여, 메모리에 저장된 변수를 프로세스에 할당한다.In AUTOSAR-based software, a vehicle microcontroller unit (MCU) included in an electronic control unit for a vehicle accesses a memory for processing a process required for driving the vehicle, and assigns a variable stored in the memory to the process.

그런데, 다수의 프로세스가 하나의 변수를 이용할 때, MCU는 다수의 프로세스를 처리하기 위해 해당 변수가 저장된 메모리 영역에 접근해야 한다. 그러나, MCU가 다수 프로세스의 처리를 위해 하나의 메모리 영역을 동시에 점유하는 경우, 시스템 안정성이 떨어지고 데이터 일관성(data consistency)이 유지될 수 없는 문제점이 있다.However, when multiple processes use a single variable, the MCU must access the memory area where the variable is stored to process multiple processes. However, when the MCU simultaneously occupies one memory area for processing of a plurality of processes, there is a problem that system stability is low and data consistency can not be maintained.

이에 따라, 프로세스가 메모리를 선택적으로 점유할 수 있도록 하여 시스템 안정성을 향상시키고, 데이터 일관성을 유지할 수 있는 프로세스 처리 방법이 요구되고 있는 실정이다.Accordingly, there is a need for a process processing method that can improve system stability and maintain data consistency by allowing a process to selectively occupy memory.

도 1은 종래 방법에 따라 메모리에 임계영역을 설정하는 모습을 도시한 도면이다. 이하, 도 1을 참조하여 종래의 프로세스 처리 방법을 구체적으로 설명하도록 한다.1 is a diagram showing a state in which a critical region is set in a memory according to a conventional method. Hereinafter, a conventional process processing method will be described in detail with reference to FIG.

도 1을 참조하면, 프로세스가 메모리를 점유할 때마다 임계영역을 설정한다. 예를 들어, 프로세스 1(FG 1)이 변수 1(variable 1)을 이용할 때 변수 1이 저장된 메모리 영역(메모리 1)에 다른 프로세스가 침범하지 못하도록 임계영역을 설정한다(Enter_criticalsection). 또한, 프로세스 1(FG 1)의 변수 1(variable 1)에 대한 메모리 영역(메모리 1)의 점유가 해제되면 임계영역을 해제한다(Release_criticalsection).Referring to FIG. 1, a threshold area is set whenever a process occupies memory. For example, when the process 1 (FG 1) uses the variable 1 (variable 1), the critical region is set so that another process can not invade the memory region (memory 1) where the variable 1 is stored (Enter_criticalsection). When the occupation of the memory area (memory 1) for the variable 1 (variable 1) of the process 1 (FG 1) is released, the critical area is released (Release_criticalsection).

종래 프로세스 처리 방법에 의하면 프로세스가 각 변수가 저장된 메모리 영역을 점유할 때마다 임계영역을 설정 및 해제함으로써, 데이터 일관성을 유지할 수 있다. 그러나, 종래 프로세스 처리 방법은 도 1에 도시된 바와 같이, 모든 변수에 대해 임계영역을 설정함으로써, 프로세스 처리 시간이 지연되는 문제점이 있다. According to the conventional process processing method, data consistency can be maintained by setting and releasing a critical area each time a process occupies a memory area where each variable is stored. However, in the conventional process processing method, as shown in FIG. 1, there is a problem that the process processing time is delayed by setting a critical region for all variables.

또한, 종래 프로세스 처리 방법은 시스템 설계 단계에서 모든 변수에 대해 메모리 영역을 구분해야 하는 불편함이 있고, 변수가 추가, 변경 또는 삭제될 때마다 해당 변수가 저장되는 메모리 영역을 다시 분류해야 하는 문제점이 있다. In addition, the conventional process processing method has a disadvantage that it is necessary to distinguish memory areas for all variables in the system designing stage, and whenever the variables are added, changed or deleted, the memory area where the variables are stored is re-classified have.

본 발명은 레지스터 영역의 비트값을 이용하여 메모리 영역에 대한 접근을 허용 및 차단함으로써, 메모리 영역에 저장된 각 변수의 데이터 일관성을 유지할 수 있는 프로세스 처리 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to provide a process processor capable of maintaining data consistency of each variable stored in a memory area by allowing and blocking access to a memory area using bit values of a register area.

또한, 본 발명은 둘 이상의 프로세스에 할당되는 변수가 저장된 메모리 영역에 대한 접근만을 허용 및 차단함으로써, 메모리 영역의 침범 없이 프로세스를 신속하게 처리할 수 있는 프로세스 처리 장치를 제공하는 것을 목적으로 한다.It is also an object of the present invention to provide a process processing apparatus capable of quickly processing a process without invasion of a memory area by allowing and blocking access to a memory area where variables allocated to two or more processes are stored.

또한, 본 발명은 프로세스의 타입에 따라 변수를 하나 이상의 세부 메모리 영역에 저장함으로써, 세부 메모리 영역의 침범 없이 다수의 프로세스를 동시에 처리할 수 있는 프로세스 처리 장치를 제공하는 것을 목적으로 한다.It is also an object of the present invention to provide a process processing apparatus capable of simultaneously processing a plurality of processes without invasion of a detailed memory region by storing a variable in one or more detailed memory regions according to the type of the process.

또한, 본 발명은 프로세스의 우선순위에 따라 변수를 하나 이상의 세부 메모리 영역에 저장함으로써, 세부 메모리 영역의 침범 없이 우선순위가 높은 프로세스를 먼저 처리할 수 있는 프로세스 처리 장치를 제공하는 것을 목적으로 한다.It is also an object of the present invention to provide a process processing apparatus which can process a high-priority process without invasion of a detailed memory region by storing a variable in one or more detailed memory regions according to the priority of the process.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present invention. It will also be readily apparent that the objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.

이러한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 프로세스 처리 장치는 프로세스에 할당되는 변수를 저장하는 메모리 영역과 상기 메모리 영역에 대한 접근을 허용하거나 차단하는 레지스터 영역을 포함하는 메모리부 및 상기 레지스터 영역의 비트값을 참조하여 상기 메모리 영역에 접근하고, 상기 메모리 영역에 저장된 변수를 상기 프로세스에 할당하여 상기 프로세스를 처리하는 처리부를 포함하고, 상기 변수는 상기 변수가 할당되는 프로세스의 개수에 따라 상기 메모리 영역에 저장되는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a processing apparatus including a memory unit including a memory area for storing a variable allocated to a process and a register area for allowing or blocking access to the memory area, And a processor for accessing the memory area with reference to a bit value of the area and allocating a variable stored in the memory area to the process to process the process, And is stored in the memory area.

전술한 바와 같은 본 발명에 의하면 레지스터 영역의 비트값을 이용하여 메모리 영역에 대한 접근을 허용 및 차단함으로써, 메모리 영역에 저장된 각 변수의 데이터 일관성을 유지할 수 있는 효과가 있다.As described above, according to the present invention, the access to the memory area is allowed and blocked by using the bit value of the register area, so that the data consistency of each variable stored in the memory area can be maintained.

또한, 본 발명에 의하면 둘 이상의 프로세스에 할당되는 변수가 저장된 메모리 영역에 대한 접근만을 허용 및 차단함으로써, 메모리 영역의 침범 없이 프로세스를 신속하게 처리할 수 있는 효과가 있다.In addition, according to the present invention, a process can be quickly processed without invading a memory area by allowing and blocking access to a memory area where variables allocated to two or more processes are stored.

또한, 본 발명에 의하면 프로세스의 타입에 따라 변수를 하나 이상의 세부 메모리 영역에 저장함으로써, 세부 메모리 영역의 침범 없이 다수의 프로세스를 동시에 처리할 수 있는 효과가 있다.In addition, according to the present invention, variables are stored in one or more detailed memory areas according to the types of processes, so that a plurality of processes can be processed simultaneously without invasion of detailed memory areas.

또한, 본 발명에 의하면 프로세스의 우선순위에 따라 변수를 하나 이상의 세부 메모리 영역에 저장함으로써, 세부 메모리 영역의 침범 없이 우선순위가 높은 프로세스를 먼저 처리할 수 있는 효과가 있다.In addition, according to the present invention, the variable is stored in one or more detailed memory areas according to the priority of the process, so that a process having a high priority can be processed without invading the detailed memory area.

도 1은 종래 방법에 따라 메모리에 임계영역을 설정하는 모습을 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 프로세스 처리 장치를 도시한 도면.
도 3은 본 발명의 일 실시예에 따른 메모리 영역에 변수가 저장되는 모습을 도시한 도면.
도 4는 본 발명의 일 실시예에 따른 레지스터 영역의 비트값을 도시한 도면.
도 5는 본 발명의 일 실시예에 따라 레지스터 영역의 비트값을 셋 상태 또는 클리어 상태로 변경하는 모습을 도시한 도면.
도 6은 본 발명의 일 실시예에 따른 프로세스 처리 방법을 도시한 순서도.
Brief Description of the Drawings Fig. 1 shows a state in which a critical region is set in a memory according to a conventional method; Fig.
2 illustrates a process processing apparatus according to an embodiment of the present invention.
3 is a diagram illustrating a variable stored in a memory area according to an exemplary embodiment of the present invention.
4 illustrates bit values of a register region according to an embodiment of the present invention.
FIG. 5 illustrates a state in which a bit value of a register area is changed to a set state or a clear state according to an embodiment of the present invention; FIG.
6 is a flow chart illustrating a method of processing a process according to one embodiment of the present invention.

전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용된다.The above and other objects, features, and advantages of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings, which are not intended to limit the scope of the present invention. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same reference numerals are used to denote the same or similar elements.

도 2는 본 발명의 일 실시예에 따른 프로세스 처리 장치(100)를 도시한 도면이다. 도 2을 참조하면, 본 발명의 일 실시예에 따른 프로세스 처리 장치(100)는 메모리부(110) 및 처리부(120)를 포함하여 구성된다. 도 2에 도시된 프로세스 처리 장치(100)는 일 실시예에 따른 것이고, 그 구성요소들이 도 2에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 일부 구성요소가 부가, 변경 또는 삭제될 수 있다.2 is a diagram showing a process processing apparatus 100 according to an embodiment of the present invention. Referring to FIG. 2, the apparatus 100 for processing a process according to an embodiment of the present invention includes a memory unit 110 and a processing unit 120. The process processing apparatus 100 shown in Fig. 2 is according to one embodiment, and the constituent elements thereof are not limited to the embodiment shown in Fig. 2, and some components may be added, changed or deleted have.

본 발명의 프로세스 처리 장치(100)는 차량용 MCU(Micro Controller Unit)를 포함할 수 있고, 차량용 전자 제어 장치(Electronic Control Unit; ECU)에 포함될 수 있다. 프로세스 처리 장치(100)는 내부 메모리에 접근(access)하여 메모리에 저장된 변수를 프로세스에 할당함으로써, 프로세스를 처리할 수 있다.The process processing apparatus 100 of the present invention may include a microcontroller unit (MCU) for a vehicle, and may be included in an electronic control unit (ECU) for a vehicle. The process processing apparatus 100 can access the internal memory and allocate variables stored in the memory to the process, thereby processing the process.

보다 구체적으로, AUTOSAR(Automotive Open System Architecture) 기반의 소프트웨어를 이용하는 프로세스 처리 장치(100)는 스레드(thread), 러너블(runnable) 등의 일종의 내부 함수를 통해 프로세스를 처리할 수 있다. 프로세스가 처리되기 위해서는 변수(port, data 등)가 필요하고, 프로세스 처리 장치(100)는 내부 메모리에 저장된 변수를 프로세스에 할당함으로써, 프로세스를 처리할 수 있다.More specifically, the process processing apparatus 100 using AUTOSAR (Automotive Open System Architecture) based software can process a process through a kind of internal function such as a thread, a runnable, and the like. In order for a process to be processed, a variable (port, data, etc.) is required, and the process processing apparatus 100 can process the process by assigning a variable stored in the internal memory to the process.

본 발명의 일 실시예에 따른 메모리부(110)는 프로세스에 할당되는 변수를 저장하는 메모리 영역을 포함할 수 있다. 여기서 변수는 해당 변수가 할당되는 프로세스의 개수에 따라 메모리 영역에 저장될 수 있다. 프로세스는 프로세스 처리 장치(100)에 의해 실행되는 임의의 프로그램을 포함할 수 있고, 인터럽트에 따른 인터럽트 서비스 루틴(Interrupt Service Routine; ISR)을 포함할 수 있다.The memory unit 110 according to an embodiment of the present invention may include a memory area for storing a variable allocated to a process. Here, the variable can be stored in the memory area according to the number of processes to which the variable is assigned. The process may include any program executed by the process processing apparatus 100 and may include an interrupt service routine (ISR) according to the interrupt.

보다 구체적으로, 메모리 영역은 단일의 프로세스에 할당되는 변수가 저장되는 제1 메모리 영역 및 둘 이상의 프로세스에 할당되는 변수가 저장되는 제2 메모리 영역을 포함할 수 있다.More specifically, the memory area may include a first memory area in which a variable allocated to a single process is stored, and a second memory area in which a variable allocated to two or more processes is stored.

제2 메모리 영역은 변수가 할당되는 프로세스의 타입에 따라 하나 이상의 세부 메모리 영역으로 구분될 수 있고, 제2 메모리 영역에 저장되는 변수는 프로세스의 타입에 따라 하나 이상의 세부 메모리 영역에 저장될 수 있다.The second memory area may be divided into one or more detailed memory areas depending on the type of the process to which the variable is assigned, and the variables stored in the second memory area may be stored in one or more detailed memory areas according to the type of the process.

또한, 제2 메모리 영역은 변수가 할당되는 프로세스의 우선순위에 따라 하나 이상의 세부 메모리 영역으로 구분될 수 있고, 제2 메모리 영역에 저장되는 변수는 프로세스의 우선순위에 따라 하나 이상의 세부 메모리 영역에 저장될 수 있다.In addition, the second memory area may be divided into one or more detailed memory areas according to the priority of the process to which the variable is assigned, and the variables stored in the second memory area may be stored in one or more detailed memory areas .

도 3은 본 발명의 일 실시예에 따른 메모리 영역에 변수가 저장되는 모습을 도시한 도면이다. 이하 도 3을 참조하여, 본 발명의 일 실시예에 따른 메모리 영역을 구체적으로 설명하도록 한다.FIG. 3 is a diagram illustrating a variable stored in a memory area according to an exemplary embodiment of the present invention. Referring to FIG. Referring to FIG. 3, a memory area according to an embodiment of the present invention will be described in detail.

도 3을 참조하면, 각각의 변수(variable 1 내지 variable 5)가 할당되는 프로세스가 미리 설정될 수 있다. 예를 들어, 변수 1(variable 1) 및 변수 2(variable 2)는 프로세스 1에 할당되고, 변수 3(variable 3) 및 변수 4(variable 4)는 프로세스 2에 할당되며 변수 5(variable 5)는 프로세스 3에 할당될 수 있다. 한편, 변수 2(variable 2), 변수 3(variable 3) 및 변수 5(variable)는 인터럽트에 의한 인터럽트 서비스 루틴에 할당될 수 있다.Referring to FIG. 3, a process in which each variable (variable 1 to variable 5) is assigned can be preset. For example, variable 1 and variable 2 are assigned to process 1, variable 3 and variable 4 are assigned to process 2, and variable 5 is assigned to process 1, Can be assigned to Process 3. Variable 2, variable 3, and variable 5, on the other hand, can be assigned to an interrupt service routine by an interrupt.

상술한 바에 의하면, 변수 1 및 변수 4는 단일의 프로세스에 할당되는 변수이고, 변수 2, 변수 3 및 변수 5는 둘 이상의 프로세스에 할당되는 변수이다. 이에 따라, 다시 도 3을 참조하면 단일의 프로세스에 할당되는 변수 1 및 변수 4는 제1 메모리 영역에 저장될 수 있고, 둘 이상의 프로세스에 할당되는 변수 2, 변수 3 및 변수 5는 제2 메모리 영역에 저장될 수 있다.According to the above description, variables 1 and 4 are variables assigned to a single process, and variables 2, 3, and 5 are variables assigned to two or more processes. Referring again to FIG. 3, variables 1 and 4 allocated to a single process can be stored in a first memory area, and variables 2, 3, and 5 allocated to two or more processes are stored in a second memory area Lt; / RTI >

도 3에서는 제1 메모리 영역이 네 부분(0x0000 ~ 0x0FFF, 0x2000 ~ 0x2FFF, 0x4000 ~ 0x6FFF, 0x7FFF ~ 0xFFFF)으로 구분되어 도시되어 있으나, 제1 메모리 영역은 하나의 영역으로 구성될 수 있고, 단일의 프로세스에 할당되는 변수는 제1 메모리 영역 중 어느 하나의 영역에 저장될 수 있다. 이에 따라, 변수 1 및 변수 4는 0x0000 ~ 0xFFFF의 제1 메모리 영역에 저장될 수 있다.In FIG. 3, the first memory area is divided into four parts (0x0000 to 0x0FFF, 0x2000 to 0x2FFF, 0x4000 to 0x6FFF, and 0x7FFF to 0xFFFF), but the first memory area may be configured as one area, The variable allocated to the process may be stored in any one of the first memory areas. Accordingly, the variable 1 and the variable 4 can be stored in the first memory area of 0x0000 to 0xFFFF.

한편, 프로세스 1, 프로세스 2 및 프로세스 3의 프로세스 타입은 서로 다를 수 있다. 보다 구체적으로, 각 프로세스의 타입은 해당 프로세스에 포함되는 프로그램의 이름, 종류, 버전, 모델 등에 의해 구분될 수 있다. 다시 도 3을 참조하면, 제2 메모리 영역은 위와 같은 프로세스의 타입에 따라 하나 이상의 세부 메모리 영역(0x1000 ~ 0x1FFF, 0x3000 ~ 0x3FFF, 0x7000 ~ 0x7FFF)으로 구분될 수 있다.On the other hand, the process types of Process 1, Process 2 and Process 3 may be different from each other. More specifically, the type of each process can be identified by the name, type, version, model, etc. of the program included in the process. Referring again to FIG. 3, the second memory area may be divided into one or more detailed memory areas (0x1000 to 0x1FFF, 0x3000 to 0x3FFF, 0x7000 to 0x7FFF) depending on the type of the process.

이에 따라, 둘 이상의 프로세스에 할당되는 변수 중에서, 프로세스 1에 할당되는 변수 2는 0x7000 ~ 0x7FFF의 세부 메모리 영역에 저장될 수 있고, 프로세스 2에 할당되는 변수 3은 0x3000 ~ 0x3FFF의 세부 메모리 영역에 저장될 수 있으며, 제3 프로세스에 할당되는 변수 5는 0x1000 ~ 0x1FFF의 세부 메모리 영역에 저장될 수 있다.Accordingly, among the variables assigned to two or more processes, variable 2 allocated to process 1 can be stored in the detailed memory area of 0x7000 to 0x7FFF, variable 3 allocated to process 2 is stored in the detailed memory area of 0x3000 to 0x3FFF And the variable 5 allocated to the third process can be stored in the detailed memory area of 0x1000 to 0x1FFF.

또한, 프로세스 1, 프로세스 2 및 프로세스 3의 우선순위(foreground)는 서로 다를 수 있다. 보다 구체적으로, 본 발명의 프로세스 처리 장치(100)는 다중 작업(multitasking)이 가능한 차량용 MCU를 포함할 수 있다. 이에 따라, 차량용 MCU는 복수의 코어를 이용하여 하나 이상의 프로세스를 동시에 처리할 수 있다. 이 때, 우선순위는 MCU가 어떤 프로세스를 먼저 처리할지에 대한 기준일 수 있다. 이러한 우선순위는 프로세스의 중요도 등에 따라 사용자에 의해 미리 설정될 수 있다.In addition, the priorities of Process 1, Process 2, and Process 3 may be different from each other. More specifically, the process processing apparatus 100 of the present invention may include a multi-tasking vehicle-mounted MCU. Accordingly, the in-vehicle MCU can process one or more processes simultaneously using a plurality of cores. In this case, the priority may be a criterion for which process the MCU should process first. This priority can be preset by the user depending on the importance of the process and the like.

예를 들어, MCU가 제1 코어에서 제1 프로세스를 처리 중일 때, 제2 코어에서 제2 프로세스를 함께 처리할 수 있다. 이 때, 동일한 변수가 제1 프로세스 및 제2 프로세스에 할당되어야 하면 MCU는 우선순위에 따라 프로세스를 처리할 수 있다. 보다 구체적으로, 제2 프로세스가 제1 프로세스보다 우선순위가 높으면, MCU는 제1 프로세스의 처리를 중단하고, 해당 변수를 제2 프로세스에 할당하여 제2 프로세스를 우선적으로 처리할 수 있다.For example, when the MCU is processing the first process in the first core, the second process may be processed together in the second core. At this time, if the same variable is assigned to the first process and the second process, the MCU can process the process according to the priority. More specifically, if the second process has a higher priority than the first process, the MCU can stop the processing of the first process and assign the variable to the second process to preferentially process the second process.

다시 도 3을 참조하면, 프로세스 3의 우선순위(FG3)는 프로세스 2의 우선순위(FG2)보다 높을 수 있고, 프로세스 2의 우선순위(FG2)는 프로세스 1의 우선순위(FG1)보다 높을 수 있다. 제2 메모리 영역은 위와 같은 프로세스의 우선순위(FG1, FG2, FG3)에 따라 하나 이상의 세부 메모리 영역(0x1000 ~ 0x1FFF, 0x3000 ~ 0x3FFF, 0x7000 ~ 0x7FFF)으로 구분될 수 있다.Referring back to FIG. 3, the priority FG3 of process 3 may be higher than the priority FG2 of process 2, and the priority FG2 of process 2 may be higher than the priority FG1 of process 1 . The second memory area may be divided into one or more detailed memory areas (0x1000 to 0x1FFF, 0x3000 to 0x3FFF, 0x7000 to 0x7FFF) according to the priority (FG1, FG2, FG3)

이에 따라, 변수 2는 세부 메모리 영역(FG1, 0x7000 ~ 0x7FFF)에 저장될 수 있고, 변수 3은 세부 메모리 영역(FG2, 0x3000 ~ 0x3FFF)에 저장될 수 있으며, 변수 5는 세부 메모리 영역(FG3, 0x1000 ~ 0x1FFF)에 저장될 수 있다.Accordingly, the variable 2 can be stored in the detailed memory area FG1, 0x7000 to 0x7FFF, the variable 3 can be stored in the detailed memory area FG2, 0x3000 to 0x3FFF, and the variable 5 can be stored in the detailed memory areas FG3, 0x1000 to 0x1FFF).

상술한 바와 같이, 본 발명은 프로세스의 타입에 따라 변수를 하나 이상의 세부 메모리 영역에 저장함으로써, 세부 메모리 영역의 침범 없이 다수의 프로세스를 동시에 처리할 수 있다. 또한, 본 발명은 프로세스의 우선순위에 따라 변수를 하나 이상의 세부 메모리 영역에 저장함으로써, 세부 메모리 영역의 침범 없이 우선순위가 높은 프로세스를 먼저 처리할 수 있다.As described above, the present invention stores variables in one or more detailed memory areas, depending on the type of process, so that multiple processes can be processed simultaneously without invasion of detailed memory areas. In addition, the present invention stores variables in one or more detailed memory areas according to the priority of the process, so that high priority processes can be processed first without invasion of detailed memory areas.

본 발명의 일 실시예에 따른 처리부(120)는 레지스터 영역의 비트값을 참조하여 메모리 영역에 접근하고, 메모리 영역에 저장된 변수를 프로세스에 할당하여 프로세스를 처리할 수 있다.The processing unit 120 according to an embodiment of the present invention can access the memory area by referring to the bit value of the register area and allocate the variable stored in the memory area to the process to process the process.

보다 구체적으로, 상술한 메모리부(110)는 메모리 영역에 대한 접근을 허용하거나 차단하는 레지스터 영역을 포함할 수 있다. 레지스터 영역은 비트값을 포함할 수 있고, 예를 들어, 레지스터 영역에 설정되는 비트는 마스크 비트(mask bit)일 수 있다.More specifically, the memory unit 110 described above may include a register area that allows or blocks access to the memory area. The register region may include a bit value, for example, the bit set in the register region may be a mask bit.

이와 같은 레지스터 영역의 비트값은 셋 상태 또는 클리어 상태로 설정될 수 있다. 보다 구체적으로, 레지스터 영역의 비트값은 처리부(120)가 제2 메모리 영역에 접근하면 셋 상태로 변경되고, 프로세스의 처리가 완료되면 클리어 상태로 변경될 수 있다.The bit value of the register area can be set to a set state or a clear state. More specifically, the bit value of the register area is changed to the set state when the processing unit 120 approaches the second memory area, and may be changed to the clear state when the processing of the process is completed.

셋 상태는 제2 메모리 영역에 저장된 변수에 따라 레지스터 영역의 비트값이 설정되는 것을 의미할 수 있고, 클리어 상태는 레지스터 영역의 비트값이 미리 설정된 비트값으로 설정되는 것을 의미할 수 있다. 예를 들어, 클리어 상태일 때 레지스터 영역의 비트값은 0x0000일 수 있다.The set state may mean that the bit value of the register region is set according to the variable stored in the second memory region, and the clear state may mean that the bit value of the register region is set to a predetermined bit value. For example, the bit value of the register area may be 0x0000 when in the clear state.

도 4는 본 발명의 일 실시예에 따른 레지스터 영역의 비트값을 도시한 도면이다. 이하, 도 3 및 도 4를 참조하여, 본 발명의 일 실시예에 따른 레지스터 영역을 구체적으로 설명하도록 한다.4 is a diagram illustrating bit values of a register region according to an embodiment of the present invention. Hereinafter, with reference to FIG. 3 and FIG. 4, a register region according to an embodiment of the present invention will be described in detail.

도 3을 참조하면, 처리부(120)는 세부 메모리 영역(FG3)에 접근하여 변수 5를 프로세스 3에 할당하여 프로세스 3을 처리할 수 있다. 이 때, 처리부(120)가 세부 메모리 영역(FG3)에 접근하면 레지스터 영역의 비트값은 셋 상태로 변경될 수 있다. 반면에, 프로세스 3의 처리가 완료되면 처리부(120)는 세부 메모리 영역(FG3)에 대한 접근을 해제하고, 레지스터 영역의 비트값은 클리어 상태로 변경될 수 있다.Referring to FIG. 3, the processing unit 120 can access the detailed memory area FG3 and allocate the variable 5 to the process 3 to process the process 3. [ At this time, when the processing unit 120 approaches the detailed memory area FG3, the bit value of the register area can be changed to the set state. On the other hand, when the process of process 3 is completed, the processing unit 120 releases access to the detailed memory area FG3, and the bit value of the register area can be changed to the clear state.

본 발명의 레지스터 영역의 비트값은 제2 메모리 영역에 포함되는 메모리 주소의 주소값일 수 있다. 상술한 예에서 처리부(120)가 변수 5를 프로세스 3에 할당할 때, 레지스터 영역의 비트값은 변수 5가 저장된 세부 메모리 영역(FG3)에 포함되는 메모리 주소(0x1000 ~ 0x1FFF) 중 임의의 주소값일 수 있다.The bit value of the register region of the present invention may be an address value of a memory address included in the second memory region. In the above example, when the processing unit 120 assigns the variable 5 to the process 3, the bit value of the register area is an arbitrary address value among the memory addresses (0x1000 to 0x1FFF) included in the detailed memory area FG3 in which the variable 5 is stored .

도 3 및 도 4를 참조하면, 레지스터 영역의 비트값이 세부 메모리 영역(FG3)에 포함되는 메모리 주소의 최대값(Ox1FFF)일 때, 처리부(120)가 세부 메모리 영역(FG3)에 접근하면 레지스터 영역의 비트값은 클리어 상태(0x0000)에서 셋 상태(0x1FFF)로 변경될 수 있다.3 and 4, when the processing unit 120 approaches the detailed memory area FG3 when the bit value of the register area is the maximum value (Ox1FFF) of the memory address included in the detailed memory area FG3, The bit value of the area can be changed from the clear state (0x0000) to the set state (0x1FFF).

이와 같은 방법으로, 레지스터 영역의 비트값이 세부 메모리 영역(FG1)에 포함되는 메모리 주소의 최대값(0x7FFF)일 때, 처리부(120)가 세부 메모리 영역(FG1)에 접근하면 레지스터 영역의 비트값은 클리어 상태(0x0000)에서 셋 상태(0x7FFF)로 변경될 수 있다.In this way, when the processing unit 120 approaches the detailed memory area FG1 when the bit value of the register area is the maximum value (0x7FFF) of the memory address included in the detailed memory area FG1, May be changed from the clear state (0x0000) to the set state (0x7FFF).

레지스터 영역은 제2 메모리 영역에 대응되도록 설정될 수 있다. 보다 구체적으로, 도 3에서 제2 메모리 영역은 세부 메모리 영역(FG1, FG2, FG3)으로 구분되고 레지스터 영역은 각각의 세부 메모리 영역에 설정될 수 있다. 예를 들어, 세부 메모리 영역(FG1)에 대응하는 레지스터 영역의 비트값은 0x7FFF로 셋 상태인 반면에 세부 메모리 영역(FG2)에 대응하는 레지스터 영역의 비트값은 0x0000으로 클리어 상태일 수 있다.The register area may be set to correspond to the second memory area. More specifically, in FIG. 3, the second memory area is divided into the detailed memory areas FG1, FG2, and FG3, and the register area can be set in each detailed memory area. For example, the bit value of the register area corresponding to the detailed memory area FG1 may be set to 0x7FFF, while the bit value of the register area corresponding to the detailed memory area FG2 may be cleared to 0x0000.

본 발명의 일 실시예에 따른 처리부(120)는 레지스터 영역의 비트값이 클리어 상태인 경우 메모리 영역에 접근할 수 있다. 보다 구체적으로, 도 3을 참조하면, 처리부(120)는 변수 2를 이용한 프로세스 1을 처리하기 위해 레지스터 영역을 참조할 수 있다. 이 때, 레지스터 영역의 비트값이 클리어 상태(0x0000)이면 세부 메모리 영역(FG1)에 접근하여 변수 2를 프로세스 1에 할당할 수 있다.The processing unit 120 according to an embodiment of the present invention can access the memory area when the bit value of the register area is clear. More specifically, referring to FIG. 3, the processing unit 120 may refer to the register area to process process 1 using variable 2. At this time, if the bit value of the register area is in the clear state (0x0000), the variable 2 can be allocated to the process 1 by accessing the detailed memory area FG1.

상술한 바와 같이, 레지스터 영역은 세부 메모리 영역(FG1, FG2, FG3)에 대응하여 설정되므로, 처리부(120)는 각 프로세스에 할당되는 변수가 저장된 세부 메모리 영역의 레지스터 영역을 참조할 수 있다.As described above, since the register region is set corresponding to the detailed memory regions FG1, FG2, and FG3, the processing unit 120 can refer to the register region of the detailed memory region in which the variables allocated to each process are stored.

다시 도 3을 참조하면, 처리부(120)는 변수 3을 이용한 프로세스 2를 처리하기 위해 세부 메모리 영역(FG2)에 대응하는 레지스터 영역을 참조할 수 있다. 또한, 처리부(120)는 변수 5를 이용한 프로세스 3을 처리하기 위해 세부 메모리 영역(FG3)에 대응하는 레지스터 영역을 참조할 수 있다.Referring again to FIG. 3, the processing unit 120 may refer to a register area corresponding to the detailed memory area FG2 to process process 2 using the variable 3. In addition, the processing unit 120 may refer to the register area corresponding to the detailed memory area FG3 in order to process the process 3 using the variable 5.

이에 따라, 처리부(120)는 둘 이상의 세부 메모리 영역에 대응하는 레지스터 영역의 비트값이 클리어 상태이면, 둘 이상의 세부 메모리 영역에 접근하고, 저장된 변수를 각 프로세스에 동시에 할당하여 프로세스를 처리할 수 있다.Accordingly, if the bit value of the register region corresponding to two or more detailed memory regions is clear, the processing unit 120 can access two or more detailed memory regions and process the process by allocating stored variables to each process at the same time .

반면에, 본 발명의 일 실시예에 따른 처리부(120)는 레지스터 영역의 비트값이 셋 상태인 경우 해당 비트값이 클리어 상태가 되면 메모리 영역에 접근할 수 있다. 보다 구체적으로, 도 3을 참조하면, 처리부(120)는 변수 2를 이용한 인터럽트 서비스 루틴을 처리하기 위해 레지스터 영역을 참조할 수 있다. 이 때, 레지스터 영역의 비트값이 셋 상태(0x7FFF)이면 세부 메모리 영역(FG1)에 접근하지 못할 수 있다.On the other hand, when the bit value of the register region is set to the set state, the processing unit 120 according to an embodiment of the present invention can access the memory region when the corresponding bit value is cleared. More specifically, referring to FIG. 3, the processing unit 120 may refer to the register area to process the interrupt service routine using the variable 2. At this time, if the bit value of the register area is the set state (0x7FFF), the detailed memory area FG1 may not be accessible.

다시 말해, 상술한 바와 같이 변수 2를 이용한 프로세스 1이 처리중이면 세부 메모리 영역(FG1)에 대응하는 레지스터 영역은 셋(0x7FFF) 상태일 수 있다. 이에 따라, 같은 변수 2를 이용하는 인터럽트 서비스 루틴을 처리하기 위해 처리부(120)가 세부 메모리 영역(FG1)에 접근하는 것이 차단될 수 있다.In other words, if the process 1 using the variable 2 is in process as described above, the register area corresponding to the detailed memory area FG1 may be in the set (0x7FFF) state. Accordingly, the processing unit 120 can be prevented from accessing the detailed memory area FG1 to process the interrupt service routine using the same variable 2.

이 후, 프로세스 1의 처리가 완료되면 세부 메모리 영역(FG1)에 대응하는 레지스터 영역은 클리어 상태(0x0000)로 변경될 수 있고, 처리부(120)는 클리어 상태로 변경된 해당 레지스터 영역을 참조하여, 변수 2를 이용한 인터럽트 서비스 루틴을 처리할 수 있다.Thereafter, when the process of process 1 is completed, the register area corresponding to the detailed memory area FG1 can be changed to the clear state (0x0000), and the processing part 120 refers to the corresponding register area changed to the clear state, 2 to handle the interrupt service routine.

도 5는 본 발명의 일 실시예에 따라 레지스터 영역의 비트값을 셋 상태 또는 클리어 상태로 변경하는 모습을 도시한 도면이다. 이하, 도 3 및 도 5를 참조하여 프로세스에 할당되는 변수에 따라 레지스터 영역의 비트값을 셋 상태 또는 클리어 상태로 변경하는 과정을 구체적으로 설명하도록 한다.5 is a diagram illustrating a state in which a bit value of a register area is changed to a set state or a clear state according to an embodiment of the present invention. Hereinafter, the process of changing the bit value of the register region to the set state or the clear state according to the variable allocated to the process will be described in detail with reference to FIG. 3 and FIG.

도 5를 참조하면, 처리부(120)는 변수 1(variable 1), 변수 2(variable 2) 및 변수 4(variable 4)를 이용하여 프로세스를 처리할 수 있다. 도 3에서, 변수 1 및 변수 4는 단일의 프로세스에 할당되는 변수로서, 제1 메모리 영역에 저장되고 제1 메모리 영역에 대응하는 레지스터 영역은 존재하지 않을 수 있다.Referring to FIG. 5, the processing unit 120 may process a process using a variable 1, a variable 2, and a variable 4. In FIG. 3, variables 1 and 4 are variables assigned to a single process, and may be stored in the first memory area, and there may be no register area corresponding to the first memory area.

반면에, 도 3에서 변수 2는 둘 이상의 프로세스에 할당되는 변수로서, 세부 메모리 영역(FG1)에 대응하는 레지스터 영역이 존재한다. 다시 도 5를 참조하면, 레지스터 영역의 비트값은 마스크 비트일 수 있고, 해당 마스크 비트는 처리부(120)가 세부 메모리 영역(FG1)에 접근하면 셋 상태로 변경될 수 있다(FG1_section_mask_set).On the other hand, in FIG. 3, variable 2 is a variable allocated to two or more processes, and a register area corresponding to the detailed memory area FG1 exists. Referring again to FIG. 5, the bit value of the register area may be a mask bit, and the corresponding mask bit may be changed to the set state when the processor 120 approaches the detailed memory area FG1 (FG1_section_mask_set).

이 후, 변수 2를 이용한 프로세스의 처리가 완료되면 처리부(120)는 세부 메모리 영역(FG1)에 대한 접근을 해제하고, 해당 마스크 비트는 클리어 상태로 변경될 수 있다(FG1_section_mask_clear).Thereafter, when the processing of the process using the variable 2 is completed, the processing unit 120 cancels the access to the detailed memory area FG1, and the corresponding mask bit can be changed to the clear state (FG1_section_mask_clear).

상술한 바와 같이, 본 발명은 레지스터 영역의 비트값을 이용하여 메모리 영역에 대한 접근을 허용 및 차단함으로써, 메모리 영역에 저장된 각 변수의 데이터 일관성을 유지할 수 있다. 또한, 본 발명은 둘 이상의 프로세스에 할당되는 변수가 저장된 메모리 영역에 대한 접근만을 허용 및 차단함으로써, 메모리 영역의 침범 없이 프로세스를 신속하게 처리할 수 있다.As described above, the present invention allows data consistency of each variable stored in the memory area by allowing and blocking access to the memory area using bit values of the register area. Further, the present invention can quickly process a process without invasion of a memory area by allowing and blocking access to a memory area where variables assigned to two or more processes are stored.

도 6은 본 발명의 일 실시예에 따른 프로세스 처리 방법을 도시한 순서도이다. 이하, 도 6을 참조하여 본 발명의 일 실시예에 따른 프로세스 처리 방법을 구체적으로 설명하도록 한다.6 is a flowchart showing a process processing method according to an embodiment of the present invention. Hereinafter, a process processing method according to an embodiment of the present invention will be described in detail with reference to FIG.

도 6을 참조하면, 본 발명의 일 실시예에 따른 프로세스 처리 방법은 먼저, 레지스터 영역의 비트값을 참조한다(S610). 여기서 레지스터 영역은 도 3 및 도 4에서 설명한 것과 동일할 수 있다. 그 다음, 레지스터 영역의 비트값이 셋 상태인지 클리어 상태인지를 확인한다(S620).Referring to FIG. 6, a process method according to an embodiment of the present invention first refers to a bit value of a register area (S610). Here, the register region may be the same as that described in Fig. 3 and Fig. Then, it is checked whether the bit value of the register area is set or cleared (S620).

판단 결과, 레지스터 영역의 비트값이 클리어 상태이면 세부 메모리 영역에 접근한다(S630). 여기서 세부 메모리 영역은 도 3에서 설명한 것과 동일할 수 있다. 그 다음, 세부 메모리 영역에 저장된 변수를 프로세스에 할당한다(S640). 이 때, 세부 메모리 영역에 대응하는 레지스터 영역의 비트값이 셋 상태로 변경될 수 있음은 전술한 바와 같다.As a result of the determination, if the bit value of the register area is clear, the detailed memory area is accessed (S630). Here, the detailed memory area may be the same as that described in Fig. Then, the variable stored in the detailed memory area is allocated to the process (S640). At this time, the bit value of the register area corresponding to the detailed memory area can be changed to the set state as described above.

한편, 레지스터 영역의 비트값이 셋 상태이면 다시 레지스터 영역의 비트값을 참조한다(S610). 다시 말해, 레지스터 영역의 비트값이 클리어 상태가 될 때까지는 세부 메모리 영역에 대한 접근을 허용하지 않는다. 단계(S610) 내지 단계(S640)은 도 2에 도시된 처리부(120)에서 설명한 방법과 동일할 수 있다.On the other hand, if the bit value of the register region is set, the bit value of the register region is again referred to (S610). In other words, access to the detailed memory area is not allowed until the bit value of the register area is cleared. Steps S610 to S640 may be the same as those described in the processing unit 120 shown in Fig.

전술한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, But the present invention is not limited thereto.

Claims (7)

프로세스에 할당되는 변수를 저장하는 메모리 영역 및 상기 메모리 영역에 대한 접근을 허용하거나 차단하는 레지스터 영역을 포함하는 메모리부; 및
상기 레지스터 영역의 비트값을 참조하여 상기 메모리 영역에 접근하고, 상기 메모리 영역에 저장된 변수를 상기 프로세스에 할당하여 상기 프로세스를 처리하는 처리부를 포함하고,
상기 변수는 상기 변수가 할당되는 프로세스의 개수에 따라 상기 메모리 영역의 서로 다른 주소에 저장되고,
상기 레지스터 영역은 둘 이상의 프로세스에 할당되는 변수가 저장된 메모리 영역에 대한 접근을 허용하거나 차단하는
프로세스 처리 장치.
A memory unit including a memory area for storing a variable allocated to a process and a register area for allowing or blocking access to the memory area; And
And a processing unit for accessing the memory area with reference to a bit value of the register area and allocating a variable stored in the memory area to the process,
Wherein the variable is stored at different addresses in the memory area according to the number of processes to which the variable is assigned,
The register area may be configured to allow or block access to a memory area where variables assigned to two or more processes are stored
Processing device.
제1항에 있어서,
상기 메모리 영역은
단일의 프로세스에 할당되는 변수가 저장되는 제1 메모리 영역; 및
둘 이상의 프로세스에 할당되는 변수가 저장되는 제2 메모리 영역을 포함하는 프로세스 처리 장치.
The method according to claim 1,
The memory region
A first memory area in which a variable allocated to a single process is stored; And
And a second memory area in which a variable allocated to at least two processes is stored.
제2항에 있어서,
상기 제2 메모리 영역은
상기 변수가 할당되는 프로세스의 타입에 따라 하나 이상의 세부 메모리 영역으로 구분되고,
상기 제2 메모리 영역에 저장되는 변수는
상기 프로세스의 타입에 따라 상기 하나 이상의 세부 메모리 영역에 저장되는 프로세스 처리 장치.
3. The method of claim 2,
The second memory area
The variable is divided into one or more detailed memory areas according to the type of a process to which the variable is assigned,
The variables stored in the second memory area
And stored in the one or more detailed memory areas according to the type of the process.
제2항에 있어서,
상기 제2 메모리 영역은
상기 변수가 할당되는 프로세스의 우선순위에 따라 하나 이상의 세부 메모리 영역으로 구분되고,
상기 제2 메모리 영역에 저장되는 변수는
상기 프로세스의 우선순위에 따라 상기 하나 이상의 세부 메모리 영역에 저장되는 프로세스 처리 장치.
3. The method of claim 2,
The second memory area
The variable is divided into one or more detailed memory areas according to the priority of a process to which the variable is assigned,
The variables stored in the second memory area
And stored in the one or more detailed memory areas according to the priority of the process.
제1항에 있어서,
상기 처리부는
상기 레지스터 영역의 비트값이 클리어 상태인 경우 상기 메모리 영역에 접근하고, 상기 레지스터 영역의 비트값이 셋 상태인 경우 상기 비트값이 클리어 상태가 되면 상기 메모리 영역에 접근하는 프로세스 처리 장치.
The method according to claim 1,
The processing unit
Accesses the memory area when the bit value of the register area is cleared, and approaches the memory area when the bit value of the register area is set to a clear state.
제2항에 있어서,
상기 레지스터 영역의 비트값은
상기 처리부가 상기 제2 메모리 영역에 접근하면 셋 상태로 변경되고, 상기 프로세스의 처리가 완료되면 클리어 상태로 변경되는 프로세스 처리 장치.
3. The method of claim 2,
The bit value of the register region is
Wherein the processing unit is changed to a set state when the processing unit approaches the second memory area, and is changed to a clear state when processing of the process is completed.
제2항에 있어서,
상기 레지스터 영역의 비트값은
상기 제2 메모리 영역에 포함되는 메모리 주소의 주소값인 프로세스 처리 장치.
3. The method of claim 2,
The bit value of the register region is
Wherein the second address is an address value of a memory address included in the second memory area.
KR1020160166167A 2016-12-07 2016-12-07 Apparatus for processing process Active KR101887786B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160166167A KR101887786B1 (en) 2016-12-07 2016-12-07 Apparatus for processing process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160166167A KR101887786B1 (en) 2016-12-07 2016-12-07 Apparatus for processing process

Publications (2)

Publication Number Publication Date
KR20180066335A KR20180066335A (en) 2018-06-19
KR101887786B1 true KR101887786B1 (en) 2018-08-13

Family

ID=62790213

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160166167A Active KR101887786B1 (en) 2016-12-07 2016-12-07 Apparatus for processing process

Country Status (1)

Country Link
KR (1) KR101887786B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102586821B1 (en) * 2023-07-04 2023-10-11 주식회사 드림에이스 System and method for verifying operation according to autosar platfrorm i/o in virtual ecu environment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101460451B1 (en) * 2013-09-06 2014-11-12 포항공과대학교 산학협력단 Apparatus and method for controlling process address space

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100670450B1 (en) * 2005-05-03 2007-01-16 엘지전자 주식회사 How to access shared memory on your phone

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101460451B1 (en) * 2013-09-06 2014-11-12 포항공과대학교 산학협력단 Apparatus and method for controlling process address space

Also Published As

Publication number Publication date
KR20180066335A (en) 2018-06-19

Similar Documents

Publication Publication Date Title
US8423717B2 (en) Multi-core processing cache image management
KR102271185B1 (en) Method for coexistence of software with different safety levels in a multicore processor system
US9235456B2 (en) Configuration technique for an electronic control unit with intercommunicating applications
US8850131B2 (en) Memory request scheduling based on thread criticality
JP2006048687A (en) Computer system resource access control
US11914996B2 (en) Ticket locks with enhanced waiting
KR101887786B1 (en) Apparatus for processing process
US7984432B2 (en) Method for patching a read-only memory and a data processing system comprising a means of patching the read-only memory based on patch contexts
US9898420B2 (en) Electronic device, operating system and access control method for protection of a register through an application programming interface
KR20190068332A (en) An Apparatus and a Method for Controlling Multi-Master Modules for Vehicles Based on Priority
EP0636986A2 (en) Address decoder with small circuit scale and address area expansion capability
EP2740038B1 (en) Memory coalescing computer-implemented method, system and apparatus
CN107291371B (en) Method and device for implementing a read-write lock
US9703728B2 (en) Bus system and method of protected memory access
US9235377B2 (en) Multiple, per sensor configurable FIFOs in a single static random access memory (SRAM) structure
JP7112058B2 (en) REAL-TIME PROCESSING APPARATUS AND MANUFACTURING METHOD THEREOF
JP2009093344A (en) Microcomputer, method of using the same, and electronic control unit
EP3246821A1 (en) Semiconductor device and its memory access control method
KR20100125751A (en) Memory allocation method and memory allocation device using same
JP2017204083A (en) Memory protection system
US20180373649A1 (en) Microcontroller system and method for controlling memory access in a microcontroller system
US20100169600A1 (en) Signal processor and signal processing system
US20240370382A1 (en) System-on-chip having a memory controller and corresponding memory control method
US11228457B2 (en) Priority-arbitrated access to a set of one or more computational engines
US20230416047A1 (en) Control of multiple displays associated with an elevator system

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20161207

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20180116

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20180727

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20180806

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20180806

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20210803

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20240722

Start annual number: 7

End annual number: 7