this post was submitted on 11 May 2026
1084 points (97.9% liked)

linuxmemes

31393 readers
1849 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
  • Don't get baited into back-and-forth insults. We are not animals.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn, no politics, no trolling or ragebaiting.
  • Don't come looking for advice, this is not the right community.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
  • 5. 🇬🇧 Language/язык/Sprache
  • This is primarily an English-speaking community. 🇬🇧🇦🇺🇺🇸
  • Comments written in other languages are allowed.
  • The substance of a post should be comprehensible for people who only speak English.
  • Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
  • 6. (NEW!) Regarding public figuresWe all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations.
  • Keep discussions polite and free of disparagement.
  • We are never in possession of all of the facts. Defamatory comments will not be tolerated.
  • Discussions that get too heated will be locked and offending comments removed.
  •  

    Please report posts and comments that break these rules!


    Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.

    founded 2 years ago
    MODERATORS
     

    alt textAn edit of xkcd 2501, "Average Familiarity":
    [Ponytail and Cueball are talking. Ponytail has her hand raised, palm up, towards Cueball.]
    Ponytail: Open-source alternatives are second nature to us foss nerds, so it's easy to forget that the average person probably only knows Linux and one or two degoogled Android ROMs.
    Cueball: And Firefox, of course.
    Ponytail: Of course.

    [Caption below the panel]
    Even when they're trying to compensate for it, experts in anything wildly overestimate the average person's familiarity with their field.

    partly inspired by the replies to this post but i see this kind of thing all the time (shoutout to the person who once genuinely asked "who still uses google these days?")

    made with this neat tool

    you are viewing a single comment's thread
    view the rest of the comments
    [–] ReginaPhalange@lemmy.world 1 points 11 hours ago

    The Fast-MBysoon Project

    Fast-MBysoon (Microkernel-Based YAML Synchronisation Object Notifier) is an ultra-low-latency middleware layer designed for distributed industrial robotics.

    In high-stakes environments—like automated assembly lines or autonomous warehouse swarms—different hardware modules need to share state updates without the overhead of a bloated OS. Fast-MBysoon treats system configurations and sensor states as YAML-defined Synchronization Objects.

    By operating on a microkernel architecture, it ensures that when one robot arm's "Object" (e.g., current_velocity) changes, every other node in the cluster is notified with nanosecond precision, bypassing traditional networking stacks.


    Core Architecture

    The system relies on a "Pub-Sub" model where the microkernel acts as a high-speed traffic controller for YAML-serialized state blobs.

    1. The Registry: A lightweight table in kernel space tracking which nodes care about which YAML keys.
    2. The Sync-Object: A versioned memory segment representing the "Source of Truth."
    3. The Notifier: A hardware-interrupt-driven signal that wakes up subscriber threads the moment a bit flips.

    Abstract Pseudo-Code

    The following represents the high-level logic of the Fast-MBysoon kernel loop and a typical client interaction.

    1. The Microkernel Dispatcher

    This runs in the privileged ring of the microkernel, managing memory gates.

    # Kernel Space: The "MBysoon" Heartbeat
    function KERNEL_SYNC_DISPATCHER():
        while true:
            # Wait for a hardware interrupt from a Node
            event = WAIT_FOR_INTERRUPT()
            
            if event.type == "OBJECT_UPDATE":
                # Identify the YAML object being changed
                target_obj = Registry.lookup(event.object_id)
                
                # Validate the new YAML schema against the blueprint
                if VALIDATE_SCHEMA(event.payload, target_obj.blueprint):
                    # Atomic swap of the object in shared memory
                    ATOMIC_COMMIT(target_obj.memory_address, event.payload)
                    
                    # Notify all subscribers via direct kernel signal
                    for subscriber in target_obj.subscribers:
                        SIGNAL_THREAD(subscriber.thread_id, "STATE_CHANGED")
    
    

    2. The Client-Side Implementation

    This is how a robotic "Gripper" module would interact with the "Arm" module's state.

    # User Space: Robotic Gripper Node
    import MBysoon_Client as mb
    
    def ON_ARM_MOVE(new_state_yaml):
        # Logic to adjust gripper pressure based on arm speed
        speed = new_state_yaml['velocity']['vector_sum']
        if speed > 5.0:
            ACTUATE_GRIP_STRENGTH("HIGH")
    
    # Initialization
    # 1. Map the remote "Arm_Status" object to local memory
    arm_status = mb.subscribe("industrial_cluster/arm_01/status.yaml")
    
    # 2. Assign the callback for notifications
    arm_status.on_update(ON_ARM_MOVE)
    
    # 3. Execution loop
    while system_running:
        # The MBysoon kernel handles the heavy lifting
        # This thread sleeps until the Notifier wakes it up
        mb.AWAIT_NOTIFICATION()
    
    

    Why "YAML"?

    While binary formats are faster, Fast-MBysoon uses a pre-compiled "YAML-Binary" hybrid. This allows engineers to write human-readable configurations for complex robotic behaviors that are "baked" into the microkernel at boot time, combining developer-friendly syntax with machine-speed execution.