Skip to content

Gaspard COURCHINOUX's website

NEW: My programming language

Hello! I am Gaspard COURCHINOUX, I am 24 years old. I am an IT specialist with generalist skills:

  • IT infrastructure maintenance
  • Backups and digital hygiene
  • Information systems audits, etc.

I offer my services on my company's website.

I am also a programmer specializing in low-level computing.

What is low-level computing?

Here is an example.

If you can see this website, it means that—from the highest level of abstraction to the lowest—and assuming you use Windows NT (7, 10 or 11):

  • Firefox parsed the HTML file and displayed it on your screen.
  • The HTTP request was accepted by the logic in Firefox, Chrome, etc.

--------------------- Beginning of low-level programming ---------------------

  • The C function recv was called by Firefox, Chrome, etc., and the HTTP stream was decrypted.
  • A TLS HANDSHAKE took place (yes, the connection is encrypted, so the TLS protocol runs on top of the TCP connection).
  • Firefox connected to courchinoux.org using socket() and connect() from the WINSOCK API.

This is highly simplified, almost crudely so. But it shows that it is complicated.

The Windows network stack must manage the reliable TCP stream. This involves managing TIMERS and STATES for the various SOCKETS/PORTS.

That is what low-level programming is about: making sure that the most ordinary things in digital life can be displayed correctly on the screen.

It is very theoretical, but in this field we ask how a completely standard PC actually works.

And it is not simple.

I have been interested in this for a very long time. I am passionate about computers and how they work internally.

To properly explore how the machine of the 21st century works, you need to:

  • Research compilers, from grammar parsing to code generation. Why are they so buggy? Can I design one for my own language?
  • Explore historical instruction sets (VAX, SPARC, etc.) as well as current ones (x86, ARM).
  • Explore physical memory management (Buddy Alloc, Windows NT PFN).
  • Study connectivity: protocols currently in production and older ones such as DECnet.
  • Keep searching for documentation sources. I own a collection of interesting books about OS and compiler implementations.
  • Read a variety of C code. The style of the Windows Research Kernel's C code has little in common with FreeBSD's.
  • Explore virtualization with VT-x and the translation of code to a completely different architecture.

I designed a small x86 OS for myself: GaspardOS.

I managed to build some interesting things: my physical memory manager is fairly reliable.

And so is my scheduler (a simple Round-Robin scheduler—too simple...).

It even has a userland...

I am also extremely interested in programming languages. I have designed small compilers.

I have also created less “abstract” software, such as backup software. Written in C, of course.

It still draws on my compiler expertise: the configuration file is handled by a BISON parser.

Nobody is perfect :)

I also enjoy mechanical watchmaking and clockmaking, particularly somewhat unusual French clocks such as Brillié clocks.

My dream watch would probably be a classic three-hand Breguet. It is timeless!

I also really like Mercedes cars: give me a 190 and I would be a happy man!

I am very curious about life in general. I enjoy talking with passionate people.

I have a collection of rare books about the history of horology, including the two famous books by George Daniels, the British watchmaker.

I also own fashion books from the 1970s.

If you have any questions or comments, you can contact me by email.

For audit or quotation requests, calling me is ideal: more information here.

Contact me

EMAIL: contact@gaspardos.com