Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Linux Kernel Release 2.6
1. Linux Kernel
Release 2.6
By :- Debajit Dutta, Roll No: 33401217069, BCA 6th semester,
Siliguri Institute of Technology
2. Confidential Customized for Lorem Ipsum LLC Version 1.0
Topics to Discuss
Overview
#2.6 was epic
The embedded
computing universe
Characteristics of
Embedded Systems
How Linux 2.6 Satisfies the
Requirements
Kernel Pre-emption
An Efficient Scheduler
New Synchronization
Primitives
Linux kernel evolution
Bibliography and
further reads
3. Overview
2.6.X ran 2003->2011, and happened during a time of massive change in tech in general.
It saw the addition of VM hypervisors, the standardization of Linux in general, and became widespread during
this time, with various Linux distributions and companies stepping up with even more kernel extensibility
products (thinking kSplice here, although there were others).
In today’s presentation we will see how Linux 2.6 has aided the Embedded Computing.
“Necessity is the mother of invention”
#2.6 was epic
4. The embedded computing universe
from tiny portable devices-
-such as wristwatch
cameras--
they require required
massive parallel
processors, memory and
computing power.
Linux 2.6 as a
Solution
5. Characteristics of Embedded Systems
need to meet timing constraints
reliably.
embedded systems have access to
far fewer resources than does a
normal PC.
a price difference of as little as $2
or $3 can make or break a
consumer device produced on a
large scale
1
2
3
RESOURCES
6. How Linux 2.6 Satisfies the Requirements
“Although Linux 2.6 is not yet a true real-time operating system, it does contain improvements that
make it a worthier platform than previous kernels when responsiveness is desirable.”
preemption
points in the
kernel
an efficient
scheduler
improved
synchronization
7. Kernel Pre-emption
As of kernel 2.6, the kernel is now preemptible
Linux 2.6 avoids unreasonable delays in system calls by
periodically testing a preemption point.
so other applications can continue to run even when something
low-level and complicated is going on in the background.
8. An Efficient Scheduler
The scheduler in
Linux 2.6 no
longer scans all
tasks every time
current queue.
When the task is
running, it is
given a time
slice
expired queue.
priority.
Enhanced
Efficiency
O(1) scheduler.
9. New Synchronization Primitives
“Applications involving
the use of shared
resources, such as
shared memory or
shared devices, have
to be developed
carefully to avoid race
conditions.” Mutex
.
Fast User-
Space
Mutexes
(Futex)
As a result
“It also supports
setting priorities to
allow applications
or threads of higher
priority to have first
access to the
contested
resource.”