Skip to content

[Workshop] SDC: Process spelunking #1352

Closed
@illicitonion

Description

@illicitonion

Workshop Request

What is the title of your workshop

Process spelunking

What are the key topics that will be covered in the workshop?

Knowing when the following tools are useful, and how to use them

  • ps
  • strace
  • The /proc filesystem
  • lsof

And maybe some others - generally how to look into processes and understand what they're doing.

Note that some of our trainees will have Linux computers, and others will have macOS computers, and that several of these tools don't work properly when run via qemu (e.g. when running a Linux container in macOS), so we may need to provide environments somehow. We can either lend people laptops, or provide some EC2 machines they can ssh to or something.

What knowledge does the trainee need before starting?

They will have completed the ITP and Piscine courses, so will have learnt JavaScript and written several non-trivial projects in JavaScript. They will also have written some Python before. They have probably never consciously used the terms thread or file descriptor. They may be a bit vague on what a process actually is in the first place.

They will have done the following sections of prep:

Any C code we write/use will need to be super simple and explained.

What are the topics that will not be covered in the workshop?

We probably don't want to go super deep into OS internals, but the boundaries are a bit fuzzy.

Any other notes?

Ideally I'd like this to fit inside 90 minutes, less is fine too.

Completion

When completed the lesson plan and exercises should be added as a markdown file to https://github.com/CodeYourFuture/CYF-Workshops

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    ✅ Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions