raspberry-pi-os
mal
raspberry-pi-os | mal | |
---|---|---|
9 | 94 | |
12,870 | 9,808 | |
- | - | |
0.0 | 0.0 | |
about 1 month ago | about 1 month ago | |
C | Assembly | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
raspberry-pi-os
-
I want to learn about kernel development
Last but not the least, learning by doing is fun so you can check out - raspberry-pi-os (writing an os from scratch) - https://github.com/s-matyukevich/raspberry-pi-os
- GitHub - s-matyukevich/raspberry-pi-os: Learning operating system development using Linux kernel and Raspberry Pi
- Learning operating system development using Linux kernel and Raspberry Pi
- Learning operating system development using Linux kernel and Raspberry Pi (2018)
-
Show HN: CheesecakeOS for Raspberry Pi Volume 0: Booting, Processes, and VM
CheesecakeOS for Raspberry Pi Volume 0: Booting, Processes, and Virtual Memory is the first in what I hope is a series of github markdown tutorials or volumes on bare-metal from-scratch operating system development.
I have dreamed of contributing to the Linux Kernel, but have yet to find the courage to jump in and do so. I started by attempting to read Understanding the Linux Kernel by Daniel Bovet and Marco Cesati, but found it was too advanced for me at the time. I found another text I credit with advancing my understanding, Computer Systems: A Programmer's Perspective by Randall Bryant and David O'Hallaron. I worked on the self-study labs from their book website, and found them to be a superb educational tool.
Further, then becoming interested in what creating an operating system actually means, I stumbled upon Sergey Matyukevich's Rasberry-Pi-OS github repo (https://github.com/s-matyukevich/raspberry-pi-os). I wanted to expand on his tutorial, for my own education, and, in the best case, for the benefit of others.
There are many ideas taken from Linux in the implementation, as when I didn't know how to proceed, that is the source I would consult. Though, I attempt to simplify and explain the details in the text. The implementation stops short of implementing or supporting a file system, the subject of the next volume.
-
Has anyone ever actually gotten a custom kernel/bare metal program to run specifically on the Raspberry Pi 4B?
Not familiar with this myself but aiming to start soon. Have found a nice youtube series for low level development on the RPi, not sure which version he uses, but reportedly it works for some on RPi 4. He also has a subreddit:
-
wanting to create a simple OS for simple games
Here's one tutorial: https://github.com/s-matyukevich/raspberry-pi-os
-
In-depth software programming
C: Learning operating system development using Linux kernel and Raspberry Pi
- What's an interesting non-x86 based architecture to write an OS for?
mal
-
Ask HN: Is Lisp Simple?
>Would be interesting to see how the interpreter works actually...
It's quite easy to see, there are interpeters for Lisp in like 20 lines or so.
Here's a good one:
https://norvig.com/lispy.html
(It has the full code in a link towards the bottom)
There's also this:
https://github.com/kanaka/mal
- GitHub - kanaka/mal: mal - Make a Lisp
-
Build Your Own Lisp
Here is one implementation of a lisp (mal specifically) in matlab: https://github.com/kanaka/mal/blob/dcf8f4d7b9cf7b858850a04a0...
Only 260 lines of code, pretty concise :)
-
Found inside my compiler I've been writing for about 2 years
have a look at the crafting interpreters book, plus make a lisp (lisp is a great first language to make a compiler/interpreter for, just google "lisp compiler/interpreter" and you'll find lots of resources)
- Ce proiecte for-fun ati facut in timpul facultatii ca sa invatati ceva nou si practic singuri?
-
Crafting Interpreters or Writing an Interpreter in Go? Given context
If you're really okay with the limitations of a tree-walk interpreter, you might want to check out MAL, which will teach you how to write a tree-walk interpreter for a LISP. The code for MAL has been translated to most popular languages, so you can work through the creation of an interpreter in the language of your choice. JLox would give you a bit more detail and a more complex language, but I'm not convinced that it's all that important.
-
What do I do now?
Write a small programming language (lisp (https://github.com/kanaka/mal) or brainfuck) in C++ to learn the syntax more. This will teach you a lot about programming languages in general.
- Ask HN: What projects did you build to get better as a programmer?
-
Can you beat my dad at Scrabble?
So I started some hobbyist game dev using Unity and realised that the full process of making a game has dependencies on a mass of lower-level skills including lighting virtual environments. As a hobbyist photographer I could see some useful analogies from lighting studios and other scenes
So I pivoted, and eventually made money, not from selling a game, but from developing tutorials about digital lighting. I was also able to contribute to a project at work that was making a product based on commercial games engine, not by actually coding it, but by helping to better estimate the costs of the asset generation required.
Coding Unity object scripts in C# also got me back into programming, and I went on to successfully build a self-hosting lisp interpreter following the Make a Lisp guidelines [0].
[0] https://github.com/kanaka/mal/blob/master/process/guide.md
-
Advice for a first-time designer of my own original programming language? Presently writing the interpreter!
Hijacking the top comment to add https://buildyourownlisp.com and https://github.com/kanaka/mal
What are some alternatives?
JingOS - Awesome - JingOS - The World’s First Linux-based OS design for Tablets
paip-lisp - Lisp code for the textbook "Paradigms of Artificial Intelligence Programming"
rdma-core - RDMA core userspace libraries and daemons
Lua - Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.
dattobd - kernel module for taking block-level snapshots and incremental backups of Linux block devices
sectorlisp - Bootstrapping LISP in a Boot Sector
circle - A C++ bare metal environment for Raspberry Pi with USB (32 and 64 bit)
project-based-learning - Curated list of project-based tutorials
rtw88-usb - rtw88 family usb driver for linux rtl8723du rtl8822bu rtl8821cu rtl8822cu
hy - A dialect of Lisp that's embedded in Python
AmogOS - ඞ Among-us themed OS. As seen on Reddit and Youtube.
wisp - A little Clojure-like LISP in JavaScript