JP2018116389A - Processing apparatus - Google Patents

Processing apparatus Download PDF

Info

Publication number
JP2018116389A
JP2018116389A JP2017005769A JP2017005769A JP2018116389A JP 2018116389 A JP2018116389 A JP 2018116389A JP 2017005769 A JP2017005769 A JP 2017005769A JP 2017005769 A JP2017005769 A JP 2017005769A JP 2018116389 A JP2018116389 A JP 2018116389A
Authority
JP
Japan
Prior art keywords
oss
cores
time
processing
virtual
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.)
Granted
Application number
JP2017005769A
Other languages
Japanese (ja)
Other versions
JP6790854B2 (en
Inventor
和聡 金森
Kazuaki Kanamori
和聡 金森
有利 秦
Yuri Hata
有利 秦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2017005769A priority Critical patent/JP6790854B2/en
Publication of JP2018116389A publication Critical patent/JP2018116389A/en
Application granted granted Critical
Publication of JP6790854B2 publication Critical patent/JP6790854B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a processing apparatus capable of realizing load distribution among OSs while maintaining isolation between the OSs and portability of the OSs.SOLUTION: In an ECU 70 which includes physical cores 2 to 4 and executes OSs 51 and 52, the OSs 51 and 52 are allocated with virtual cores a to c, and A and B, respectively, and are virtualized. Load ratios of applications 511 and 521 operating in the OSs 51 and 52, respectively, are determined in advance. The OSs include dividing units for dividing a processing time of each of the virtual cores a to c and A and B into a division time, allocation units for evenly allocating the division time to the physical cores 2 to 4 and making ratios between sum totals of the division time load ratios in which the sum totals of the division time for OSs corresponding to the OSs 51 and 52, respectively, are regarded as the sum totals of time of the physical cores 2 to 4 in whole in a predetermined period, and control units 21, 31 and 41 for executing each processing of the corresponding virtual cores a to c and A and B per allocated division time in the physical cores 2 to 4.SELECTED DRAWING: Figure 2

Description

本発明は、複数の物理コアで複数のOSを実行する技術に関する。   The present invention relates to a technique for executing a plurality of OSs on a plurality of physical cores.

特許文献1に記載の情報処理システムは、複数の物理コアで複数のOSを実行するシステムであり、各物理コアを利用するOSが固定されている。上記情報処理システムは、各OS上で各OS固有のプログラムを実行するとともに、OS間の負荷を分散するため、並列化可能なプログラムの処理を分割し、分割した処理を、物理コアの処理負荷に応じて決定されたOS上で並列実行している。   The information processing system described in Patent Document 1 is a system that executes a plurality of OSs with a plurality of physical cores, and an OS that uses each physical core is fixed. The information processing system executes a program specific to each OS on each OS and distributes the load among the OSs. Therefore, the processing of the parallelizable program is divided, and the divided processing is divided into the processing load of the physical core. Are executed in parallel on the OS determined according to the above.

特開2009−163527号公報JP 2009-163527 A

しかしながら、上記情報処理システムでは、複数のOS上で、分割した処理を並列実行するため、各OSに固有のプログラムのみを実行する場合と比べて、OS間の隔絶性が損なわれる。また、上記情報処理システムでは、分割した処理を並列実行する機能を各OSへ追加する必要があるため、各OSに固有のプログラムのみを実行する場合と比べて、OSの移植性も損なわれる。一方、上記情報処理システムにおいて、並列処理を行わず、各OSに固有のプログラムのみを実行するようにした場合、OS間の負荷が不均一であっても、負荷の高いOSの動作に物理コアの処理時間を多く割り当てて、OSの負荷分散を実現することができない。   However, in the information processing system, since the divided processes are executed in parallel on a plurality of OSs, the isolation between the OSs is impaired as compared with the case where only the programs unique to each OS are executed. Further, in the information processing system, since it is necessary to add a function for executing the divided processing in parallel to each OS, the portability of the OS is also impaired as compared with the case where only the program unique to each OS is executed. On the other hand, in the above information processing system, when parallel processing is not performed and only a program unique to each OS is executed, even if the load between the OSs is uneven, the physical core can handle the operation of the OS with a high load. The OS load distribution cannot be realized by allocating a lot of processing time.

本開示は、上記実情に鑑みてなされたものであり、OS間の隔絶性及びOSの移植性を保持したまま、OS間の負荷分散を実現可能な処理装置を提供する。   The present disclosure has been made in view of the above circumstances, and provides a processing apparatus capable of realizing load distribution between OSs while maintaining isolation between OSs and portability of OSs.

本開示は、複数の物理コア(2〜4)を備えて複数のOS(51,52)を実行する処理装置(70)であって、複数のOSは、それぞれ、異なる仮想コア(a〜c,A,B)が割当てられて仮想化されており、複数のOSのそれぞれで動作するアプリケーション(511,521)は、アプリケーション間の負荷の比率が予め決まっており、分割部と、割当部と、制御部(21,31,41)と、を備える。分割部は、仮想コアのそれぞれの処理時間を、予め設定された時間である分割時間に分割するように構成されている。割当部は、分割時間を複数の物理コアに均等に割り当て、且つ、所定期間における複数の物理コア全体において、OSのそれぞれに対応する分割時間のOSごとの総和を総和時間として、総和時間間の比率を前記負荷の比率とするように構成されている。制御部は、複数の物理コアのそれぞれにおいて、割当部により割り当てられた前記分割時間ごとに、対応する仮想コアの処理を実行するように構成されている。   The present disclosure is a processing device (70) that includes a plurality of physical cores (2 to 4) and executes a plurality of OSs (51, 52), and each of the plurality of OSs has a different virtual core (ac). , A, B) are allocated and virtualized, and the application (511, 521) operating on each of the plurality of OSs has a predetermined load ratio between the applications, and the dividing unit, the allocation unit, And control units (21, 31, 41). The division unit is configured to divide each processing time of the virtual core into division times that are preset times. The assigning unit assigns the division time evenly to the plurality of physical cores, and, for all of the plurality of physical cores in a predetermined period, the sum of the division times corresponding to each of the OSs for each OS is defined as the total time. The ratio is configured to be the load ratio. The control unit is configured to execute processing of the corresponding virtual core for each of the division times allocated by the allocation unit in each of the plurality of physical cores.

