CN103049325A - Method for implementing CSA (context save area) node manager on basis of TC1767 platform - Google Patents
Method for implementing CSA (context save area) node manager on basis of TC1767 platform Download PDFInfo
- Publication number
- CN103049325A CN103049325A CN2013100074142A CN201310007414A CN103049325A CN 103049325 A CN103049325 A CN 103049325A CN 2013100074142 A CN2013100074142 A CN 2013100074142A CN 201310007414 A CN201310007414 A CN 201310007414A CN 103049325 A CN103049325 A CN 103049325A
- Authority
- CN
- China
- Prior art keywords
- csa
- task
- node
- chained list
- fcl
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention relates to operating systems of microcontrollers, and discloses a method for implementing a CSA (context save area) node manager on the basis of a TC1767 platform. The method includes specific steps of respectively establishing a CSA list for each task; and switching a certain CSA list to be used as a current CSA list so as to switch the corresponding tasks. The tasks are in one-to-one correspondence with the CSA lists, and each CSA list contains an FCL (free context list) and a PCL (previous context list). The method has the advantages that the multiple tasks can be switched over and processed on a TC1767 chip by means of establishing and introducing the CSA node manager, the task switching speed is high, and the method has high application value.
Description
Technical field
The present invention relates to the operating system of microcontroller, particularly a kind of implementation method of the CSA node manager based on the TC1767 platform.
Background technology
The TC1767 cake core be a automobile based on the TriCore framework of company of Infineon exploitation with 32 8-digit microcontrollers (MCU), TC1767 can be used as the core CPU use of automobile.The TriCore framework uses the CSA(Context Save Area of list structure, context storage area) as preserving contextual zone, the context that produces during with realization interruption, trap and function call switches.Because the restriction of chip itself, the existing operating system that runs on the TC1767 chip also can't realize the switching of task, and the processing of multitask.
Summary of the invention
The present invention is directed to and existing can't carry out based on the operating system of TC1767 chip that task is switched and the shortcoming of multitasking, a kind of implementation method based on the CSA node manager of TC1767 platform that realizes the task handoff functionality by foundation in existing operating system and the method for introducing a brand-new CSA node manager is provided.
For achieving the above object, the present invention can take following technical proposals:
Implementation method based on the CSA node manager of TC1767 platform comprises following concrete steps: for each task is set up respectively the CSA chained list, corresponding one by one between described task and the described CSA chained list, described CSA chained list comprises FCL and PCL; Switching described CSA chained list is that current C SA chained list switches with the realization task.
As preferably, the described step of setting up respectively the CSA chained list for each task is carried out before first task start after TC1767 powers on immediately.
As preferably, in the described process of setting up the CSA chained list, keep the node of some, the interstitial content of described reservation is determined by SYS_START_USED.
As preferably, also comprise, before described task is carried out for the first time described CSA chained list is carried out initialization, concrete steps are: 1) all nodes with the PCL of described task insert among the FCL of described task; 2) from FCL, take out two nodes and be respectively first node and Section Point, described first node is as context storage area, top, the value of the stack pointer of described task is write the SP subdomain of described first node, described Section Point writes the entry address of described task the RA subdomain of described Section Point as context storage area, bottom; 3) described first node is inserted described PCL with the head method of inserting; 4) described Section Point is inserted described PCL with the head method of inserting.
As preferably, the interstitial content of described CSA chained list is preset value.
As preferably, also comprise, after the FCL of described task exhausts, increase the interstitial content of described CSA chained list.
As preferably, described task comprises the IDLE task.
As preferably, the TCB of described task comprises following member variable: TPcxCur, TFcxCur, TPcxOrig, TFcxOrig, TLcxOrig, described member variable is used for preserving the handle of described CSA chained list, wherein, TPcxCur is used for preserving the first node address of current PC L, TFcxCur is used for preserving the first node address of current FCL, TPcxOrig is used for preserving the first node address of initial p CL, TFcxOrig is used for preserving the first node address of initial FCL, and TLcxOrig is for the tail node address of preserving initial FCL.
The present invention has significant technique effect owing to having adopted above technical scheme:
Introduced a new CSA node manager, this CSA node manager is by the CSA chained list of each task and the switching of these CSA chained lists or other treatment steps formed, because the introducing of CSA node manager has realized the task switching in the operating system based on the TC1767 platform.The function that task is switched is to realize by switching the CSA chained list corresponding with task, and the context register that switching CSA chained list only need to be revised in the TC1767 chip can realize, so the cpu cycle that handoff procedure consumes is less, and the CSA chained list switches very rapid.
Description of drawings
Fig. 1 is the structural representation of described CSA chained list.
Embodiment
The present invention is described in further detail below in conjunction with embodiment.
Based on the implementation method of the CSA node manager of TC1767 platform, use the TC1767 chip based on the TriCore framework, the TriCore framework uses the CSA node of list structure.Each CSA node is the region of memory of 16 words, the alignment of 16 words.Each CSA node just can be preserved a top or bottom context.The CSA node connects by a link prefix tail chain and forms the CSA chained list.The link word has 2 territories: 4 segment index and 16 s' side-play amount can generate by these two territories the EA of next CSA.Each section can be 4MB as the zone of CSA, so can have 2
16Individual CSA node.The structure of CSA chained list as shown in Figure 1, in addition, the TC1767 chip also comprises 3 context management registers, be respectively FCX, PCX and LCX, wherein, the FCX register points to available idle context chained list (FCL:Free Context List), namely preserve the first address of node of FCL, the PCX register points to the busy context chained list (PCL:Previous Context List) that has used, the first address of node of namely preserving PCL, the address of LCX register holds FCL tail node.
Described CSA node manager is realized by following concrete steps: for each task is set up respectively the CSA chained list, further, described task also comprises the IDLE task, i.e. the idle task of system, corresponding one by one between described task and the described CSA chained list, described CSA chained list comprises FCL and PCL; Switching described CSA chained list is that current C SA chained list switches with the realization task.
The code of setting up respectively the CSA chained list for each task is achieved as follows, function initAllTaskCSAs () is responsible for all task creation CSA chained lists that comprise the IDLE task, following code also can after TC1767 starts, be carried out before first task immediately.At this moment, when carrying out, need to keep the CSA node of a part, after the CSA node of this part reservation namely can exhaust for the node of FCL, increase the interstitial content of FCL, simultaneously, because before first task is performed, also random run time version need to be the CSA nodes that these codes keep a part.The number of the CSA node that keeps is definite by SYS_START_USED, and the value of SYS_START_USED can be set in source code or read from corresponding configuration file when os starting:
boolean?initAllTaskCSAs()
{
int?csaIdx,?taskIdx;
TaskType?curTask;
unsignedint?cfcx,?clcx;
unsignedint?tCsaCnt;
Cfcx=_ _ mfcr (FCX); The FCX handle * of/* acquisition CPU/
Clcx=_ _ mfcr (LCX); The LCX handle * of/* acquisition CPU/
/ * reserves number of C SA node, be used for current code to the process * of first task start/
For (csaIdx=0; CsaIdx<SYS_START_USED; CsaIdx++)/the number * of the * SYS_START_USED needed CSA node that is current code in first task start process/
{
Trap can occur here in if (EquelUint32 (cfcx, clcx))/*, can not carry out */
{
return?FALSE;
}
Cfcx=getCsaLink (getEffectiveAddress (cfcx)); / * obtains the effective address RA of next CSA node, as the handle * of current FCL/
}
CurTask=OSTCBTbl; The handle * of/* acquisition task TCB array/
For (taskIdx=0; TaskIdx<TASK_NUM; TaskIdx++)/* is that following code is carried out in each TCB circulation in the TCB array, TASK_NUM be TCB number */
{
TCsaCnt=curTask-〉CsaCnt; / * from task TCB, obtain the number * of the CSA node of current task configuration/
CurTask-〉TFcxOrig=cfcx; The handle * of the FCL of this task of/* initialization/
CurTask-〉TPcxOrig=0; The handle * of the PCL of this task of/* initialization/
/ * for this task distribute CSA node */
For (csaIdx=0; CsaIdx<tCsaCnt; CsaIdx++)/* circulate to generate herein CSA chained list */
{
If (EquelUint32 (cfcx, clcx))/* when rreturn value be true, the node of expression among the FCL used up, and will cause trap, therefore, the object of condition in fact can not be performed */
{
return?FALSE;
}
Cfcx=getCsaLink (getEffectiveAddress (cfcx)); The effective address RA* of/* acquisition next node/
}
CurTask-〉TLcxOrig=cfcx; The TLcxOrig * of this task of/* initialization/
CurTask ++; / * processing next task */
}
Return TRUE; / * successful execution, return TRUE*/
}。
In order to realize the switching of CSA chained list, need in the TCB of task, add following member variable: TPcxCur, TFcxCur, TPcxOrig, TFcxOrig, TLcxOrig, described member variable is used for preserving the handle of described CSA chained list, wherein, TPcxCur is used for preserving the first node address of current PC L, TFcxCur is used for preserving the first node address of current FCL, TPcxOrig is used for preserving the first node address of initial p CL, TFcxOrig is used for preserving the first node address of initial FCL, and TLcxOrig is for the tail node address of preserving initial FCL.The initial p CL here and initial FCL refer to that the CSA chained list is carried out additions and deletions operates FCL before and the handle of PCL.
Need the CSA chained list of this task is carried out initialization before described task is carried out for the first time, concrete steps are: 1) all nodes with the PCL of described task insert among the FCL of described task; 2) from FCL, take out two nodes and be respectively first node and Section Point, described first node is as context storage area, top, the value of the stack pointer of described task is write the SP subdomain of described first node, described Section Point writes the entry address of described task the RA subdomain of described Section Point as context storage area, bottom; 3) described first node is inserted described PCL with the head method of inserting; 4) described Section Point is inserted described PCL with the head method of inserting, false code is as follows:
void?TCsaInit(TaskType?PTCB)
{
The CSA node that does not discharge among the PCL is discharged, namely all the node head methods of deleting on the TPcxCur are deleted, then a slotting method is inserted among the TFcxCur, also just guaranteed so afterwards TPcxCur==TPcxOrig, TFcxCur==TFcxOrig;
Take out a node from TFcxOrig, as top context storage area, this zone of initialization, and the value of SP subdomain (Stack Pointer, stack pointer) is the stack pointer value of task in the appointed area, a slotting method is inserted among the TPcxCur;
Again take out a node from TFcxOrig, as bottom context storage area, this zone of initialization, and the value of RA subdomain (Return Address, return address) is the entry address of task in the appointed area, a slotting method is inserted among the TPcxCur;
}。
Above-mentioned TCsaInit () can be realized by following code:
voidTCsaInit(TaskType?Task)
{
UnsignedintupCsaEa, loCsaEa; / * upCsaEa, loCsaEa be respectively top context and the contextual effective address * in bottom/
Unsignedintcfcx, cpcx; / * cfcx, cpcx be the handle of FCL or the handle * of PCL/
Cfcx=Task-〉TFcxOrig; The FCL handle * of/* get task's fcx* // * acquisition task/
Cpcx=Task-〉TPcxOrig; The PCL handle * of/* get task's pcx* // * acquisition task/
The following code of/* realize removing PCL node and with these nodes insert * among the FCL/
ClearTaskUsedCsa (Task); / * node all among the current task PCL insert * among the FCL/
UpCsaEa=delCsaNode (﹠amp; Cfcx); / * takes out a node from the FCL of task, and the deletion, return be node effective address */
((unsignedint *) upCsaEa) [2]=(uint32) Task-〉OSTCBStkCur; SP subdomain * in the context of/* initialization top/
((unsignedint *) upCsaEa) [3]=(uint32) Task-〉PTask; A11* in the context of/* initialization top/
((unsignedint *) upCsaEa) [1]=(uint32) 0x00000980; PSW program status word (PSW) * in the context of/* initialization top/
AddCsaNode (﹠amp; Cpcx, upCsaEa); / * this node be inserted into the PCL gauge outfit * of task/
LoCsaEa=delCsaNode (﹠amp; Cfcx); / * takes out a node from the FCL of task, and the deletion, return be node effective address */
((unsignedint *) loCsaEa) [1]=(uint32) Task-〉PTask; A11* in the context of/* initialization bottom/
AddCsaNode (﹠amp; Cpcx, loCsaEa); / * this node be inserted into the PCL gauge outfit * of task/
Task-〉TFcxCur=cfcx; / * write back to the FCL handle * of task/
Task-〉TPcxCur=cpcx; / * write back to the PCL handle * of task/
return?;
}。
voidclearTaskUsedCsa(TaskType?Task)
{
unsignedintcfcx,?cpcx;
unsignedinttmpNode;
cfcx?=?Task->TFcxCur;
cpcx?=?Task->TPcxCur;
The PCL of while (cpcx unequal to 0)/* task be not empty */
{
TmpNode=delCsaNode (﹠amp; Cpcx); / * from PCL, delete a node */
AddCsaNode (﹠amp; Cfcx, tmpNode); / * with * among the above-mentioned insertion FCL that from PCL, deletes/
}
Task-〉TFcxCur=cfcx; / * write back */
Task-〉TPcxCur=cpcx; / * write back */
return?;
}。
Here, clearTaskUsedCsa () is used for all nodes of current task PCL are inserted among the FCL.
Task switching namely switches the CSA chained list and may further comprise the steps:
Preservation task save: it is exactly to preserve current PC X, FCX to the TPcxCur of being scheduled away of task, among the TFcxCur that the task when preserving task is preserved context.
Recovery tasks load: the task recovery context during recovery tasks just loads the TPcxCur of being scheduled into of task, TFcxCur, and TLcxOrig is to the PCX of CPU, FCX, LCX.
Run executes the task: carry out first TCsaInit (), and then carry out recovery tasks load.
Realize that above-mentioned steps needs following 4 task switching function: TaskRun (), TaskSaveRun (), TaskLoadRun (), TaskSaveLoadRun (), false code is as follows:
TaskRun()
{
TCsaInit () carries out recovery tasks load;
}。
TaskSaveRun(PreTCB,?CurTCB)
{
TCsaInit();TaskSaveLoadRun();
}。
TaskLoadRun(CurTCB)
{
Carry out recovery tasks load;
rslcx();
}。
TaskSaveLoadRun(PreTCB,CurTCB)
{
Svlcx (); / * preservation bottom context */
Preserve the PCX of current C PU, FCX is to the TPcxCur of PreTCB, TFcxCur;
Preserve the SP of CPU to the SP of PreTCB;
Add from CurTCB and to set out TPcxCur, TFcxCur, TLcxOrig is to the PCX of CPU, FCX, LCX;
rslcx();
}。
Above-mentioned four task switching functions can be realized by following code,
inline?void?TaskSaveLoadRun(TaskType?PSavedTcb,?TaskType?PLoadTcb)
{
_ _ asm (" svlcx "); / * preservation bottom context */
OSTCBOld-〉TFcxCur=_ _ mfcr (FCX); / * preserve the FCL handle * of previous task/
OSTCBOld-〉TPcxCur=_ _ mfcr (PCX); / * preserve the PCL handle * of previous task/
_ _ mtcr (FCX, OSTCBCur-〉TFcxCur); The FCL handle that/* loads current task to CPU*/
_ _ mtcr (PCX, OSTCBCur-〉TPcxCur); The PCL handle that/* loads current task to CPU*/
_ _ mtcr (LCX, OSTCBCur-〉TLcxOrig); The LCX chained list handle that/* loads current task to CPU*/
_ _ mtcr (PCXI, _ _ mfcr (PCXI) ﹠amp; (~ (uint32) (1<<22))); / * arranges PCXI.UL=0, and expression current C SA node is the bottom context node, and PCXI.UL is a territory of the PCXI register of TC1767 chip, be used for indicating current C SA node and be top context node or bottom context node */
_ _ asm (" rslcx "); / * recovery bottom context */
_ _ mtcr (PCXI, _ _ mfcr (PCXI) | (uint32) (3<<22)); / * arranges PCXI.UL=1, and expression current C SA node is the top context node; PCXI.PIE=1 is set, so that can enabled systems after the RFE interrupt, PCXI.PIE is a territory of PCXI register, effect be the interrupt enable bit * that indicates interrupt task/
}。
inline?void?TaskSaveRun(TaskType?PSavedTcb,?TaskType?PLoadTcb)
{
_ _ asm (" svlcx "); / * preservation bottom context */
OSTCBOld-〉TFcxCur=_ _ mfcr (FCX); / * preserve the FCL handle * of previous task/
OSTCBOld-〉TPcxCur=_ _ mfcr (PCX); / * preserve the PCL handle * of previous task/
_ _ mtcr (FCX, OSTCBCur-〉TFcxCur); The FCL handle that/* loads current task to CPU*/
_ _ mtcr (PCX, OSTCBCur-〉TPcxCur); The PCL handle that/* loads current task to CPU*/
_ _ mtcr (LCX, OSTCBCur-〉TLcxOrig); The LCX chained list handle that/* loads current task to CPU*/
_ _ mtcr (PCXI, _ _ mfcr (PCXI) ﹠amp; (~ (uint32) (1<<22))); / * arranges PCXI.UL=0, expression current C SA node be bottom context node */
_ _ asm (" rslcx "); / * recovery bottom context */
_ _ mtcr (PCXI, _ _ mfcr (PCXI) | (uint32) (3<<22)); / * arranges PCXI.UL=1, and expression current C SA node is the top context node; PCXI.PIE=1 is set so that can enabled systems after the RFE interrupt */
}。
inline?void?TaskLoadRun(TaskType?PRunTcb)
{
_ _ asm (" svlcx "); / * preservation bottom context */
_ _ mtcr (FCX, OSTCBCur-〉TFcxCur); The FCL handle that/* loads current task to CPU*/
_ _ mtcr (PCX, OSTCBCur-〉TPcxCur); The PCL handle that/* loads current task to CPU*/
_ _ mtcr (LCX, OSTCBCur-〉TLcxOrig); The LCX chained list handle that/* loads current task to CPU*/
_ _ mtcr (PCXI, _ _ mfcr (PCXI) ﹠amp; (~ (uint32) (1<<22))); / * arranges PCXI.UL=0, expression current C SA node be bottom context node */
_ _ asm (" rslcx "); / * recovery bottom context */
_ _ mtcr (PCXI, _ _ mfcr (PCXI) | (uint32) (3<<22)); / * arranges PCXI.UI=1, and expression current C SA node is the top context node; PCXI.PIE=1 is set so that can enabled systems after the RFE interrupt */
}。
inline?void?TaskRun(TaskType?PRunTcb)
{
_ _ asm (" svlcx "); / * preservation bottom context */
_ _ mtcr (FCX, OSTCBCur-〉TFcxCur); The FCL handle that/* loads current task to FCX register */
_ _ mtcr (PCX, OSTCBCur-〉TPcxCur); The PCL handle that/* loads current task to PCX register */
_ _ mtcr (LCX, OSTCBCur-〉TLcxOrig); The LCX chained list handle that/* loads current task to LCX register */
_ _ mtcr (PCXI, _ _ mfcr (PCXI) ﹠amp; (~ (uint32) (1<<22))); / * arranges PCXI.UL=0, expression current C SA node be bottom context node */
_ _ asm (" rslcx "); / * recovery bottom context */
_ _ mtcr (PCXI, _ _ mfcr (PCXI) | (uint32) (3<<22)); / * arranges PCXI.UL=1, and expression current C SA node is the top context node; PCXI.PIE=1 is set so that can enabled systems after the RFE interrupt */
}。
The interstitial content of described CSA chained list is preset value.
Wherein, the number of the CSA chained list of non-IDLE task is read from TCBCfg, and writes among the TCB of corresponding task, and its code is as follows:
SET_TASK_CSA_CNT(Tcb,?TcbCfg->osCsaCnt);
In addition, because the IDLE task also needs to set up the CSA chained list for it, the interstitial content of the CSA chained list of IDLE task directly defines in source code, and its code is as follows:
uint8OsIdleCsaCnt?=?10;
After the FCL of described task exhausts, increase the interstitial content of described CSA chained list, the CSA node that increases is here chosen from the CSA node that keeps.
In a word, the above only is preferred embodiment of the present invention, and all equalizations of doing according to the present patent application claim change and modify, and all should belong to the covering scope of patent of the present invention.
Claims (8)
1. implementation method based on the CSA node manager of TC1767 platform, it is characterized in that, comprise following concrete steps: for each task is set up respectively the CSA chained list, corresponding one by one between described task and the described CSA chained list, described CSA chained list comprises FCL and PCL; Switching described CSA chained list is that current C SA chained list switches with the realization task.
2. the implementation method of the CSA node manager based on the TC1767 platform according to claim 1 is characterized in that, the described step of setting up respectively the CSA chained list for each task is carried out before first task start after TC1767 powers on immediately.
3. the implementation method of the CSA node manager based on the TC1767 platform according to claim 2 is characterized in that, in the described process of setting up the CSA chained list, keeps the node of some, and the interstitial content of described reservation is determined by SYS_START_USED.
4. the implementation method of the CSA node manager based on the TC1767 platform according to claim 1, it is characterized in that, also comprise, before described task is carried out for the first time described CSA chained list is carried out initialization, concrete steps are: 1) all nodes with the PCL of described task insert among the FCL of described task; 2) from FCL, take out two nodes and be respectively first node and Section Point, described first node is as context storage area, top, the value of the stack pointer of described task is write the SP subdomain of described first node, described Section Point writes the entry address of described task the RA subdomain of described Section Point as context storage area, bottom; 3) described first node is inserted described PCL with the head method of inserting; 4) described Section Point is inserted described PCL with the head method of inserting.
5. the implementation method of the CSA node manager based on the TC1767 platform according to claim 1 is characterized in that, the interstitial content of described CSA chained list is preset value.
6. the implementation method of the CSA node manager based on the TC1767 platform according to claim 1 is characterized in that, also comprises, after the FCL of described task exhausts, increases the interstitial content of described CSA chained list.
7. the implementation method of arbitrary described CSA node manager based on the TC1767 platform is characterized in that according to claim 1-6, and described task comprises the IDLE task.
8. the implementation method of arbitrary described CSA node manager based on the TC1767 platform according to claim 1-6, it is characterized in that, the TCB of described task comprises following member variable: TPcxCur, TFcxCur, TPcxOrig, TFcxOrig, TLcxOrig, described member variable is used for preserving the handle of described CSA chained list, wherein, TPcxCur is used for preserving the first node address of current PC L, TFcxCur is used for preserving the first node address of current FCL, TPcxOrig is used for preserving the first node address of initial p CL, TFcxOrig is used for preserving the first node address of initial FCL, and TLcxOrig is for the tail node address of preserving initial FCL.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100074142A CN103049325A (en) | 2013-01-09 | 2013-01-09 | Method for implementing CSA (context save area) node manager on basis of TC1767 platform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100074142A CN103049325A (en) | 2013-01-09 | 2013-01-09 | Method for implementing CSA (context save area) node manager on basis of TC1767 platform |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103049325A true CN103049325A (en) | 2013-04-17 |
Family
ID=48061975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013100074142A Pending CN103049325A (en) | 2013-01-09 | 2013-01-09 | Method for implementing CSA (context save area) node manager on basis of TC1767 platform |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103049325A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110147247A (en) * | 2019-05-27 | 2019-08-20 | 北京智芯微电子科技有限公司 | The method for realizing management software multitask based on C language |
CN111124624A (en) * | 2019-12-24 | 2020-05-08 | 浙江大学 | Operating system task context management method based on TriCore architecture processor |
WO2023020069A1 (en) * | 2021-08-18 | 2023-02-23 | 华为技术有限公司 | Virtual machine management method and related system, and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007120075A1 (en) * | 2006-04-18 | 2007-10-25 | Limited Liability Company (Llc) 'unicorne Microsystems' | Method for switching context of tasks and procedures in a processor |
CN101908002A (en) * | 2010-08-17 | 2010-12-08 | 中兴通讯股份有限公司 | Task path switching method and device |
CN102591703A (en) * | 2011-01-10 | 2012-07-18 | 中兴通讯股份有限公司 | Task scheduling method and task scheduling device for operating system and computer |
-
2013
- 2013-01-09 CN CN2013100074142A patent/CN103049325A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007120075A1 (en) * | 2006-04-18 | 2007-10-25 | Limited Liability Company (Llc) 'unicorne Microsystems' | Method for switching context of tasks and procedures in a processor |
CN101908002A (en) * | 2010-08-17 | 2010-12-08 | 中兴通讯股份有限公司 | Task path switching method and device |
CN102591703A (en) * | 2011-01-10 | 2012-07-18 | 中兴通讯股份有限公司 | Task scheduling method and task scheduling device for operating system and computer |
Non-Patent Citations (1)
Title |
---|
黄鑫: "Reworks上下文切换在Tricore上的实现", 《计算机工程》, vol. 37, 31 December 2011 (2011-12-31), pages 368 - 370 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110147247A (en) * | 2019-05-27 | 2019-08-20 | 北京智芯微电子科技有限公司 | The method for realizing management software multitask based on C language |
CN110147247B (en) * | 2019-05-27 | 2023-01-24 | 北京智芯微电子科技有限公司 | Method for realizing management software multitask based on C language |
CN111124624A (en) * | 2019-12-24 | 2020-05-08 | 浙江大学 | Operating system task context management method based on TriCore architecture processor |
CN111124624B (en) * | 2019-12-24 | 2023-05-02 | 浙江大学 | TriCore architecture processor-based operating system task context management method |
WO2023020069A1 (en) * | 2021-08-18 | 2023-02-23 | 华为技术有限公司 | Virtual machine management method and related system, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3404587B1 (en) | Cnn processing method and device | |
CN105159776B (en) | Process handling method and device | |
CN103761182A (en) | Method and device for deadlock detection | |
CN108021449B (en) | Coroutine implementation method, terminal equipment and storage medium | |
CN105095287A (en) | LSM (Log Structured Merge) data compact method and device | |
CN105487987B (en) | A kind of concurrent sequence of processing reads the method and device of IO | |
CN104932933A (en) | Spin lock acquisition method and apparatus | |
CN111400016B (en) | Method and equipment for calling application program interface function | |
CN106528065B (en) | A kind of thread acquisition methods and equipment | |
Short | Improved task management techniques for enforcing edf scheduling on recurring tasks | |
CN103488536A (en) | Task scheduling method and device and operating system | |
US8966212B2 (en) | Memory management method, computer system and computer readable medium | |
CN103049325A (en) | Method for implementing CSA (context save area) node manager on basis of TC1767 platform | |
CN104731614A (en) | Method and device for accelerating data loading in starting process | |
CN107391508B (en) | Data loading method and system | |
CN111813515A (en) | Multi-process-based task scheduling method and device, computer equipment and medium | |
CN116841739B (en) | Data packet reuse system for heterogeneous computing platforms | |
CN104036141A (en) | Open computing language (OpenCL)-based red-black tree acceleration algorithm | |
CN104598278B (en) | A kind of data processing method and electronic equipment | |
CN103942155B (en) | Memory block control method and device | |
CN104699513A (en) | File processing method and device | |
CN112506813B (en) | Memory management method and system | |
CN105095197B (en) | A kind of method and device for handling data | |
CN107632881B (en) | State switching method and device of virtual processor | |
CN113641476A (en) | Task scheduling method, game engine, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130417 |