1
00:00:00,570 --> 00:00:07,450
Hello, welcome back and listen, we shall give an overview of Simms's artists and artists apps.

2
00:00:08,010 --> 00:00:11,100
Let's start off by understanding what artists APIs are.

3
00:00:11,520 --> 00:00:19,230
So ARTUS APIs define the programming interface that is the set of functions that programmers use when

4
00:00:19,230 --> 00:00:21,020
interacting with the artists.

5
00:00:21,810 --> 00:00:28,410
So the set of functions that you would use, such as create a task, delay a task, delete a task,

6
00:00:28,800 --> 00:00:30,180
suspend a task.

7
00:00:30,570 --> 00:00:31,620
Create a semaphore.

8
00:00:32,770 --> 00:00:38,500
We pooh pooh these these functions together, it becomes a set of functions and we call this set of

9
00:00:38,500 --> 00:00:45,610
functions, the ARTUS APIs, Arktos APIs, Expo's or the Arktos functions.

10
00:00:46,240 --> 00:00:47,470
So as simple as this.

11
00:00:48,770 --> 00:00:57,060
Now, what are generic orators APIs, so the concept of generic Arktos APIs is very important.

12
00:00:57,680 --> 00:01:01,580
What they do is they are not tied to a specific ATA's.

13
00:01:02,120 --> 00:01:06,930
They are implemented as a rapper lya above the characters APIs.

14
00:01:07,250 --> 00:01:09,380
So when we take a look at this diagram.

15
00:01:10,380 --> 00:01:16,200
We see that at the bottom, we have what you call in our hardware peripherals, that is what's written

16
00:01:16,200 --> 00:01:18,510
us HWP for us.

17
00:01:18,690 --> 00:01:20,710
On top of that, we have subsystems.

18
00:01:20,830 --> 00:01:26,180
This is the cortex and cortex microcontroller software interface done that.

19
00:01:26,190 --> 00:01:27,420
That is what that stands for.

20
00:01:27,870 --> 00:01:34,050
In the second layer, we have Simms's and the drive is what this means is that we can access the mechanical

21
00:01:34,140 --> 00:01:40,470
and hardware peripherals using the CMC standard or drive as provided by the manufacturer.

22
00:01:40,800 --> 00:01:44,040
On top of Simms's, we have our ARTUS Artmosphere.

23
00:01:44,820 --> 00:01:52,050
Is free Artus, so there is free Arktos and on top of free Arktos, we have something known as Simms's

24
00:01:52,050 --> 00:01:59,430
artists and on top of Simms's artists we have our user code you would see to our user code can access.

25
00:02:00,440 --> 00:02:06,720
Simms's Artus, as well as free Arktos based on this, are we have you in the same way our use of code

26
00:02:06,740 --> 00:02:11,900
can access Simms's then the driver's as well as hardware peripherals.

27
00:02:13,700 --> 00:02:20,640
We could see that from our U.S. courts perspective, we can access the entirety and the entirety of

28
00:02:20,640 --> 00:02:29,520
our system stack, and on top of that, we have two options for using the artist we can use either artists

29
00:02:29,790 --> 00:02:31,560
or Simms's artists.

30
00:02:32,280 --> 00:02:33,960
And why this is important is.

31
00:02:34,870 --> 00:02:44,920
This arrow here means using the standard free ARTUS APIs functions such as to great we can use, to

32
00:02:45,130 --> 00:02:52,090
create, to create a function, or we can use the version defined in Simms's ARTUS to create a function

33
00:02:52,090 --> 00:02:52,890
for us as well.

34
00:02:54,240 --> 00:02:59,490
OK, so then the question becomes, why do I need Simms's artists and artists?

35
00:03:00,470 --> 00:03:06,320
In this case, Artosis stands for Free Artus with written our Tosya because generic APIs don't work

36
00:03:06,320 --> 00:03:09,200
with only free artists, they work with other artists.

37
00:03:09,590 --> 00:03:12,470
OK, so why do I need why?

38
00:03:12,860 --> 00:03:20,480
That's my system need the ability to use generic APIs as well as the real or the actual APIs of the

39
00:03:20,480 --> 00:03:22,010
particular artist I'm using.

40
00:03:22,550 --> 00:03:23,640
OK, let's continue.

41
00:03:25,010 --> 00:03:28,900
So there are two generic apps that can be used with free ARTUS.

42
00:03:28,910 --> 00:03:35,690
We have to Simms's, ARTUS and CMC stands for Coatex Microcontroller Software Interface and this is

43
00:03:35,690 --> 00:03:38,930
a vendor independent API standard created by.

44
00:03:39,560 --> 00:03:44,050
So this API standard is not tied to any manufacturer.

45
00:03:44,780 --> 00:03:50,970
So it's created by is the company that designs the cortex microcontroller.

46
00:03:51,590 --> 00:03:56,150
We also have deposits and this is the portable operating system interface.

47
00:03:56,540 --> 00:04:01,490
This API is mostly used in general purpose operating systems such as Linux.

48
00:04:02,350 --> 00:04:09,080
OK, now we've stated the two options of generic API so that we can use for our free Arktos.

