ccan | edk2 | |
---|---|---|
13 | 51 | |
1,046 | 4,262 | |
- | 1.9% | |
3.4 | 9.9 | |
2 months ago | 3 days ago | |
C | C | |
- | 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.
ccan
-
Memory leak proof every C program
Hilarious!
But I remember the first time I saw such a program which never freed anything: jitterbug, the simple bug tracker which ran as a CGI script.
It indeed allows a very simple style!
Meanwhile, use ccan/tal (https://github.com/rustyrussell/ccan/blob/master/ccan/tal/_i...) and be happy :)
-
Popular Data Structure Libraries in C ?
There's CCAN, maintained by kernel hacker Rusty Russell: http://ccodearchive.net/
-
My review of the C standard library in practice
Please note that the above link has been claimed by squatters and isn’t the right link for CCAN anymore! The maintainer suggests [1] just using the GitHub repo [2] instead.
[1] https://lists.ozlabs.org/pipermail/ccan/2022-September/00141...
[2] https://github.com/rustyrussell/ccan/
-
[ROAST MY CODE] Implementing generic vector in C
This is a great learning exercise but not very useful because using void* creates practical problems that the compiler cant help you with. IMHO, for a nice vector in C look at https://github.com/rustyrussell/ccan/blob/master/ccan/darray/darray.h
- Common libraries and data structures for C
-
Toward a better list iterator for the Linux kernel
For more advanced intrusive lists in C, I've found that ccan's tlist2 (https://github.com/rustyrussell/ccan/blob/master/ccan/tlist2...) provides a decent model here.
Compared to the linux kernel's intrusive lists, it also tracks the offset of the list_node within the structure contained by the list, which eliminates another class of problems. It does still have the "using the iterator after the for loop is over" issue discussed in this article, but it also already tracks the types as Linus proposed doing in the article to resolve the issue.
-
Good C Source Code
ccan library https://github.com/rustyrussell/ccan I think it is used also in the linux kernel(?)
-
What are your favorite C resources? They can be either for learning or reference.
ccan (analagous to cpan, but for C rather than Perl.)
-
Dynamic link list
You could use a discriminated union in your list node. You could use a void pointer in your list node, allocate space as needed and memcpy the date into this space, or don't allocate and store pointers to the original data. You could use an intrusive list, like this.
-
The Byte Order Fiasco
The fallacy in the article is that anyone should code these functions. There's plenty of public domain libraries that do this correctly.
https://github.com/rustyrussell/ccan/blob/master/ccan/endian...
edk2
-
Future of 32-bit platform support in FreeBSD
For the modern server/desktop and even laptop, that's also no bad thing. It is somewhat ridiculous that UEFI bioses, internally, still boot in 16-bit real mode and have to do all the steps your bios bootloader used to do to set up a 64-bit environment ready to go: https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a..., https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a..., https://github.com/tianocore/edk2/blob/edc6681206c1a8791981a...
Why not just start the CPU in "long mode", which is what everyone is using it for, in the first place?
These newer ARM processors support 32-bit code at EL0 only (userspace). That seems like a reasonable approach for x86 as well and the freebsd announcement has this to say:
> There is currently no plan to remove support for 32-bit binaries on 64-bit kernels.
So for the moment, you can run 32-bit applications just fine.
-
Precision 7520: 64GB memory 3200MHz support
Download this UEFI shell and place it in the BOOT subfolder
-
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack
They could have at least informed TianoCore. the affected code in edk2 hasn't been modified in 2 years.... https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Library/BaseBmpSupportLib/BmpSupportLib.c
-
VM not booting with host-passthrough or host-model
I have half fixed it.. Using this solution: https://github.com/tianocore/edk2/discussions/4662
-
All gaming laptop owners know this is never true...
You need only EDK2 and some lööps.
-
AMD openSIL open source firmware proof of concept
What is the difference between this and https://github.com/tianocore/edk2
-
AMD to move to open source firmware in 2026
From there you'll need to get an EFI Shell. There may be one built into your system, but you can also get one here from Tianocore (aka, the people mostly making UEFI). Neither this EFI Shell nor Keytool.efi (the thing you need to load the keys) are signed of course, so you will need to turn off SecureBoot to continue. From there just run Keytool with your new keys, turn back on SecureBoot, and move on with your life.
-
Windows installation doesn't boot up when I try to use UEFI firmware
I had the same issue. What fixed it for me was compiling my own OVMF.fd file from here and using that to boot. The version of OVMF that shipped with fedora was broken for me for some reason.
- why chatgpt knows about (haswell NRI) [ERROR] REUT timed out, ch_done: 0 but not in google?
- EDK II Project: cross-platform firmware development environment
What are some alternatives?
SQLite - Official Git mirror of the SQLite source tree
vTPM - libtpms / swtpm software emulation of a Trusted Platform Module (TPM 1.2 and TPM 2.0) compile script
STC - A modern, user friendly, generic, type-safe and fast C99 container library: String, Vector, Sorted and Unordered Map and Set, Deque, Forward List, Smart Pointers, Bitset and Random numbers.
tianocore
stage0 - A set of minimal dependency bootstrap binaries
coreboot - Mirror of https://review.coreboot.org/coreboot.git. We don't handle Pull Requests.
stb - stb single-file public domain libraries for C/C++
OpenCorePkg - OpenCore bootloader
limine - Modern, advanced, portable, multiprotocol bootloader.
Getting-Started-With-ACPI - Repo for Getting Started With ACPI
chibicc - A small C compiler