Strong APA Scheduler : First Draft

Gedare Bloom gedare at rtems.org
Sun Jul 26 14:03:23 UTC 2020


Richi,

On Sat, Jul 25, 2020 at 11:21 AM Richi Dubey <richidubey at gmail.com> wrote:
>
> Dear Dr. Bloom,
>
> Please find the pull request at the following link: https://github.com/RTEMS/rtems/pull/39.
>

It would be great if you can create a GitHub Pull Request (PR) for
your branch against your "master" branch in your fork.

I'd prefer you not submit a PR to RTEMS repo, but rather, to your
forked repo. We don't review PRs on RTEMS/github in general, so it is
better to keep this review off the github mirror.

> Please note that I have tried to remove all the compilation errors but this still won't compile right now, because my implementation requires the use of percpu.h file, which (I'm assuming) is not currently linked with the source files related to Strong APA.
>
That seems strange.

> I'm hoping you could help me out with the following points:
>
> - What to use instead of malloc
> - Checking if the structures I have defined in strongapascheduler.h make sense
> - If the entire logic conveyed by Get_highest_ready, Get_lowest_ready and other important functions are correct,
>
I can check later, and as I said prefer if you can send me a link to a
PR on your fork only.

> Thank you
>
> On Fri, Jul 24, 2020 at 11:25 PM Gedare Bloom <gedare at rtems.org> wrote:
>>
>> On Fri, Jul 24, 2020 at 8:20 AM Richi Dubey <richidubey at gmail.com> wrote:
>> >
>> > Hi,
>> >
>> > With Dr. Butterfield's help, I've made the changes to implement the FIFO Queue using chain. I am not accustomed to coding for embedded systems, so I am not completely sure if I should be using malloc or not.
>> >
>> > Someone, please review the following changes:
>> >
>> > FIFO Implementaion and Queue traversal: https://richidubey.github.io/Strong-APA-Documentation/html/schedulerstrongapa_8c_source.html#l00159
>> >
>> > The structure I have defined to be used with Chain_Control: https://richidubey.github.io/Strong-APA-Documentation/html/structCPU.html
>> >
>> I can't fully review yet. You should not be using malloc.
>>
>> I can review for you on github if you like, if you make a pull request
>> against the base commit of your rtems fork.
>>
>> > Thank you,
>> > Richi.
>> >
>> > On Fri, Jul 24, 2020 at 11:28 AM Richi Dubey <richidubey at gmail.com> wrote:
>> >>
>> >> Hi Andrew,
>> >>
>> >> Your suggestion helps and I am going to work on it today. Thank you.
>> >>
>> >> On Thu, Jul 23, 2020 at 8:14 PM Andrew Butterfield <Andrew.Butterfield at cs.tcd.ie> wrote:
>> >>>
>> >>> Hi Richi,
>> >>>
>> >>>  a quick answer to 1 below
>> >>>
>> >>> On 23 Jul 2020, at 15:20, Richi Dubey <richidubey at gmail.com> wrote:
>> >>> 1)Both the algorithms require the use of a FIFO Queue to support the insert and dequeue operations.
>> >>>
>> >>> I believe we can use chains and use the chain_append() and combination of _Chain_Extract  and _Chain_First or just _Chain_First and node->next to achieve the FIFO requirements.
>> >>>
>> >>>
>> >>>
>> >>> You might want to look at chain_get() - it removes the first element, so does a FIFO protocol in tandem with chain_append()
>> >>>
>> >>> Regards,
>> >>>   Andrew
>> >>>
>> >>> _______________________________________________
>> >>> devel mailing list
>> >>> devel at rtems.org
>> >>> http://lists.rtems.org/mailman/listinfo/devel
>> >>>
>> >>>
>> >>> --------------------------------------------------------------------
>> >>> Andrew Butterfield     Tel: +353-1-896-2517     Fax: +353-1-677-2204
>> >>> Lero at TCD, Head of Software Foundations & Verification Research Group
>> >>> School of Computer Science and Statistics,
>> >>> Room G.39, O'Reilly Institute, Trinity College, University of Dublin
>> >>>                          http://www.scss.tcd.ie/Andrew.Butterfield/
>> >>> --------------------------------------------------------------------
>> >>>
>> > _______________________________________________
>> > devel mailing list
>> > devel at rtems.org
>> > http://lists.rtems.org/mailman/listinfo/devel


More information about the devel mailing list