Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Anchor10795911079591 Differences in Source File Names and Contents Anchor10818131081813 Table C-2 he table below shows the source files used in both kernels. Note that a few of the files have the same or similar name.anchor

Panel

...

10818451081847
HTML Table
summary
classPlain_Table
Table Row (tr)
Table Cell (td)
Anchor
1081845
titleµC/OS-II and µC/OS-III files


µC/OS-II
Table Cell (td)
Anchor
1081847
µC/OS-III
td
Anchor10818491081849
Note
Table Row (tr) Table Cell (td) Anchor10818511081851   Table Cell (td)anchor1081853
1081853

os_app_hooks.c
Table Cell (td) Anchor10818551081855
(1)
Table Row (tr) Table Cell (td) Anchor10818571081857   Table Cell (td) Anchor10818591081859

os_cfg_app.c
Table Cell (td) Anchor10818611081861
(2)
Table Row (tr) Table Cell (td) Anchor10818631081863   Table Cell (td)anchor1081865
1081865

os_cfg_app.h
Table Cell (td) Anchor1081867
1081867
(3)
Table Row (tr) Table Cell (td) Anchor10818691081869
os_cfg_r.h
Table Cell (td) Anchor10818711081871
os_cfg.h
td
Anchor10818731081873
(4)
Table Row (tr) Table Cell (td)anchor1081875
1081875
os_core.c
Table Cell (td) Anchor1081877
1081877
os_core.c
Table Cell (td) Anchor10818791081879   Table Row (tr) Table Cell (td) Anchor10818811081881

os_cpu.h
Table Cell (td) Anchor10818831081883
os_cpu.h
Table Cell (td)anchor1081885
1081885
(5)
Table Row (tr) Table Cell (td)anchor1081887
1081887
os_cpu_a.asm
Table Cell (td) Anchor10818891081889
os_cpu_a.asm
Table Cell (td) Anchor10818911081891
(5)
Table Row (tr) Table Cell (td) Anchor10818931081893
os_cpu_c.c
Table Cell (td)anchor1081895
1081895
os_cpu_c.c
Table Cell (td) Anchor10818971081897
(5)
Table Row (tr) Table Cell (td) Anchor10818991081899
os_dbg_r.c
Table Cell (td) Anchor10819011081901
os_dbg.c
td
Anchor10819031081903
(6)
Table Row (tr) Table Cell (td)anchor1081905
1081905
os_flag.c
Table Cell (td) Anchor1081907
1081907
os_flag.c
Table Cell (td) Anchor10819091081909   Table Row (tr) Table Cell (td) Anchor10819111081911   Table Cell (td) Anchor10819131081913





os_
int
prio.c
Table Cell (td) Anchor10819151081915
(7)
Table Row (tr) Table Cell (td) Anchor10819171081917   Table Cell (td) Anchor10819191081919
os_
pend_multi
mbox.c
Table Cell (td) Anchor10819211081921

(8
) Table Row (tr) Table Cell (td) Anchor10819231081923   Table Cell (td) Anchor10819251081925 os_prio.c Table Cell (td) Anchor10819271081927 (9
)
Table Row (tr) Table Cell (td) Anchor10819291081929
os_
mbox.c Table Cell (td) Anchor10819311081931   Table Cell (td) Anchor10819331081933 (10) Table Row (tr) Table Cell (td) Anchor10819351081935 os_
mem.c
Table Cell (td) Anchor1081937
1081937
os_mem.c
Table Cell (td) Anchor10819391081939   Table Row (tr) Table Cell (td) Anchor10819411081941   Table Cell (td) Anchor10819431081943


os_msg.c
Table Cell (td) Anchor10819451081945
(
11
9)
tr
Table Cell (td) Anchor10819471081947
os_mutex.c
td
Anchor10819491081949
os_mutex.c
Table Cell (td) Anchor10819511081951   Table Row (tr) Table Cell (td)anchor1081953
1081953

os_q.c
Table Cell (td) Anchor10819551081955
os_q.c
Table Cell (td) Anchor10819571081957   Table Row (tr) Table Cell (td) Anchor10819591081959

os_sem.c
td
Anchor10819611081961
os_sem.c
Table Cell (td) Anchor10819631081963   Table Row (tr) Table Cell (td) Anchor10819651081965   Table Cell (td) Anchor10819671081967


os_stat.c
Table Cell (td) Anchor1081969
1081969
(
12) Table Row (tr) Table Cell (td) Anchor10819711081971
10)
os_task.c
Table Cell (td) Anchor10819731081973
os_task.c
Table Cell (td) Anchor10819751081975   Table Row (tr) Table Cell (td) Anchor10819771081977

os_time.c
td
Anchor10819791081979
os_time.c
Table Cell (td) Anchor10819811081981   Table Row (tr) Table Cell (td)anchor1081983
1081983

os_tmr.c
Table Cell (td) Anchor10819851081985
os_tmr.c
Table Cell (td) Anchor10819871081987   Table Row (tr) Table Cell (td) Anchor11229631122963   Table Cell (td) Anchor11229651122965


os_var.c
td
Anchor11229671122967 (13) Table Row (tr) Table Cell (td) Anchor10819891081989   Table Cell (td) Anchor10819911081991
(11)

os_type.h
Table Cell (td) Anchor1081993
1081993
(
14) Table Row (tr) Table Cell (td) Anchor10819951081995
12)
ucos_ii.h
Table Cell (td) Anchor10819971081997
os.h
td
(13)
anchor



10819991081999
Panel
bgColor
#f0f0f0

(

15)

...

1) µC/OS-II does not have this file, which is now provided for convenience so you can add application hooks. You should copy this file to the application directory and edit the contents of the file to satisfy your application requirements.

...

(2) os_cfg_app.c

...

 did not exist in µC/OS-II. This file needs to be added to a project build for µC/OS-III.

...

(3) In µC/OS-II, all configuration constants were placed

...

in os_cfg.h. In µC/OS-III, some of the configuration constants are placed in this file, while others are

...

in os_cfg_app.h. os_cfg_app.h

...

 contains application-specific configurations such as the size of the idle task stack, tick rate, and others.

...

(4) In µC/OS-III, os_cfg.h

...

 is reserved for configuring certain features of the kernel. For example, are any of the semaphore services required, and will the application have fixed-sized memory partition management?

...

(5) These are the port files and a few variables and functions will need to be changed when using a µC/OS-II port as a starting point for the µC/OS-III port.

...

1082081

HTML Table
summary
classPlain_Table
Table Row (tr)
Table Cell (td)
Anchor
1082081
µC/OS-II variable changes from …
Table Cell (td) Anchor10820831082083
… to these in µC/OS-III
Table Row (tr) Table Cell (td) Anchor10820851082085
OSIntNesting
td
Anchor10820871082087
OSIntNestingCtr
Table Row (tr) Table Cell (td) Anchor10820891082089
OSTCBCur
Table Cell (td) Anchor10820911082091
OSTCBCurPtr
Table Row (tr) Table Cell (td) Anchor1082093
1082093
OSTCBHighRdy
Table Cell (td) Anchor10820951082095
OSTCBHighRdyPtr
HTML TablesummaryclassPlain_Table Table Row (tr) Table Cell (td) Anchor10821401082140


µC/OS-II function changes from …
td
Anchor10821421082142
… to these in µC/OS-III
Table Row (tr) Table Cell (td)anchor1082144
1082144
OSInitHookBegin()
Table Cell (td) Anchor1082146
1082146
OSInitHook()
Table Row (tr) Table Cell (td) Anchor10821481082148
OSInitHookEnd()
Table Cell (td) Anchor10821501082150
N/A
Table Row (tr) Table Cell (td) Anchor10821521082152
OSTaskStatHook()
Table Cell (td)anchor1082154
1082154
OSStatTaskHook()
Table Row (tr) Table Cell (td)anchor1082156
1082156
OSTaskIdleHook()
Table Cell (td) Anchor10821581082158
OSIdleTaskHook()
Table Row (tr) Table Cell (td) Anchor10821601082160
OSTCBInitHook()
Table Cell (td) Anchor10821621082162
N/A
Table Row (tr) Table Cell (td) Anchor10821641082164
OSTaskStkInit()
Table Cell (td)anchor1082166
1082166
OSTaskStkInit()

...

The name of OSTaskStkInit() is the same but it is listed here since the code for it needs to be changed slightly as several arguments passed to this function are different. Specifically, instead of passing the top-of-stack as in µC/OS-II, OSTaskStkInit() is passed the base address and the size of the task stack.

...

(6) In µC/OS-III, os_dbg.c should always be part of the build. In µC/OS-II, the equivalent file (os_dbg_r.c) was optional.

...

...

(7) The code to determine the highest priority ready-to-run task is isolated in µC/OS-III and placed in os_prio.c. This allows the port developer to replace this file by an assembly language equivalent file, especially if the CPU used supports certain bit manipulation instructions and a count leading zeros (CLZ) instruction.

...

(8) µC/OS-II provides message mailbox services. A message mailbox is identical to a message queue of size one. µC/OS-III does not have these services since they can be easily emulated by message queues.

...

(9) Management of messages for message queues is encapsulated in os_msg.c in µC/OS-III.

...

(10) The statistics task and its support functions have been extracted out of os_core.c and placed in os_stat.c for µC/OS-III.

...

(11) All the µC/OS-III variables are instantiated in a file called os_var.c.

...

(12) In µC/OS-III, the size of most data types is better adapted to the CPU architecture used. In µC/OS-II, the size of a number of these data types was assumed.

...

(13) In µC/OS-II, the main header file is called ucos_ii.h. In µC/OS-III, it is renamed to os.h.