LC-3 Architecture

In the previous post we talked about what emulators and virtual machines are, when they appeared, what is their current status and use.

What I want in this set of articles is to explain in a simple and summarized way how a computer works and the best way to do it is to create one, I don't mean physically, but rather an emulator. I will explain and write some code throughout the article. To implement the emulator I'll use Rust and the architecture we are going to use is from LC-3, since implementing an emulator for x86 is extremely laborious, even for an old system.

Simulation, Emulation, and Virtualization

The word emulation appeared very close to the computer itself, since early engineers tried to run programs from other systems on their computers. As there were multiple platforms and architectures, everything was very incompatible, given the difference. Unfortunately, at the time, as the hardware was very slow and limited in its capacity, emulation was either impossible or very limited.

QEMU on macOS 11 Big Sur

Apple releases a major version of their OS for Macs each year, but Big Sur was one of the more significant releases in the last decade. Big changes always break things, and this was no exception.

SASS - Convert px to rem

When we speak about significant CSS codebase, we automatically think of SASS or any other CSS pre-processor like stylus or LESS, to name a few. Using this type of tool is useful not only to share styles across multiple components, nesting, variables but also to allow functions and mixins for more complex logic.



Copyright © gil0mendes 2019-2021