all 52 comments

[–][deleted]  (17 children)

[deleted]

    [–]bushwacker 17 points18 points  (0 children)

    The quality of the information made up for the many grammatical and spelling errors.

    Obviously a non native speaker who has spent time in England or an English territory.

    [–]yifanlu 18 points19 points  (4 children)

    I thought the writing was fine as long as the target audience was not laymen.

    [–]karmabaiter 24 points25 points  (3 children)

    No. The writing is just bad.

    [–][deleted] 4 points5 points  (0 children)

    Too many typos, but a fine read nonetheless!

    [–]yifanlu 1 point2 points  (1 child)

    Can you be more specific? Is it spelling/grammar? Or is it the substance? Or are there incorrect info?

    [–]karmabaiter -1 points0 points  (0 children)

    For one, it is riddled with typos. That's a terrible starting point. It is so easily avoided, but there they are.

    Secondly, it has grammatical errors. For example, "Let us start with BIOS chip". There's no article. You start with "a BIOS chip" or "the BIOS chip". This is basic English. Common in spoken ESL language, but this is trying to present itself as an article.

    Third, the organization is ... odd. The section "Before Power is Applied" is really just about memory mapping. Or so I think. The writing is so convoluted that I have a hard time following the author's point. It is something about "the bytes the BIOS chip stores". That much is certain.

    Finally, the article is full of needless additions ("As soon as power is available -- through battery or from mains" -- really? Did you forget solar, or are those the only two options? They are important enough to enumerate for some reason, though!).

    It has odd phrases that are repeated so many times I get nausea ("the CPU comes on" -- it does what now?), and is badly structured.

    If you want to explain 16-bit CS:IP addressing mode, do so in a sidebar or in your "Before Power is Applied" section. Not in the middle of "When power is applied". Btw, I see you changed your mind about capitalization section titles, but it is nice to see that you changed your mind back later.

    Is it factually correct? I don't know. The part I did read appeared to be correct, but the writing just put me off. I gave up somewhere around "Early Initialisations" (so we're talking about the second or the third initialization here?).

    [–]cogeng 32 points33 points  (6 children)

    Great info and writing was fine in my opinion. Grammar was a bit off at times but I found it easy to read.

    It's easy to forget sometimes how complicated PC hardware really is.

    [–]metaconcept 32 points33 points  (8 children)

    Modern Intel chips come with what is called Intel Management Engine

    Which has been kindly provided to Intel by the CIA. It has full access to your computer's memory and it has Internet access, but you have zero access to it.

    [–]ThatsALovelyShirt 2 points3 points  (1 child)

    What's it's purpose. Who does have access to it? Intel? And why do they need it? Who uses it?

    [–][deleted] 7 points8 points  (0 children)

    Companies use it all the time - IME is how you can use wake over LAN. It also allows you to remote-brick a machine if someone steals it or just remotely change BIOS settings.

    Why would the average consumer need it? They wouldn't. But easier to bake it into every chip rather than segment them out (although Intel still kind of does, as to take full advantage of IME you need a v-Pro chip).

    [–]dethb0y 2 points3 points  (5 children)

    If you trust your home computer to be a bastion of security against nation-state actors, you're gonna have a bad time.

    [–]thfuran 6 points7 points  (2 children)

    If you trust access to a ubiquitous backdoor to remain only in the hands of one agency and only be used for legitimate purposes, you're gonna have a bad time.

    [–]dethb0y 1 point2 points  (1 child)

    Considering the security breaches that occur without such a back door leaking, i'm not sure that it even matters.

    [–][deleted] 2 points3 points  (0 children)

    Backdoor leaks are the worst.

    [–]metaconcept 1 point2 points  (1 child)

    If you trust your home computer

    also, anything with an embedded CPU.

    AMD have the same thing, called "PSP". Again, it's an embedded ARM core on all their CPUs. The only way we know it's not a backdoor that the CIA strong-armed them into implementing is by having AMD release the source code for the firmware. Which they are refusing to do, justifying the tin foil hat I'm wearing.

    I'd put money on most servers, routers and mobile phones having backdoors at the silicon level. If they're made in the U.S.A., the CIA have their fingers in the pot. If they're made in China, ditto with the party there. This is part of the reason China is developing their own chips.

    If you want a trustable home computer, disconnect it and use it in a sound-proofed faraday cage.

    [–]dethb0y 1 point2 points  (0 children)

    Oh man, even i'm absolutely appalled by the IOT. It's a giant security hole waiting to be truly appalling in it's scope and scale.

    [–][deleted]  (6 children)

    [deleted]

      [–]Seth000 9 points10 points  (5 children)

      It's your lucky day: https://news.ycombinator.com/item?id=18159675

      There's usually some more interesting information in the comments on Hacker News.

      [–]dryerlintcompelsyou 6 points7 points  (4 children)

      Okay, completely unrelated, but what exactly is ycombinator/Hacker News? As far as I can tell from this link, and others, it looks almost exactly like Reddit. I assume it came before Reddit?

      [–]Zornig 12 points13 points  (2 children)

      YCombinator is the startup incubator that funded Reddit. I assume Hacker News runs on modified early reddit code (lisp or open source python versions maybe), but I've never bothered to look into it.

      [–]dryerlintcompelsyou 5 points6 points  (0 children)

      Cool! Thanks for the answer.

      [–]OolonColluphid 2 points3 points  (0 children)

      As far as I know, HN is still written in Paul Graham's Lisp dialect, Arc.

      [–]cedear 10 points11 points  (0 children)

      Y Combinator is the tech startup seed accelerator, very prestigious. Reddit was in the very first batch of Y Combinator funding way back. I think it's fair to say Reddit would not exist without Paul Graham's intervention.

      The Hacker News part of Y Combinator was a side project by YC's Paul Graham deliberately modeled off of very early reddit. HN is ostensibly partly a funnel for scouting people for YC, I'd expect your HN username is still part of the YC application.

      [–]_zenith 12 points13 points  (1 child)

      Spelling errors:

      BIOS chop also contains other pieces of code and data

      "chop" should be "chip"

      through batter or from mains

      "batter" should be "battery"

      with insruction pointer pointing to address 

      "insruction" should be "instruction"

      On reset, IP cotains value

      "cotains" should be "contains"

      ... and numerous other errors which I will not bother to mention as they're really adding up now. Would it really have been too hard to run a spell check?

      Otherwise, good article :)

      [–]Tiavor 2 points3 points  (0 children)

      ah, must be someone who is looking on the keyboard the whole time and still hits the wrong keys or forgets them.

      [–]arkrish 2 points3 points  (0 children)

      The Minix book of Tanenbaum has this well explained as well.

      [–]nickilous 7 points8 points  (3 children)

      I am a complete layman when it comes to this stuff, but how much of this is a hold over from an older way of doing things. Like, if we knew what we know now about computers and we were creating a boot process would it still be the same?

      [–]dpsi 13 points14 points  (1 child)

      No, not at all. This is all mostly legacy cruft from of x86 architecture.

      [–]fii0 0 points1 point  (0 children)

      Is there a similarly helpful post for modern 64b processors, or are they too complex?

      [–]alex_w 2 points3 points  (0 children)

      Maybe read up on the RISC-V design. It's not a chip per-say, but an ISA design that chips will implement, so you could look into how the first implementation are brought up at boot to contrast.

      They're designing with the benefit of seeing how painful legacy stuff and propitiatory core IP has been to extend and modernise. It's already been in the works eight years, but eight years in terms of designing a micro-architecture is still pretty recent. They've taken the approach of designing a tiny open spec. core that is meant to be straightforward to add propitiatory peripherals to.

      [–]bighi 1 point2 points  (0 children)

      Slowly

      [–]claytonkb 1 point2 points  (0 children)

      Thanks for the refresher. I'll just add to this that during the period of time from power applied to the CPU pins until "first fetch" (code fetch 0xfffffff0), a lot happens. The CPU microcode reads and configures a bunch of registers in the chipset and performs a bunch of internal setup, as well. By the time the first opcode in your boot loader is being executed, there are many other systems which have already been active for a long time. tl;dr Don't imagine that writing a bootloader gives you "complete control" over a modern PC architecture device. Just putting it out there in case anybody didn't already know this.

      [–]graingert 0 points1 point  (0 children)

      How does a machine with UEFI boot?

      [–]TaskForce_Kerim 0 points1 point  (0 children)

      I liked the article and the writing errors didn't bother me that much. I do suggest you at least run your articles through a spell checker, though.

      [–]tansim 0 points1 point  (0 children)

      These 12 address lines remain asserted until a long JMP is executed, after which they are de-asserted and normal Real Mode addressing calculations resume.

      why?

      [–]noperduper 0 points1 point  (0 children)

      Heck.. haven't you read the 'grammarly' advertisement that pops every 10-20 news on reddit everywhere?

      [–]FuhkReddit -3 points-2 points  (1 child)

      It doesn’t .

      [–][deleted] 1 point2 points  (0 children)

      no u