AlphaGo open source implementation by Ciro Santilli 35 Updated +Created
TLB replacement policy by Ciro Santilli 35 Updated +Created
When TLB is filled up, older addresses are overwritten. Just like CPU cache, the replacement policy is a potentially complex operation, but a simple and reasonable heuristic is to remove the least recently used entry (LRU).
With LRU, starting from state:
  valid  linear  physical
  -----  ------  --------
> 1      00003   00005
  1      00007   00009
  1      00009   00001
  1      0000B   00003
adding 0000D -> 0000A would give:
  valid  linear  physical
  -----  ------  --------
  1      0000D   0000A
> 1      00007   00009
  1      00009   00001
  1      0000B   00003
Kernel vs process memory layout by Ciro Santilli 35 Updated +Created
The Linux Kernel reserves two zones of virtual memory:
  • one for kernel memory
  • one for programs
The exact split is configured by CONFIG_VMSPLIT_.... By default:
  • on 32-bit:
    • the bottom 3/4 is program space: 00000000 to BFFFFFFF
    • the top 1/4 is kernel memory: C0000000 to FFFFFFFF, like this:
      ------------------ FFFFFFFF
      Kernel
      ------------------ C0000000
      ------------------ BFFFFFFF
      
      
      Process
      
      
      ------------------ 00000000
  • on 64-bit: currently only 48-bits are actually used, split into two equally sized disjoint spaces. The Linux kernel just assigns:
    • the bottom part to processes 00000000 00000000 to 008FFFFF FFFFFFFF
    • the top part to the kernel: FFFF8000 00000000 to FFFFFFFF FFFFFFFF, like this:
      ------------------ FFFFFFFF
      Kernel
      ------------------ C0000000
      
      
      (not addressable)
      
      
      ------------------ BFFFFFFF
      Process
      ------------------ 00000000
Kernel memory is also paged.
Identity mapping by Ciro Santilli 35 Updated +Created
FFFFF 000 points to its own physical address FFFFF 000. This kind of translation is called an "identity mapping", and can be very convenient for OS-level debugging.
Why not a balanced tree by Ciro Santilli 35 Updated +Created
Learned readers will ask themselves: so why use an unbalanced tree instead of balanced one, which offers better asymptotic times en.wikipedia.org/wiki/Self-balancing_binary_search_tree?
Likely:
  • the maximum number of entries is small enough due to memory size limitations, that we won't waste too much memory with the root directory entry
  • different entries would have different levels, and thus different access times
  • tree rotations would likely make caching more complicated
Electromagnetic radiation by Ciro Santilli 35 Updated +Created
Ubuntu release by Ciro Santilli 35 Updated +Created
Pros and cons of superconducting qubits by Ciro Santilli 35 Updated +Created
Closure table by Ciro Santilli 35 Updated +Created
INSERT (SQL) by Ciro Santilli 35 Updated +Created
Microsoft SQL Server by Ciro Santilli 35 Updated +Created
Giant magnetoresistance by Ciro Santilli 35 Updated +Created
Video 1.
Introduction to Spintronics by Aurélien Manchon (2020) giant magnetoresistance section
. Source.
Describes how giant magnetoresistance was used in magnetoresistive disk heads in the 90's providing a huge improvement in disk storage density over the pre-existing inductive sensors
Faster-than-light by Ciro Santilli 35 Updated +Created
In special relativity, it is impossible to travel faster than light.
One argument of why, is that if you could travel faster than light, then you could send a message to a point in Spacetime that is spacelike-separated from the present. But then since the target is spacelike separated, there exists a inertial frame of reference in which that event happens before the present, which would be hard to make sense of.
Even worse, it would be possible to travel back in time:
Chemical bond by Ciro Santilli 35 Updated +Created
RSA vs Diffie-Hellman by Ciro Santilli 35 Updated +Created
As its name indicates, Diffie-Hellman key exchange is a key exchange algorithm. TODO verify: this means that in order to transmit a message, both parties must first send data to one another to reach a shared secret key. For RSA on the other hand, you can just take the public key of the other party and send encrypted data to them, the receiver does not need to send you any data at any point.
Principal quantum number by Ciro Santilli 35 Updated +Created
Determines energy. This comes out directly from the resolution of the Schrödinger equation solution for the hydrogen atom where we have to set some arbitrary values of energy by separation of variables just like we have to set some arbitrary numbers when solving partial differential equations with the Fourier series. We then just happen to see that only certain integer values are possible to satisfy the equations.
Prokaryotic small ribosome subunit by Ciro Santilli 35 Updated +Created
Mars by Ciro Santilli 35 Updated +Created

Unlisted articles are being shown, click here to show only listed articles.