本開示によれば、各OSに割り当てられた仮想コア上のOSの動作時間が分割時間に分割され、分割時間が複数の物理コアに割り当てられるため、OS上の処理を変更する必要がない。よって、OS間の隔絶性及びOSの移植性が保持される。さらに、分割時間が複数の物理コアに割り当てられる際に、所定期間における複数の物理コアの全体で、各OSに対応する分割時間の総和間の比率が、各OS上で動作するアプリケーションの負荷の比率となるように、分割時間が均等に割り当てられる。よって、OSの動作時間がOS間の負荷比率に応じた時間となる。すなわち、OS間の隔絶性及びOSの移植性を保持したまま、OS間の負荷分散を実現することができる。   According to the present disclosure, the operating time of the OS on the virtual core assigned to each OS is divided into divided times, and the divided times are assigned to a plurality of physical cores, so there is no need to change the processing on the OS. Therefore, isolation between OSs and OS portability are maintained. Further, when the division time is allocated to a plurality of physical cores, the ratio between the total of the division times corresponding to each OS over the plurality of physical cores in a predetermined period is the load of the application operating on each OS. The division times are allocated equally so that the ratio is obtained. Therefore, the operating time of the OS is a time corresponding to the load ratio between the OSs. That is, load balancing between OSs can be realized while maintaining isolation between OSs and portability of OSs.

なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。   In addition, the code | symbol in the parenthesis described in this column and a claim shows the correspondence with the specific means as described in embodiment mentioned later as one aspect, Comprising: The technical scope of this invention is shown. It is not limited.

電子制御装置の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of an electronic controller. 仮想コアの処理時間の物理コアへの割り当てを示す説明図である。It is explanatory drawing which shows allocation of the processing time of a virtual core to a physical core. 各物理コアが実行する処理の時間変化を示すタイムチャートである。It is a time chart which shows the time change of the processing which each physical core performs.

以下、図面を参照しながら、発明を実施するための形態を説明する。本実施形態では、処理装置として、車両に搭載された電子制御装置を想定している。
<構成>
まず、図1及び図2を参照して、本実施形態に係る電子制御装置(以下、ECU)70の構成について説明する。ECU70は、演算装置60を主体として構成されている。演算装置60は、メモリ50と、4個の物理コア1〜4と、を備える。メモリ50と物理コア1〜4は、図示しない単一のバスに接続されており、物理コア1〜4は、メモリ50を共有している。物理コア1〜4は、互いに同等の性能を有するコアである。
Hereinafter, embodiments for carrying out the invention will be described with reference to the drawings. In the present embodiment, an electronic control device mounted on a vehicle is assumed as the processing device.
<Configuration>
First, with reference to FIG.1 and FIG.2, the structure of the electronic control apparatus (henceforth, ECU) 70 which concerns on this embodiment is demonstrated. The ECU 70 is configured with the arithmetic device 60 as a main body. The arithmetic device 60 includes a memory 50 and four physical cores 1 to 4. The memory 50 and the physical cores 1 to 4 are connected to a single bus (not shown), and the physical cores 1 to 4 share the memory 50. The physical cores 1 to 4 are cores having the same performance.

