The Linux Application Server

The Book

The book …

What You Need to Know About C

You may want to read this in tandem with our article Compiling and Running C and C++

C was designed in the early 1970s at Bell Labs for the purpose of writing software for UNIX, including its kernel. It is known for being low level, very close to the hardware. Anything you can do on a computer, you can do in C! It is also a rather simple language, in that once you learn its rules, you can pretty much figure out what any piece of software written in C does. It is not going to do anything funny behind your back, as many modern languages do.

Compiling and Running C and C++

You’ll be coming across a lot of software written in C and C++, and it’s useful to have a primer on how to build and run it. This is true even if you’re not writing your own software in these languages. There are various build systems for these languages, and we’ll need to take a quick look at all of them.

Invoking gcc or clang manually.

For projects with a single source file, or perhaps a small number of them, it is fine to invoke the compiler manually. If you want to play with this, see the article What You Need To Know About C and creating the three files test.h, test.c, and main.c in an empty directory.

systemd Services: An Introduction

Nearly every modern Linux distribution uses systemd, which … pretty much manages the system. It has an enormous wealth of features, many of which we will describe, but we will begin with its service manager.

A systemd service is basically a unique application that can be controlled separately and has its own resources. That can include things that run in the background on the system, such as NFS drive shares, printing services, or DBUS. It can also include the things you actually want the system to do: Your web server, database server, and your own application server.