https://github.com/sysprog21/ksort
A Linux kernel module capable of performing concurrent sorts
https://github.com/sysprog21/ksort
kernel-module linux linux-kernel sorting-algorithms
Last synced: about 1 month ago
JSON representation
A Linux kernel module capable of performing concurrent sorts
- Host: GitHub
- URL: https://github.com/sysprog21/ksort
- Owner: sysprog21
- License: mit
- Created: 2021-03-25T03:44:41.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2025-03-29T00:30:18.000Z (2 months ago)
- Last Synced: 2025-05-08T23:53:53.483Z (about 1 month ago)
- Topics: kernel-module, linux, linux-kernel, sorting-algorithms
- Language: C
- Homepage:
- Size: 36.1 KB
- Stars: 3
- Watchers: 2
- Forks: 38
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ksort
A Linux kernel module that creates the device `/dev/sort`, capable of performing concurrent sorts.
## User access to the character device
In order to access the character device as a user you need to add a rule to
udev with the included rules file.
```
$ sudo cp 99-xoro.rules /etc/udev/rules.d/
$ sudo cp 99-sort.rules /etc/udev/rules.d/
$ sudo udevadm control --reload
```## Build and Test
Build from source:
```shell
$ make
```Test:
```shell
$ make check
```You should see also more messages in the kernel log.
## References
* [The Linux Kernel Module Programming Guide](https://sysprog21.github.io/lkmpg/)
* [Writing a simple device driver](https://www.apriorit.com/dev-blog/195-simple-driver-for-linux-os)
* [Character device drivers](https://linux-kernel-labs.github.io/refs/heads/master/labs/device_drivers.html)
* [cdev interface](https://lwn.net/Articles/195805/)
* [Character device files](https://sysplay.in/blog/linux-device-drivers/2013/06/character-device-files-creation-operations/)
* [Linux Workqueue](https://www.kernel.org/doc/html/latest/core-api/workqueue.html)## License
`ksort`is released under the MIT license. Use of this source code is governed by
a MIT-style license that can be found in the `LICENSE` file.