メモリ50には、2つのオペレーティングシステムであるOS51とOS52とが格納されている。近年、車両内のECUは増加傾向にあるが、ECUを搭載できる車両スペースは限られているため、複数のECUを1つのECUに集約したいという要望がある。そこで、本実施形態では、元々別箇のECUに搭載されていたOS51及びOS52を、1つのECU70に搭載している。   The memory 50 stores two operating systems, OS51 and OS52. In recent years, the number of ECUs in a vehicle has been increasing, but there is a demand for consolidating a plurality of ECUs into one ECU because the vehicle space in which the ECU can be mounted is limited. Therefore, in the present embodiment, the OS 51 and the OS 52 originally mounted on separate ECUs are mounted on one ECU 70.

さらに、メモリ50には、OS51上で動作するアプリケーション(以下、アプリ)511、アプリ512が格納されているとともに、OS52上で動作するアプリ521が格納されている。アプリ511とアプリ521の負荷の比率は予め決まっており、アプリ511の負荷を3とすると、アプリ521の負荷は2となっている。また、アプリ512は、アプリ511,521よりも車両の安全上重要なアプリであり、例えば、走る、止まる、曲がる等の走行に関するアプリである。   Further, the memory 50 stores an application (hereinafter referred to as an application) 511 and an application 512 that operate on the OS 51, and an application 521 that operates on the OS 52. The load ratio between the application 511 and the application 521 is determined in advance. When the load on the application 511 is 3, the load on the application 521 is 2. The application 512 is an application that is more important in terms of vehicle safety than the applications 511 and 521, and is an application related to running such as running, stopping, and turning.

そして、図2に示すように、OS51は、仮想コアx,a,b,c,が割り当てられて仮想化されている。また、OS52は、仮想コアA,Bが割り当てられて仮想化されている。OS51は、仮想コアa,b,cでアプリ511を処理するとともに、仮想コアxでアプリ512を処理する。また、OS52は、仮想コアA,Bでアプリ521を処理する。アプリ511を実行する仮想コアの数と、アプリ521を実行する仮想コアの数は、元々別箇のECUに搭載されたOSの設定と同じとしている。   As shown in FIG. 2, the OS 51 is virtualized with virtual cores x, a, b, and c assigned thereto. The OS 52 is virtualized with virtual cores A and B assigned thereto. The OS 51 processes the application 511 with the virtual cores a, b, and c, and processes the application 512 with the virtual core x. The OS 52 processes the application 521 with the virtual cores A and B. The number of virtual cores that execute the application 511 and the number of virtual cores that execute the application 521 are the same as the settings of the OS originally installed in another ECU.

そして、仮想コアx,a,b,c,A,Bの処理は、物理コア1〜4に割り当てられる。その際、安全上重要なアプリ521を実行する仮想コアxの処理は、物理コア1に1対1で割り当てられる。物理コア1に仮想コアxの処理のみを割り当てることで、アプリ521の実行に確実に処理時間が割り当てられる。   The processes of the virtual cores x, a, b, c, A, and B are assigned to the physical cores 1 to 4. At this time, the processing of the virtual core x that executes the application 521 that is important for safety is assigned to the physical core 1 on a one-to-one basis. By assigning only the processing of the virtual core x to the physical core 1, the processing time is surely assigned to the execution of the application 521.

ここで、OS51及びOS52をそのまま物理コア1〜4に移植すると、仮想コアx,a,b,cの処理は、それぞれ、物理コア1〜4に割り当てられ、仮想コアA,Bの処理は、それぞれ、物理コア3,4に割り当てられる。よって、仮想コアb,c,A,Bの処理が、それぞれ物理コア3,4を占有できる時間は、仮想コアaの処理が物理コア2を占有できる時間よりも短くなり、仮想コアb,c,A,Bの処理は、仮想コアaの処理に比べて遅くなる。   Here, when the OS 51 and the OS 52 are directly ported to the physical cores 1 to 4, the processes of the virtual cores x, a, b, and c are respectively assigned to the physical cores 1 to 4, and the processes of the virtual cores A and B are They are assigned to physical cores 3 and 4, respectively. Therefore, the time that the processing of the virtual cores b, c, A, and B can occupy the physical cores 3 and 4 is shorter than the time that the processing of the virtual core a can occupy the physical core 2, and the virtual cores b and c , A and B are slower than the processing of the virtual core a.

一方、特許文献1のように、各物理コアを利用するOSを固定し、アプリ511及びアプリ521をOS51上及びOS52上で並列実行するようにすると、OS51及びOS52の負荷は分散されるが、OS51とOS52の間の隔絶性が損なわれる。通常、ECUでは、OS上で動作するアプリに重要度が設定されており、アプリごとに重要度を保持することが要求される。しかしながら、OS51とOS52の間の隔絶性が損なわれると、各アプリの重要度を保持できなくなる。また、OS51及びOS52の移植性も損なわれる。さらに、OS51上及びOS52上で処理を並列実行するための機能を、OS51及びOS52に追加することによるオーバーヘッドが発生する。   On the other hand, as in Patent Document 1, when the OS that uses each physical core is fixed and the application 511 and the application 521 are executed in parallel on the OS 51 and the OS 52, the load on the OS 51 and the OS 52 is distributed. The isolation between OS 51 and OS 52 is impaired. Usually, in the ECU, the importance level is set for the application operating on the OS, and it is required to maintain the importance level for each application. However, if the isolation between the OS 51 and the OS 52 is impaired, the importance of each application cannot be maintained. In addition, the portability of OS 51 and OS 52 is also impaired. Furthermore, overhead is caused by adding functions for executing processes in parallel on the OS 51 and the OS 52 to the OS 51 and the OS 52.

