 |
|
 |
MESC TOOL NEWS:
MESCT-MR32R_2-990816D
MR32R V.3.00 Release 1 Precaution
|
Please take note of the following problems in using real-time OS MR32R V.3.00
Release 1 for the M32R family of microcomputers.
- Problem in Using the Exception Handler in Combination with System Call "del_tsk"
- 1.1 Description
- When deleting tasks that involve the exception handler with the del_tsk system call, the exception handler must be defined in the configuration file in advance; otherwise, the OS kernel may write data into undefined addresses and the user's program may not run normally.
Note: This problem has been fixed in MR32R V.3.10 Release 1.
- Problem in Defining the Stack Area of a Task with "stack_section" in the Configuration File
- 2.1 Description
- If the stack area of a task is defined with "stack_section" in the configuration file, the area will be reserved in an unintended area (another memory area).
Note: This problem has been fixed in MR32R V.3.10 Release 1.
- 2.2 Workaround
- Interchange the line of memory reservation and that of label definition described within the "Task Stack Area" portion at the end of the "sys_ram.inc" file that is created by the configurator. An example of the interchange is shown below.
Note that the "sys_ram.inc" file must be modified every time the configurator is executed.
-
[Descriptions in Configuration File]
-----------------------------------------------------------------
| :
| task[]{
| entry_address = main();
| stack_size = 0x1000;
| stack_section = main_stack; <- Designates main_stack
| priority = 1;
| initial_start = ON;
| };
| :
-----------------------------------------------------------------
[Result Created in sys_ram.inc]
-----------------------------------------------------------------
| :
| ;----------------------------------------
| ; Task Stack Area
| ;----------------------------------------
| .section main_stack,DATA
| .align 4
| __STK__main: <- Interchange this and
| .RES.B 0x1000 the next line
| :
-----------------------------------------------------------------
[Modified Result in sys_ram.inc]
-----------------------------------------------------------------
| :
| ;----------------------------------------
| ; Task Stack Area
| ;----------------------------------------
| .section main_stack,DATA
| .align 4
| .RES.B 0x1000
| __STK__main:
| :
-----------------------------------------------------------------
- Problem in Using the "fwd_por" System Call
- 3.1 Description
- When a task is in the waiting state for acceptance of a rendezvous, and any of the timeouts except TMO_POL and TMO_FEVER is set with the "tacp_por" system call, the task will not leave the timeout queue even if the waiting state is cancelled with the "fwd_por" system call.
- 3.2 Workaround
- Circumvent this problem by either of the following methods:
- Don't set any timeout with the "tacp_por" call if "fwd_por" is used.
- Switch to MR32R V.3.10 Release 1 since this problem has been eliminated in this release.
|
 |