{"id":27650811,"url":"https://github.com/grgomariani/lkm_tutorial","last_synced_at":"2025-04-24T03:48:06.997Z","repository":{"id":287229601,"uuid":"138858408","full_name":"GrgoMariani/LKM_Tutorial","owner":"GrgoMariani","description":"A short tutorial on Linux Kernel Modules. It's meant to complement other tutorials you can find online.","archived":false,"fork":false,"pushed_at":"2018-06-28T11:28:33.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-24T03:48:05.455Z","etag":null,"topics":["linux-kernel-module","lkm","tutorial-code"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GrgoMariani.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-06-27T09:16:19.000Z","updated_at":"2018-06-28T11:28:34.000Z","dependencies_parsed_at":"2025-04-10T17:09:38.299Z","dependency_job_id":"286a112a-8810-432e-9703-0e77a868322a","html_url":"https://github.com/GrgoMariani/LKM_Tutorial","commit_stats":null,"previous_names":["grgomariani/lkm_tutorial"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrgoMariani%2FLKM_Tutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrgoMariani%2FLKM_Tutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrgoMariani%2FLKM_Tutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrgoMariani%2FLKM_Tutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GrgoMariani","download_url":"https://codeload.github.com/GrgoMariani/LKM_Tutorial/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250560007,"owners_count":21450168,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linux-kernel-module","lkm","tutorial-code"],"created_at":"2025-04-24T03:48:06.431Z","updated_at":"2025-04-24T03:48:06.983Z","avatar_url":"https://github.com/GrgoMariani.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Linux Kernel Modules Tutorial\n- - - -\n- - - -\nI've decided to write a different kind of tutorial on LKMs. There's a lot of tutorials online, but since this is a really complex topic one more cannot really hurt.\nIt's mostly meant to __complement__ other HowTos you can find online.\nI'm familiarizing myself completely with the topic as well so don't mind if I fail to touch a few things.\n\nBe sure to check the links I listed in the 'Other' directory.\n\nThis tutorial should be read somewhat differently than the tutorials you might be used to by now. I'm not big on explaining things myself so I'll leave that to yourselves.\n\n__However__, what I will do here is cover a lot of ground you might not have covered by your own and leave you to your own to effing google it.\n\n- - - -\n- - - -\n\n### [Part 0 - Preparation](0_Preparation/README.md)\n\nInstalling the prereqs needed to compile your custom modules.\n\n### [Part 1 - Our First Module](1_Our_First_Module/README.md)\n\n\"Hello World\" as LKM.\n\n### [Part 2 - Devices](2_Devices/README.md)\nLet's create a _virtual device_ we can access from __/dev__ folder.\n\n### Part 3 - Hardware\n_todo_ __todo__ _todo_ __todo__\n\n### [Other](Other/README.md)\n\nThis is where I'll keep interesting links.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrgomariani%2Flkm_tutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgrgomariani%2Flkm_tutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrgomariani%2Flkm_tutorial/lists"}