そこで、ECU70は、分割部及び割当部の機能を備える。分割部及び割当部の機能は、物理コア2〜4のいずれか1つが備えていればよい。分割部は、仮想コアa〜c,A,B上でOS51,52が動作する動作時間を、予め設定された時間に分割して、分割時間を生成する。各分割時間には、それぞれ、対応する動作時間に実行する仮想コアの処理が対応付けられている。   Therefore, the ECU 70 has functions of a dividing unit and an assigning unit. The functions of the dividing unit and the assigning unit may be provided in any one of the physical cores 2 to 4. The dividing unit divides the operation time during which the OSs 51 and 52 operate on the virtual cores a to c, A, and B into a preset time to generate a divided time. Each division time is associated with a virtual core process executed during the corresponding operation time.

割当部は、生成された分割時間を、物理コア2〜4に均等に割り当てる。その際、割当部は、所定期間である仮想化制御周期Tにおける物理コア2〜4の全体において、OS51に対応する分割時間の総和である総和時間と、OS52に対応する分割時間の総和である総和時間の比率が、アプリ511とアプリ521の負荷の比率3:2となるように、分割時間を割り当てる。つまり、仮想化制御周期Tにおける物理コア2〜4上のOS51の動作時間とOS52の動作時間の比率を、アプリ511とアプリ521の負荷の比率にする。   The assigning unit assigns the generated division time evenly to the physical cores 2 to 4. At that time, the allocation unit is the total time that is the sum of the division times corresponding to the OS 51 and the total sum of the division times that correspond to the OS 52 in the entire physical cores 2 to 4 in the virtualization control cycle T that is a predetermined period. The division time is allocated so that the ratio of the total time becomes the load ratio 3: 2 of the application 511 and the application 521. That is, the ratio of the operating time of the OS 51 and the operating time of the OS 52 on the physical cores 2 to 4 in the virtualization control period T is set to the load ratio of the application 511 and the application 521.

具体的には、OS51上でアプリ511を実行する仮想コア数をK1、OS52上でアプリ521を実行する仮想コア数をK2、アプリ511とアプリ521の負荷の比率をR1:R2とする。また、アプリ511を実行する各仮想コアの動作時間から生成する分割時間の数をM1、アプリ521を実行する各仮想コアの動作時間から生成する分割時間の数をM2、物理コア数をLとし、N1及びN2を自然数とする。そして、K1×M1:K2×M2=R1:R2…(1)、M1=(L/K1)×N1…(2)、M2=(L/K2)×N2…(3)、の3つの式を満たすように、分割時間数M1,M2を算出する。   Specifically, the number of virtual cores that execute the application 511 on the OS 51 is K1, the number of virtual cores that execute the application 521 on the OS 52 is K2, and the load ratio between the application 511 and the application 521 is R1: R2. Further, the number of division times generated from the operation time of each virtual core executing the application 511 is M1, the number of division times generated from the operation time of each virtual core executing the application 521 is M2, and the number of physical cores is L. , N1 and N2 are natural numbers. Then, K1 × M1: K2 × M2 = R1: R2 (1), M1 = (L / K1) × N1 (2), M2 = (L / K2) × N2 (3) The division time numbers M1 and M2 are calculated so as to satisfy the above.

本実施形態では、K1=3、K2=2、L=3であるから、Nを自然数として、M1=M2=3×Nとなる。本実施形態では、N=1とし、M1=M2=3とする。つまり、仮想化制御周期Tは、式(1)〜(3)を満たす最小の分割時間数の分の処理を、仮想コアa〜c,A,Bに一通り動作させる期間である。   In this embodiment, since K1 = 3, K2 = 2, and L = 3, M1 = M2 = 3 × N, where N is a natural number. In this embodiment, N = 1 and M1 = M2 = 3. In other words, the virtualization control period T is a period during which the processes corresponding to the minimum number of division times satisfying the expressions (1) to (3) are operated through the virtual cores a to c, A, and B.

これにより、図2に示すように、仮想コアa〜cの動作時間から、それぞれ3個の分割時間が生成され、仮想コアA,Bの動作時間から、それぞれ3個の分割時間が生成される。そして、計15個の分割時間が、3個の物理コア2〜4に5個ずつ均等に割り当てられ、5個の分割時間分の期間が仮想化制御周期Tとなる。よって、仮想化制御周期Tにおける物理コア2〜4の全体において、OS51に対応する分割時間は9個、OS52に対応する分割時間は6個となり、OS51とOS52の動作間の比率は、負荷比率と同様に3:2となる。   As a result, as shown in FIG. 2, three divided times are generated from the operating times of the virtual cores a to c, respectively, and three divided times are generated from the operating times of the virtual cores A and B, respectively. . Then, a total of 15 division times are equally allocated to the three physical cores 2 to 4, and a period corresponding to the five division times becomes the virtualization control period T. Therefore, in the entire physical cores 2 to 4 in the virtualization control period T, the division time corresponding to the OS 51 is nine and the division time corresponding to the OS 52 is six, and the ratio between the operations of the OS 51 and the OS 52 is the load ratio. Like the above, it becomes 3: 2.

図2では、物理コア2には、仮想コアaの処理を行う分割時間a1,a2,a3と、仮想コアbの処理を行う分割時間b1,b2と、が割り当てられている。また、物理コア3には、仮想コアcの処理を行う分割時間c1,c2,c3と、仮想コアAの処理を行う分割時間A3と、仮想コアbの処理を行う分割時間b3と、が割り当てられている。また、物理コア4には、仮想コアAの処理を行う分割時間A1,A2と、仮想コアBの処理を行う分割時間B1,B2,B3と、が割り当てられている。特定の物理コアを利用するOSは固定されていない。   In FIG. 2, the physical core 2 is assigned division times a1, a2 and a3 for processing the virtual core a and division times b1 and b2 for processing the virtual core b. Also, the physical core 3 is allocated with divided times c1, c2, and c3 for processing the virtual core c, a divided time A3 for processing the virtual core A, and a divided time b3 for processing the virtual core b. It has been. Also, the physical core 4 is allocated with divided times A1 and A2 for processing the virtual core A and divided times B1, B2 and B3 for processing the virtual core B. An OS that uses a specific physical core is not fixed.

さらに、割当部は、仮想コアa〜c,A,Bのそれぞれにおける処理順序が、物理コア2〜4による仮想コアa〜c,A,Bの処理の実行時に維持されるように、生成した分割時間を割り当てる。例えば、仮想コアbの動作時間から生成された分割時間b1,b2,b3は、分割時間b1→b2→b3の順に、対応する仮想コアbの処理が実行される必要がある。よって、分割時間b1,b2,b3を物理コア2〜4のいずれかに割り当てる際には、分割時間b1に対応する処理の後に、分割時間b2に対応する処理、さらにその後に、分割時間b3に対応する処理という流れになるようにする。   Further, the allocation unit generates the processing order in each of the virtual cores a to c, A, and B so that the processing order of the virtual cores a to c, A, and B by the physical cores 2 to 4 is maintained. Assign a split time. For example, for the divided times b1, b2, and b3 generated from the operating time of the virtual core b, the processing of the corresponding virtual core b needs to be executed in the order of the divided times b1 → b2 → b3. Therefore, when assigning the divided times b1, b2, and b3 to any of the physical cores 2 to 4, after the process corresponding to the divided time b1, the process corresponding to the divided time b2, and then the divided time b3. Make the flow of the corresponding processing.

図2では、物理コア2の3番目の処理に分割時間b1に対応する処理が割り当てられ、物理コア2の4番目の処理に分割時間b2に対応する処理が割り当てられている。そして、物理コア3の5番目の処理に分割時間b3に対応する処理が割り当てられている。よって、物理コア2,3により仮想コアbの処理を実行する際に、仮想コアbによる処理順序が維持されている。なお、仮想コアa〜c,A,Bのそれぞれにおける処理順序が、物理コア2〜4による仮想コアa〜c,A,Bの処理の実行時に維持されれば、分割時間の割り当て方は、図2と異なっていてもよい。   In FIG. 2, the process corresponding to the division time b1 is assigned to the third process of the physical core 2, and the process corresponding to the division time b2 is assigned to the fourth process of the physical core 2. A process corresponding to the division time b3 is assigned to the fifth process of the physical core 3. Therefore, when the processing of the virtual core b is executed by the physical cores 2 and 3, the processing order by the virtual core b is maintained. If the processing order of each of the virtual cores a to c, A, and B is maintained when the processing of the virtual cores a to c, A, and B by the physical cores 2 to 4 is performed, It may be different from FIG.

そして、物理コア2〜4は、仮想化制御部21,31,41の機能を備える。仮想化制御部21,31,41は、物理コア2〜4のそれぞれにおいて、割り当てられた分割時間ごとに、割当時間に対応する仮想コアの処理を実行する。具体的には、物理コア2〜4は、割当時間ごとに、割当時間に対応する仮想コアの処理をメモリ50から読み出し、実行する。本実施形態では、仮想化制御部21,31,41が制御部に相当する。   The physical cores 2 to 4 have the functions of the virtualization control units 21, 31, and 41. In each of the physical cores 2 to 4, the virtualization control units 21, 31, and 41 execute a virtual core process corresponding to the allocated time for each allocated division time. Specifically, the physical cores 2 to 4 read the virtual core process corresponding to the allocation time from the memory 50 and execute it for each allocation time. In the present embodiment, the virtualization controllers 21, 31, 41 correspond to the controller.

