Programming Leftovers

-
C: sigprocmask Function Usage
You may have heard about socket programming in C. One of the socket functions is the “sigprocmask” function. This function has been usually utilized in the code to inspect or alter the signal mask of the calling function. The signal mask is a term used for a group of signals that are presently blocked and cannot be conveyed for the calling function. Such kind of signal is known as “Blocked Signals.” You can say that a process can still receive the blocked signals, but it will not be used until they are unblocked and released, i.e., raised. Until then, it will be pending. Therefore, within today’s guide, we will be discussing the use of the sigprocmask function in C programming. Let’s have a start.
After the Ubuntu 20.04 successful login, you need to launch the shell of the Ubuntu 20.04 system first after the login. So, try out the “Ctrl+Alt+T” shortcut simply on the desktop screen. It will launch the terminal shell for you in some seconds. Make sure to update your system using the apt package of your system. After that, you have to execute the “touch” instruction along with the file name you want to generate, i.e., to create the C file via the shell. This newly created file can be found in the “home” folder of your system’s file explorer. You can try opening it with the “text” editor to create code in it. Another way to open it in the shell is using the “GNU Nano” editor using the “nano” keyword with a file name as demonstrated beneath.
-
C: sigaction function usage
A sigaction() is a function that allows to call/observe or examine a specific action associated with a particular signal. It is thought to consider a signal and sigaction function on the same page. But in reality, it has not occurred. The signal() function does not block other signals when the current handler’s execution is under process. At the same time, the sigaction function can block other signals until the current handler has returned.
-
delegation of authority from the systems programming perspective – Ariadne's Space
As I have been griping on Twitter lately, about how I dislike the design of modern UNIX operating systems, an interesting conversation about object capabilities came up with the author of musl-libc. This conversation caused me to realize that systems programmers don’t really have a understanding of object capabilities, and how they can be used to achieve environments that are aligned with the principle of least authority.
In general, I think this is largely because we’ve failed to effectively disseminate the research output in this area to the software engineering community at large — for various reasons, people complete their distributed systems degrees and go to work in decentralized finance, as unfortunately, Coinbase pays better. An unfortunate reality is that the security properties guaranteed by Web3 platforms are built around object capabilities, by necessity – the output of a transaction, which then gets consumed for another transaction, is a form of object capability. And while Web3 is largely a planet-incinerating Ponzi scheme run by grifters, object capabilities are a useful concept for building practical security into real-world systems.
Most literature on this topic try to describe these concepts in the framing of, say, driving a car: by default, nobody has permission to drive a given car, so it is compliant with the principle of least authority, meanwhile the car’s key can interface with the ignition, and allow the car to be driven. In this example, the car’s key is an object capability: it is an opaque object, that can be used to acquire the right to drive the car. Afterwards, they usually go on to describe the various aspects of their system without actually discussing why anybody would want this.
-
Pip Install: Install and Remove Python Packages
-
A dog-cat-horse-turtle problem
Sometimes the text-processing problems posted on Stack Exchange have so many solutions, it's hard to decide which is best.
A problem like that was posted in the "Unix & Linux" section in December 2021...
-
- Login or register to post comments
Printer-friendly version
- 1266 reads
PDF version
More in Tux Machines
- Highlights
- Front Page
- Latest Headlines
- Archive
- Recent comments
- All-Time Popular Stories
- Hot Topics
- New Members
today's howtos
| Hackers getting married
We had several of our old-time friends from the GNU Project, and some guests with young children still unused to such an international context who soon enough learned to enjoy the sound of different languages and the happy chaos of people meeting for the first time, some more traditional if not formal, others fun and weird.
|
Fedora Releases and Red Hat/IBM Puff Pieces
| These two Linux desktops are the simplest picks for new users
Let's face it, any time you come across articles that offer advice on choosing the right Linux distribution, they tend to get bogged down in a lot of technical advice that rarely (if ever) applies to those who've never experienced Linux. They'll speak of things like rolling releases, package managers, kernels, open-source licensing, and other features and ideologies that not only have little bearing on those new to Linux and open-source technology but mire the decision in unnecessary complications.
I want to take a very different approach, one that should make the process quite simple for anyone looking to dive into the world of desktop Linux for the first time. I'm going to shrug off the usual advice and aim straight for the heart of the matter. What exactly is that matter?
|
Recent comments
11 hours 52 min ago
14 hours 11 min ago
14 hours 17 min ago
1 day 1 hour ago
1 day 8 hours ago
1 day 11 hours ago
1 day 19 hours ago
1 day 19 hours ago
1 day 23 hours ago
2 days 27 min ago