Language Selection

English French German Italian Portuguese Spanish

How System Calls Work in Linux?

Filed under
HowTos

Every GNU/Linux programmer here reading this article must have used system calls to code their programs. GNU/Linux programming is incomplete without system calls. System calls are initiated by software interrupts. Before we delve into that, however, let’s define system calls.

A system call is the mechanism used by an application program to request service from the operating system, or more specifically, the operating system kernel.

Modern processors execute instructions in different privilege states. In system, where just two levels are defined (as in i386), these states are known as user mode and supervisor mode. These privilege levels are defined so that an operating system restrict can control the operations performed by the program. Controlling is done for reasons of security and stability. The kernel of the operating system should always run in privilege mode since it needs to do some operations. Such operations include accessing hardware devices, enabling and disabling interrupts, changing privileged processor state, and accessing memory management units.

Now with this setup of an operating system (with two modes of execution (considering only i386 architecture only)), we need a mechanism to transfer control safety from lesser privileged modes to higher privileged modes.

Full Story.

More in Tux Machines

KDE: Simple by Default, Powerful When Needed

KDE (back when it was still the name of the desktop environment) and our applications historically stood for powerful features and great flexibility and customizeability. This is what our users love about our software, this is why they choose Plasma and KDE software instead of one of the other Free desktop offerings. And it is also something they would fight tooth and nail for if we wanted to take it away (as many a KDE maintainer who dared to remove a feature he thought was unnecessary can tell). Read more

BitTorrent Bleep alpha released for Android

As an alpha it still has some issues “As with any Alpha, there are some known issues and bugs to work out. Android users will need to set the app to “Wi-Fi Only” unless you have an unlimited data plan; this is only for the time being while we iron out and issue related to battery and data-plan. And while you can move a username from desktop to mobile, Bleep does not yet support moving an existing account from Android to the desktop. And while you can receive messages on multiple devices; messages sent will not be seen across all devices. As with our previous release, communications happen only when all parties are online – you cannot send offline photos or group chats asynchronously.” Read more

During Akademy 2014

This year there were lot of fast track (10 minutes) talks on different areas around KDE. All of them were quite interesting, some of them are: Bruno Coudoin talked about how and why GCompris moved to QtQuick with the support of KDE. What all challenges project faced while moving from GTK to Qt. Daniel Vrátil talked about his one year journey with Akonadi Martin Gräßlin gave an overview of current state of Kwin in adding Wayland support and future plans. Kevin Ottens talked about KDE craftsmen where analysis was on the way we handle our software production, how can we make our software even better. Kai Uwe Broulik talked about current status of Qt port on Android and iOS. Currently, 3 iOS apps in Apple store and 8 Android apps in Google play since December 2013. Read more

Leftovers: Software