<動作>
次に、ECU70の動作について、図3のタイムチャートを参照して説明する。仮想化制御周期Tは、5個の期間t1〜t5から構成されており、期間t1〜t5のそれぞれは分割時間に対応している。期間t1において、物理コア2は、分割時間a1に対応する仮想コアaの処理を実行し、物理コア3は、分割時間c1に対応する仮想コアcの処理を実行し、物理コア4は、分割時間A1に対応する仮想コアAの処理を実行する。続いて、期間t2において、物理コア2は、分割時間a2に対応する仮想コアaの処理を実行し、物理コア3は、分割時間c2に対応する仮想コアcの処理を実行し、物理コア4は、分割時間A2に対応する仮想コアAの処理を実行する。
<Operation>
Next, the operation of the ECU 70 will be described with reference to the time chart of FIG. The virtualization control cycle T is composed of five periods t1 to t5, and each of the periods t1 to t5 corresponds to a divided time. In the period t1, the physical core 2 executes processing of the virtual core a corresponding to the division time a1, the physical core 3 executes processing of the virtual core c corresponding to the division time c1, and the physical core 4 is divided. The processing of the virtual core A corresponding to the time A1 is executed. Subsequently, in the period t2, the physical core 2 executes the processing of the virtual core a corresponding to the division time a2, the physical core 3 executes the processing of the virtual core c corresponding to the division time c2, and the physical core 4 Executes the processing of the virtual core A corresponding to the division time A2.

続いて、期間t3において、物理コア2は、分割時間b1に対応する仮想コアbの処理を実行し、物理コア3は、分割時間c3に対応する仮想コアcの処理を実行し、物理コア4は、分割時間B1に対応する仮想コアBの処理を実行する。続いて、期間t4において、物理コア2は、分割時間b2に対応する仮想コアbの処理を実行し、物理コア3は、分割時間A3に対応する仮想コアAの処理を実行し、物理コア4は、分割時間B2に対応する仮想コアBの処理を実行する。続いて、期間t5において、物理コア2は、分割時間a3に対応する仮想コアaの処理を実行し、物理コア3は、分割時間b3に対応する仮想コアbの処理を実行し、物理コア4は、分割時間B3に対応する仮想コアBの処理を実行する。期間t5が終了すると、期間t1に戻り、期間t1〜期間t5から成る仮想化制御周期Tを繰り返す。   Subsequently, in the period t3, the physical core 2 executes the processing of the virtual core b corresponding to the division time b1, the physical core 3 executes the processing of the virtual core c corresponding to the division time c3, and the physical core 4 Executes the processing of the virtual core B corresponding to the division time B1. Subsequently, in the period t4, the physical core 2 executes the process of the virtual core b corresponding to the division time b2, the physical core 3 executes the process of the virtual core A corresponding to the division time A3, and the physical core 4 Executes the processing of the virtual core B corresponding to the division time B2. Subsequently, in the period t5, the physical core 2 executes the processing of the virtual core a corresponding to the division time a3, the physical core 3 executes the processing of the virtual core b corresponding to the division time b3, and the physical core 4 Executes the processing of the virtual core B corresponding to the division time B3. When the period t5 ends, the process returns to the period t1, and the virtualization control cycle T including the periods t1 to t5 is repeated.

各仮想化制御周期Tでは、アプリ511及びアプリ521の負荷が、物理コア2〜4に均等に分散されている。また、各仮想化制御周期Tでは、仮想コアa〜c,A,Bのそれぞれにおける処理順序が維持されている。さらに、各仮想化制御周期Tでは、同一OSの仮想コアが均一に動作するとともに、OS51の動作時間とOS52の動作時間の比率が、アプリ511とアプリ521の負荷の比率となっている。   In each virtualization control cycle T, the loads of the application 511 and the application 521 are evenly distributed to the physical cores 2 to 4. In each virtualization control period T, the processing order in each of the virtual cores a to c, A, and B is maintained. Further, in each virtualization control period T, the virtual cores of the same OS operate uniformly, and the ratio of the operating time of the OS 51 and the operating time of the OS 52 is the ratio of the load of the application 511 and the application 521.

