Skip to content

Instantly share code, notes, and snippets.

View GentleGlory's full-sized avatar

Frank Lin GentleGlory

View GitHub Profile

Scheme Comparison

Scheme File Name Supports vPortFree() Merges Free Blocks Characteristics / Advantages Drawbacks / Limitations Suitable For
heap_1 heap_1.c No No Simplest and fastest implementation No memory can be freed; memory is never reused Static systems with fixed memory requirements
heap_2 heap_2.c Yes No Allows freeing memory; still simple Memory fragmentation possible; no block merging Moderate systems with low dynamic allocation
heap_3 heap_3.c Yes OS-dependent Wraps standard C `mal
@GentleGlory
GentleGlory / Driver.md
Last active June 25, 2025 00:15
Linux Driver Development

Module Entry and Exit

static int __init hello_init(void)
{
    printk(KERN_EMERG "[KERN_EMERG] Hello Module Init.\n");
    printk("[default] Hello Module Init.\n");
    return 0;
}
@GentleGlory
GentleGlory / asm.md
Last active May 6, 2025 03:10
ARM Programming

Condition flags

Flag Describtion
N Set to 1 if the result of the operation was negative
Z Set to 1 if the result was zero.
C Set to 1 if the operation resulted in a carry out (unsigned overflow).
V Set to 1 if the operation caused a signed overflow.

Conditional Branches

| Mnemonic(s) | Meaning | Condition (NZCV) |

@GentleGlory
GentleGlory / APP.md
Created April 29, 2025 00:12
Android

Change APP Icon

@GentleGlory
GentleGlory / Kotlin.md
Last active April 25, 2025 05:42
Kotlin Learning Notes

Generic Data Type

class Question<T>(
    val questionText: String
    val answer: T,
    val difficulty: String
)
    
fun main() {
    val question1 = Question<String>("Quoth the raven ___", "nevermore", "medium")