Very interesting and understandable explanations of low level architecture and filesystems, namespaces, userspace, kernel functions, drivers etc.

Highly recommend!

  • massivefailure@lemm.ee
    link
    fedilink
    arrow-up
    0
    arrow-down
    2
    ·
    2 months ago

    The biggest lie of programming these days is just because something is coded in [trendy “secure” language of the day, including Rust] means it’s secure. Bullcrap. It’s how you code things that make it secure or not. You can be proficient enough in C to make programs that are much more secure vs. rust. The fact that everyone makes mistakes and programming is an enormous beast to wrangle with makes things insecure and needs to be monitored and fixed.

    • witx@lemmy.sdf.org
      link
      fedilink
      arrow-up
      2
      ·
      2 months ago

      You’re just partially correct.

      With Rust you get compile time guarantees that your code doesn’t have a specific class of vulnerabilities. Can you do that with C?

    • wargreymon2023@sopuli.xyz
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      2 months ago

      Nope, rust is ideal for kernel code, it really is an improvement.

      Writing kernel in C is like building a house with a hammer on loosen handle, there is too much give and the builder has to tap it a few times before every strike. You could say the builder knows how to build and secure a house, but hes still a human. The loosen handle adds too much difficulty result in errors which would otherwise be avoided.

      • massivefailure@lemm.ee
        link
        fedilink
        arrow-up
        0
        ·
        2 months ago

        Right here, is what I’m talking about. People believe that the code/language itself is inherently safe/secure or unsafe depending on what you choose and that’s wrong. It’s what the programmer does with that code that makes it safe or unsafe, secure or insecure. You can have the best designed and engineered materials on the planet and people are still going to be able to make things that will fall over and cause massive disasters with it. Stop bowing down to freaking Rust as if it’s the damn savior of computing and programming. In the end, it’s just another language and one another step removed from low level computing where it’s easiest to deal with hardware-level and basic functionality systems at a huge cost.

        • boredsquirrel@slrpnk.netOP
          link
          fedilink
          arrow-up
          1
          ·
          2 months ago

          This means there are C functions that are documented and used, but insecure.

          In Rust there is simply an enforcement of certain conventions, which will make code cleaner and prevent a whole class of errors.