<効果>
以上説明した第1実施形態によれば、以下の効果が得られる。
(1)仮想コアa〜c上のOS51の動作時間、及び仮想コアA,B上のOS52の動作時間から分割時間が生成され、生成された分割時間が物理コア2〜4に均等に割り当てられる。その際、仮想化制御周期Tにおける物理コア2〜4の全体で、OS51とOS52の動作時間の比率が、アプリ511とアプリ521の負荷比率となるように、分割時間が割り当てられる。よって、OS間の隔絶性及びOSの移植性を保持したまま、OS51,52の動作時間をアプリ511,521の負荷比率に応じた時間にして、OS間の負荷分散を実現することができる。また、事前にOS51,52の負荷比率に応じてOS51,52の動作時間を定義するため、動的にOS51,52の負荷を検知する必要がなく、その分のオーバーヘッドの発生を抑制することができる。
<Effect>
According to the first embodiment described above, the following effects can be obtained.
(1) A divided time is generated from the operating time of the OS 51 on the virtual cores a to c and the operating time of the OS 52 on the virtual cores A and B, and the generated divided time is equally allocated to the physical cores 2 to 4 . At that time, the division time is allocated so that the ratio of the operating time of the OS 51 and the OS 52 becomes the load ratio of the application 511 and the application 521 in the entire physical cores 2 to 4 in the virtualization control cycle T. Therefore, it is possible to realize load distribution between the OSs while maintaining the isolation between the OSs and the portability of the OSs by setting the operation time of the OSs 51 and 52 according to the load ratio of the applications 511 and 521. In addition, since the operating time of the OSs 51 and 52 is defined in advance according to the load ratio of the OSs 51 and 52, it is not necessary to dynamically detect the load of the OSs 51 and 52, thereby suppressing the occurrence of overhead. it can.

(2)仮想コアa〜c,A,Bでの処理順序が変更されることなく、分割時間a1〜a3,b1〜b3,c1〜c3,A1〜A3,B1〜B3が物理コア2〜4に割り当てられる。よって、仮想コアa〜c,A,Bによる処理のリアルタイム性を確保することができる。   (2) The division times a1 to a3, b1 to b3, c1 to c3, A1 to A3, and B1 to B3 are the physical cores 2 to 4 without changing the processing order in the virtual cores a to c, A, and B. Assigned to. Therefore, the real-time property of processing by the virtual cores a to c, A, and B can be ensured.

(他の実施形態)
以上、本発明を実施するための形態について説明したが、本発明は上述の実施形態に限定されることなく、種々変形して実施することができる。
(Other embodiments)
As mentioned above, although the form for implementing this invention was demonstrated, this invention is not limited to the above-mentioned embodiment, It can implement in various deformation | transformation.

(a)上記実施形態では、ECU70に2つのOS51,52を搭載しているが、3つ以上のOSを搭載してもよい。
(b)上記実施形態では、処理装置として車載装置であるECU70を想定しているが、処理装置は車載装置に限らず、どのような処理装置でもよい。
(A) In the above embodiment, the two OSs 51 and 52 are mounted on the ECU 70, but three or more OSs may be mounted.
(B) In the said embodiment, ECU70 which is a vehicle-mounted apparatus is assumed as a processing apparatus, However, A processing apparatus is not restricted to a vehicle-mounted apparatus, What kind of processing apparatus may be sufficient.

(c)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言のみによって特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。   (C) A plurality of functions of one constituent element in the above embodiment may be realized by a plurality of constituent elements, or a single function of one constituent element may be realized by a plurality of constituent elements. . Further, a plurality of functions possessed by a plurality of constituent elements may be realized by one constituent element, or one function realized by a plurality of constituent elements may be realized by one constituent element. Moreover, you may abbreviate | omit a part of structure of the said embodiment. In addition, at least a part of the configuration of the above embodiment may be added to or replaced with the configuration of the other embodiment. In addition, all the aspects included in the technical idea specified only by the wording described in the claim are embodiment of this invention.

(d)上述した処理装置の他、当該処理装置を構成要素とするシステム、車両制御装置、負荷分散方法など、種々の形態で本発明を実現することもできる。   (D) In addition to the processing apparatus described above, the present invention can be implemented in various forms such as a system including the processing apparatus as a component, a vehicle control apparatus, and a load distribution method.

1,2,3,4…物理コア、21,31,41…仮想化制御部、70…ECU、51,52…OS、511,521…アプリ、x,a,b,c,A,B…仮想コア。   1, 2, 3, 4 ... physical core, 21, 31, 41 ... virtualization controller, 70 ... ECU, 51, 52 ... OS, 511, 521 ... application, x, a, b, c, A, B ... Virtual core.

Claims (2)

