Discussion starter: Possible improvements to hello-camkes-2 tutorial.

Open
#33 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Documentation
Clarity
Needs clarification
Activity status
Stale
Domain
documentation

Research direction

Start with the hello-camkes-2 tutorial and compare its current sequence with the checkpoints described in the issue, including the typed dataport workflow. Done means the tutorial explains how to validate progress after each smaller step, from building producer/consumer events through observing shared-buffer changes and signaling the client.

Written by the indexing model from the issue text.

Description

Regarding this tutorial, I believe there is a chance to make some changes to improve the goals of having the tutorial around.

Following through the hello-camkes-2 tutorial, it asked for a lot of steps, without being explicit about how to confirm that you are progressing correctly. Being unfamiliar with a workflow that works well, it was unclear to me how and when to stop and validate work done up to a given point.

When I started over again, from the beginning of hello-camkes-2, I took a modified approach. In this approach I accomplished smaller things in smaller steps, validating each along the way. I would not move on to the next step until I was satisfied with the current

  1. Understand setting up producer/consumer events each side
  • confirmed through successful build
  1. Setup shared memory buffer
  • confirmed by printing it client-side
  1. Bring server into the equation
  • confirmed with a log message in the handler
  1. print the shared buffer
  2. modify shared buffer
  • confirmed by repeating the print
  1. signal the client
  • confirmed with a log message after the wait()
  1. print the same buffer again
  • Expect to see changes propagated from server

I did a similar work flow for the typed dataport.

Dominant language
Python
Stars
61
Forks
58
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from seL4/sel4-tutorials

All issues in seL4/sel4-tutorials

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.