49
00:04:09,080 --> 00:04:12,120
The question still remains, why do we need generic APIs?

50
00:04:12,290 --> 00:04:13,610
What are the pros and cons?

51
00:04:14,540 --> 00:04:23,210
OK, generic APIs allows us to write code ones and run on multiple mce use change in only the artist's.

52
00:04:24,180 --> 00:04:32,190
What this means is we can write our code, our Real-Time operating system code using generic APIs and

53
00:04:32,190 --> 00:04:34,410
we can decide not to use free ARTUS.

54
00:04:35,850 --> 00:04:40,860
And then see, we want to use a different artist such as Cow Artex five.

55
00:04:42,300 --> 00:04:48,930
When we decide to make this decision, we need not change our job creation function, our semaphores

56
00:04:48,930 --> 00:04:50,760
and all of that, we need not change any of that.

57
00:04:50,770 --> 00:04:55,660
Could we simply change our ARTUS so we simply change the outas file?

58
00:04:56,310 --> 00:05:03,260
Meanwhile, the files, the files in our user code area, nothing changes in our accord.

59
00:05:03,570 --> 00:05:11,720
We simply swap free ARTUS from this layer and protocol Artex five because we've decided to use Article

60
00:05:11,760 --> 00:05:19,110
five and everything else remains the same because we created our functions using Simms's artists so

61
00:05:19,110 --> 00:05:23,220
our user could use the generic API to create our Archos functions.

62
00:05:23,380 --> 00:05:30,090
But if our user could used the the actual APIs of this particular artist, which is free artist who

63
00:05:30,090 --> 00:05:37,020
creates the artist, the Archos functionality that we may need to rewrite our user code.

64
00:05:38,250 --> 00:05:46,330
For our tax, but if we use the generic API known as societies, we simply need to swap this out.

65
00:05:46,650 --> 00:05:49,820
We take this out and put in the wonderful artex.

66
00:05:50,750 --> 00:05:58,790
Right, so the benefit is not just for developers, it also allows people who design middle words to

67
00:05:58,790 --> 00:06:06,200
write code that interact with a single API while at the same time supporting multiple realtime operating

68
00:06:06,200 --> 00:06:06,830
systems.

69
00:06:07,700 --> 00:06:13,490
But of course, the drawback here is because it is generic in nature, the unique portions of a particular

70
00:06:13,490 --> 00:06:14,960
artist may be left out.

71
00:06:15,990 --> 00:06:23,520
So that is the drawback, but if you take a look at our diagram that draw back and we can counter that

72
00:06:23,520 --> 00:06:29,970
draw back, because if there is something unique about the Arktos that we don't find, its function

73
00:06:29,970 --> 00:06:31,800
is defined in the generic API.

74
00:06:31,800 --> 00:06:39,690
We can still use the the the specific APIs for this ARTUS, since we can access from our user code,

75
00:06:39,870 --> 00:06:41,310
we can access the archbishop.

76
00:06:41,310 --> 00:06:48,810
We don't always have to go through Simms's ARTUS so we can still use the unique free Archos functions.

77
00:06:48,810 --> 00:06:56,400
If they are not if they are not ported in our Simms's artist generic API, we can still call those unique

78
00:06:56,400 --> 00:06:59,520
functions in the same code and it would work normally.

79
00:07:00,610 --> 00:07:07,270
OK, so let's see some differences between or let's compare the functions we have in our free arches

80
00:07:07,480 --> 00:07:10,090
with the ones defined in our societies.

81
00:07:11,340 --> 00:07:15,940
OK, so this is the this first column shows the free Arktos functions.

82
00:07:15,940 --> 00:07:21,940
This second column shows this crisis artist functions, for instance, our V task delay function.

83
00:07:22,120 --> 00:07:25,870
If we want to use it with Simms's artists, we would have to say always delete.

84
00:07:27,050 --> 00:07:36,270
And if we want to use our always delayed until our V task on our V task delay until function in Simms's

85
00:07:36,290 --> 00:07:37,820
artists, we use their functions.

86
00:07:38,240 --> 00:07:40,070
The function always delay until.

87
00:07:41,240 --> 00:07:41,660
Right.

88
00:07:42,570 --> 00:07:49,200
Let's see the next set, some of the functions, of course, in theaters do not have the direct correspondence

89
00:07:49,200 --> 00:07:50,700
in Simms's archers.

90
00:07:50,800 --> 00:07:51,450
That is fine.

91
00:07:52,620 --> 00:07:59,850
Also, if we want to call our V task star to schedule a function in Simms's, artists, we say always

92
00:07:59,850 --> 00:08:00,810
can start.

93
00:08:01,940 --> 00:08:11,090
If we want to see or if we want to call our V task resume or V get Shetler state, we do always can

94
00:08:11,300 --> 00:08:12,290
unlock it.

95
00:08:12,350 --> 00:08:21,500
Simms's artists and then our our X task get take account becomes always can or take account.

96
00:08:22,280 --> 00:08:24,210
We can get to count.

97
00:08:24,610 --> 00:08:33,620
OK, so what will be helpful is me creating a list, a PDF and then attaching these, these differences