複数の物理コア(2〜4)を備えて複数のOS(51,52)を実行する処理装置(70)であって、
前記複数のOSは、それぞれ、異なる仮想コア(a〜c,A,B)が割当てられて仮想化されており、
前記複数のOSのそれぞれで動作するアプリケーション(511,521)は、前記アプリケーション間の負荷の比率が予め決まっており、
前記仮想コアのそれぞれの処理時間を、予め設定された時間である分割時間に分割するように構成された分割部と、
前記分割時間を前記複数の物理コアに均等に割り当て、且つ、所定期間における前記複数の物理コア全体において、前記OSのそれぞれに対応する前記分割時間の前記OSごとの総和を総和時間として、前記総和時間間の比率を前記負荷の比率とするように構成された割当部と、
前記複数の物理コアのそれぞれにおいて、前記割当部により割り当てられた前記分割時間ごとに、対応する前記仮想コアの処理を実行するように構成された制御部(21,31,41)と、を備える、処理装置。
A processing device (70) having a plurality of physical cores (2-4) and executing a plurality of OSs (51, 52),
The plurality of OSs are virtualized by allocating different virtual cores (ac, A, B),
The application (511, 521) operating on each of the plurality of OSs has a predetermined load ratio between the applications,
A division unit configured to divide each processing time of the virtual core into division times that are preset times;
The division time is equally allocated to the plurality of physical cores, and the total of the division times corresponding to each of the OSs for each of the OSs in the entire plurality of physical cores in a predetermined period is defined as a total time. An allocator configured to use a ratio between hours as the load ratio;
Each of the plurality of physical cores includes a control unit (21, 31, 41) configured to execute processing of the corresponding virtual core for each of the division times allocated by the allocation unit. , Processing equipment.
前記割当部は、前記仮想コアのそれぞれにおける処理の順序が、前記物理コアによる前記仮想コアの処理の実行時に維持されるように、前記分割時間を前記複数の物理コアに割り当てるように構成されている、請求項1に記載の処理装置。   The allocating unit is configured to allocate the division time to the plurality of physical cores so that an order of processing in each of the virtual cores is maintained when the processing of the virtual cores by the physical core is performed. The processing apparatus according to claim 1.
JP2017005769A 2017-01-17 2017-01-17 Processing equipment Active JP6790854B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017005769A JP6790854B2 (en) 2017-01-17 2017-01-17 Processing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017005769A JP6790854B2 (en) 2017-01-17 2017-01-17 Processing equipment

Publications (2)

Publication Number Publication Date
JP2018116389A true JP2018116389A (en) 2018-07-26
JP6790854B2 JP6790854B2 (en) 2020-11-25

Family

ID=62984189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017005769A Active JP6790854B2 (en) 2017-01-17 2017-01-17 Processing equipment

Country Status (1)

Country Link
JP (1) JP6790854B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020230586A1 (en) * 2019-05-10 2020-11-19
CN112887401A (en) * 2021-01-25 2021-06-01 宁波均联智行科技股份有限公司 Network access method based on multiple operating systems and vehicle machine system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020230586A1 (en) * 2019-05-10 2020-11-19
WO2020230586A1 (en) * 2019-05-10 2020-11-19 日立オートモティブシステムズ株式会社 Hypervisor and control device
CN113767367A (en) * 2019-05-10 2021-12-07 日立安斯泰莫株式会社 Virtual machine monitor and control device
JP7308937B2 (en) 2019-05-10 2023-07-14 日立Astemo株式会社 Hypervisor and controller
CN113767367B (en) * 2019-05-10 2024-05-31 日立安斯泰莫株式会社 Virtual machine monitor and control device
CN112887401A (en) * 2021-01-25 2021-06-01 宁波均联智行科技股份有限公司 Network access method based on multiple operating systems and vehicle machine system

Also Published As

Publication number Publication date
JP6790854B2 (en) 2020-11-25

Similar Documents

Publication Publication Date Title
JP5894496B2 (en) Semiconductor device
KR101684677B1 (en) Apparatus and method for optimizing system performance of multi-core system
JP4705051B2 (en) Computer system
KR20110075295A (en) Job allocation method on multi-core system and apparatus thereof
WO2004012080A3 (en) Method for dynamically allocating and managing resources in a computerized system having multiple consumers
WO2015163944A1 (en) Visualization of programmable integrated circuits
US20180239646A1 (en) Information processing device, information processing system, task processing method, and storage medium for storing program
WO2018158819A1 (en) Distributed database system and resource management method for distributed database system
JP2019057162A5 (en)
US20170286168A1 (en) Balancing thread groups
US20110153971A1 (en) Data Processing System Memory Allocation
JP6790854B2 (en) Processing equipment
CN104598304B (en) Method and apparatus for the scheduling in Job execution
Khaitan et al. Dynamic load balancing and scheduling for parallel power system dynamic contingency analysis
KR102193747B1 (en) Method for scheduling a task in hypervisor for many-core systems
JP6395708B2 (en) Management method and management apparatus for electronic component mounting system having a plurality of production lines
US20170132030A1 (en) Virtual machine system, control method thereof, and control program recording medium thereof
KR101678181B1 (en) Parallel processing system
JP2011253334A (en) Virtual machine and cpu allocation method
JP6239400B2 (en) Control device
JP2008158687A (en) Band control program and multiprocessor system
CN105468455A (en) Dynamic task distribution method and apparatus for multiple devices
Vert et al. Maintenance of sustainable operation of pipeline-parallel computing systems in the cloud environment
US20110185365A1 (en) Data processing system, method for processing data and computer program product
KR20120086999A (en) Multi Core System and Method for Processing Data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190320

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200309

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201019

R151 Written notification of patent or utility model registration

Ref document number: 6790854

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250