98
00:08:33,620 --> 00:08:34,040
to it.

99
00:08:36,100 --> 00:08:36,640
OK.

100
00:08:39,180 --> 00:08:42,250
OK, so let's move on, let's see other differences.

101
00:08:42,720 --> 00:08:48,210
So these are the functions which message keeps our VQ on registar?

102
00:08:48,210 --> 00:08:49,720
Q becomes always message.

103
00:08:49,720 --> 00:08:57,090
Q delete and the same always message you delete gives us the same functionality as these two functions

104
00:08:57,090 --> 00:09:00,600
and free artus so we can delete over here.

105
00:09:00,870 --> 00:09:01,290
OK.

106
00:09:02,590 --> 00:09:04,450
Then we have Q received.

107
00:09:06,020 --> 00:09:08,830
We have excusive over here.

108
00:09:10,210 --> 00:09:18,540
And has becomes worst mistake you get and then execute a message you execute sent to back us message

109
00:09:18,570 --> 00:09:21,130
HQ put right so.

110
00:09:22,480 --> 00:09:30,040
These are the functions for the SEMAFO, our SEMAFO take becomes always mutex acquire UCM, says Artus

111
00:09:30,790 --> 00:09:38,470
XMA Forgive becomes Oase mutex release of the SEMAFO Gilead's becomes voice mutex delete.

112
00:09:39,860 --> 00:09:41,960
And also, we have the functions.

113
00:09:42,990 --> 00:09:45,330
More functions for mutex.

114
00:09:46,720 --> 00:09:50,140
It seems this is the same with semaphore take.

115
00:09:50,500 --> 00:09:52,110
OK, so this is different.

116
00:09:52,120 --> 00:09:53,920
We have evacuation functions.

117
00:09:54,280 --> 00:09:58,060
Our own SEMAFO crate becomes was mutex new.

118
00:09:58,480 --> 00:10:03,360
Our SEMAFO gets KONE's becomes always SEMAFO gets koncz over here.

119
00:10:03,790 --> 00:10:09,550
Our SEMAFO deletes becomes semafo delete semafo give mutex Reles.

120
00:10:09,800 --> 00:10:13,570
OK, these are just examples of the differences.

121
00:10:14,050 --> 00:10:16,570
And of course this is with regards to the time.

122
00:10:16,570 --> 00:10:22,120
As our time undelete becomes waste time and they meet our time, I get to name becomes waste time.

123
00:10:22,120 --> 00:10:24,700
I get to name our time.

124
00:10:26,180 --> 00:10:32,830
This run in becomes waste, time is running, our time creates becomes waste time on you.

125
00:10:32,850 --> 00:10:40,130
So we've seen some some similarities or we are seeing a trend over here.

126
00:10:41,000 --> 00:10:46,790
Whenever we see create in free frittatas, the word becomes new, you know, Simms's artists.

127
00:10:47,690 --> 00:10:48,250
OK.

128
00:10:49,960 --> 00:10:56,150
So let's see what things do we need to consider in migrating to our generic API?

129
00:10:56,770 --> 00:11:01,290
One thing is that a Simms's artist uses structures as inputs.

130
00:11:01,810 --> 00:11:07,930
So if we want to create our Simms's artist functions, so if we want to create a task, for instance,

131
00:11:07,930 --> 00:11:11,290
we don't just call create a task function and pass.

132
00:11:12,320 --> 00:11:18,950
The argument to the function, what would happen is we would define a structure in the structure, members

133
00:11:18,950 --> 00:11:27,200
would have our task parameters, and then we'll take this structure and pass it as argument to the function

134
00:11:27,200 --> 00:11:30,260
for creating the task in Simms's artists.

135
00:11:30,530 --> 00:11:38,170
Hence the Simms's are functions use structures as inputs, so the functions take structures argument

136
00:11:38,780 --> 00:11:40,130
in Simms's artists.

137
00:11:40,160 --> 00:11:47,840
So before we pass the structure as an argument to disarm societies function, we first need to set the

138
00:11:47,840 --> 00:11:50,450
structure members to the parameters we want.

139
00:11:50,880 --> 00:11:52,520
We shall see how this is done in code.

140
00:11:53,570 --> 00:12:01,070
And one other thing, the disempowers arduous task creation function is stack size argument is in bite

141
00:12:01,430 --> 00:12:04,880
while the free Arktos takes words argument.

142
00:12:05,300 --> 00:12:13,280
So if we are to us when we see one that is equal to four forbert by Simms's Arktos, one equals one

143
00:12:13,280 --> 00:12:16,370
by word means four bytes or 32 bits.

144
00:12:16,850 --> 00:12:23,020
So these are certain things we would have to keep in mind when using the Simms's are just generic API.

145
00:12:23,890 --> 00:12:25,310
This order is for this lesson.

146
00:12:25,310 --> 00:12:30,530
If you have any questions, of course, leave them in the questions and answers area and I'll see you

147
00:12:30,530 --> 00:12:30,900
later.

148
00:12:30,950 --> 00:12:31,640
Have a nice day.
