This is the presentation I gave on Linux kernel modules at the Linux Meetup in Austin, TX, on 2/5/2015.
http://www.meetup.com/linux-85/events/185946802/
Code referred to in the presentation: https://github.com/ereyes01/kernel-mod-prez
Some basic knowledges required for beginners in writing linux kernel module - with a description of linux source tree, so that the idea of where and how develops. The working of insmod and rmmod commands are described also.
linux device drivers: Role of Device Drivers, Splitting The Kernel, Classes of
Devices and Modules, Security Issues, Version Numbering, Building and Running Modules
Kernel Modules Vs. Applications, Compiling and Loading, Kernel Symbol Table,
Preliminaries, Interaction and Shutdown, Module Parameters, Doing It in User Space.
This is a short introduction to some basic concepts about device drivers on Linux, and does not get into the nuts and bolts of it; uses a serial driver as an example, and how does it fit within the TTY layer. Includes code walk-through.
This presentation gives introduction to kernel module programming with sample kernel module.
It helps to start with kernel programming and how it can be used to develop various types of device drivers.
Part 02 Linux Kernel Module ProgrammingTushar B Kute
Presentation on "Linux Kernel Module Programming".
Presented at Army Institute of Technology, Pune for FDP on "Basics of Linux Kernel Programming". by Tushar B Kute (http://tusharkute.com).
This is the presentation I gave on Linux kernel modules at the Linux Meetup in Austin, TX, on 2/5/2015.
http://www.meetup.com/linux-85/events/185946802/
Code referred to in the presentation: https://github.com/ereyes01/kernel-mod-prez
Some basic knowledges required for beginners in writing linux kernel module - with a description of linux source tree, so that the idea of where and how develops. The working of insmod and rmmod commands are described also.
linux device drivers: Role of Device Drivers, Splitting The Kernel, Classes of
Devices and Modules, Security Issues, Version Numbering, Building and Running Modules
Kernel Modules Vs. Applications, Compiling and Loading, Kernel Symbol Table,
Preliminaries, Interaction and Shutdown, Module Parameters, Doing It in User Space.
This is a short introduction to some basic concepts about device drivers on Linux, and does not get into the nuts and bolts of it; uses a serial driver as an example, and how does it fit within the TTY layer. Includes code walk-through.
This presentation gives introduction to kernel module programming with sample kernel module.
It helps to start with kernel programming and how it can be used to develop various types of device drivers.
Part 02 Linux Kernel Module ProgrammingTushar B Kute
Presentation on "Linux Kernel Module Programming".
Presented at Army Institute of Technology, Pune for FDP on "Basics of Linux Kernel Programming". by Tushar B Kute (http://tusharkute.com).
This Presentation Speaks about Compiling Linux Kernel from source, How Device Drivers are implemented in Linux,Udev,Loading and Unloading of Kernel modules.
Shreyas MM
www.shreyasmm.com
American Megatrends (AMI) Embedded software company focused on Embedded OS porting and Validation Services for the “Platform bring-up” and this moment we are aggressively pushing our services to enable customers with our Embedded OS Porting and Validation Services for the various Embedded-OS-es they need support for.
I would appreciate if you could help us accelerate our services by referring some of your requirement which will need our services.
Our experience in the Embedded Devices :
(1) MeeGo, Chrome OS, WinCE 6.0 & Embedded Linux, Home Server Porting and Validation Services for “Intel’s PineView Platform”.
(2) Windows* 7 Embedded Standard, Windows* XP Embedded, Meego, Android, Chromium Porting and Validation Services for “Intel’s Cougar Point Platform”.
(3) Driver Development for USB, Ethernet, PCI, PCI-X, RAID, Modem & Network Interface Cards
(4) UEFI compliant BIOS/Boot loader for the ARM Platform
(5) Linux and Windows Driver (2000, XP, Vista)Development Services
(6) Firmware Development Services (ARM, MIPS, TI OMAP, Xilinx…………….)
(7) Android Porting and Application Development for Mobile & Embedded Devices
(8) PC and Server Diagnostics for UEFI and Legacy environment (http://www.amiindia.co.in/diagnostic.html )
(9) Embedded XP (XPe) Development Services
(10) WinCE / Windows Mobile Embedded & Applications Software Development Services
Services specific to the computing domain:
(2) Pre-boot Applications
(3) Option ROM Customisation & Development
(4) IPMI, Service Processor and Remote Management (http://www.ami.com/serviceprocessors/)
(5) Extense on Custom Drivers in Windows and Linux.
American Megatrends
Email.: sunilp@amiindia.co.in
Mobile.: +91 96000 10071
Tel.: +91 44 66540922 Extn: 112
Overview of the architecture of the Linux kernel, based on "Anatomy of the Linux Kernel" by M. Tim Jones (IBM Developerworks), http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
Part 01 Linux Kernel Compilation (Ubuntu)Tushar B Kute
Presentation on "Linux Kernel Compilation" (Ubuntu based).
Presented at Army Institute of Technology, Pune for FDP on "Basics of Linux Kernel Programming". by Tushar B Kute (http://tusharkute.com).
This Presentation Speaks about Compiling Linux Kernel from source, How Device Drivers are implemented in Linux,Udev,Loading and Unloading of Kernel modules.
Shreyas MM
www.shreyasmm.com
American Megatrends (AMI) Embedded software company focused on Embedded OS porting and Validation Services for the “Platform bring-up” and this moment we are aggressively pushing our services to enable customers with our Embedded OS Porting and Validation Services for the various Embedded-OS-es they need support for.
I would appreciate if you could help us accelerate our services by referring some of your requirement which will need our services.
Our experience in the Embedded Devices :
(1) MeeGo, Chrome OS, WinCE 6.0 & Embedded Linux, Home Server Porting and Validation Services for “Intel’s PineView Platform”.
(2) Windows* 7 Embedded Standard, Windows* XP Embedded, Meego, Android, Chromium Porting and Validation Services for “Intel’s Cougar Point Platform”.
(3) Driver Development for USB, Ethernet, PCI, PCI-X, RAID, Modem & Network Interface Cards
(4) UEFI compliant BIOS/Boot loader for the ARM Platform
(5) Linux and Windows Driver (2000, XP, Vista)Development Services
(6) Firmware Development Services (ARM, MIPS, TI OMAP, Xilinx…………….)
(7) Android Porting and Application Development for Mobile & Embedded Devices
(8) PC and Server Diagnostics for UEFI and Legacy environment (http://www.amiindia.co.in/diagnostic.html )
(9) Embedded XP (XPe) Development Services
(10) WinCE / Windows Mobile Embedded & Applications Software Development Services
Services specific to the computing domain:
(2) Pre-boot Applications
(3) Option ROM Customisation & Development
(4) IPMI, Service Processor and Remote Management (http://www.ami.com/serviceprocessors/)
(5) Extense on Custom Drivers in Windows and Linux.
American Megatrends
Email.: sunilp@amiindia.co.in
Mobile.: +91 96000 10071
Tel.: +91 44 66540922 Extn: 112
Overview of the architecture of the Linux kernel, based on "Anatomy of the Linux Kernel" by M. Tim Jones (IBM Developerworks), http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
Part 01 Linux Kernel Compilation (Ubuntu)Tushar B Kute
Presentation on "Linux Kernel Compilation" (Ubuntu based).
Presented at Army Institute of Technology, Pune for FDP on "Basics of Linux Kernel Programming". by Tushar B Kute (http://tusharkute.com).
Self Contained Encrypted Voice solution for business and government. Central server + iphone and android app, high level of encrypted voice and text message capability that resides completely onsite, works anywhere from one enabled comms device to another on the same network
Brief introduction of android telephony framework, detailed analyze of RIL (radio interface layer), and some examples for doing telephony thing in a low layer
This is a project dealing with securing images over a network.
Image is a delicate piece of information shared between clients across the world.Cryptography plays a huge role during secure connections.Applying simple Gaussian elimination to achieve highly secured image encryption decryption technique is a interesting challenge.
Android is becoming very popular these and mostly everyone is crazy about it. So today with the help of a simple diagram I am going to explain the architecture of Android. I think that there is no need to tell you all about the "Android" as everyone who knows about it should also know this simple definition of Android:
During the CXL Forum at OCP Global Summit, MemVerge software architect Steve Scargall defines the CXL software stack and where the development is being done.
Having good knowledge on C, C++, Linux device driver,linux kernel programming and working for reputed semiconductor client
Specialties: Linux Device Driver, Linux Kernel programming, C, Data structure, Operating system
It is a simple powerpoint presentation on Linux Operating System of its brief and simplified introduction of this Operating System.
This is based on Ubuntu version of Linux.
A brief presentation on Microsoft's Graphics platform - DirectX. The presentation explains the need for DirectX and how it came into being. It explains the Architecture in detail including the components which make up DirectX. The presentation then gives a short version history of DirectX and makes some points on the latest version, known as DirectX 12.
Design and Development of ARM9 Based Embedded Web ServerIJERA Editor
This paper describes the design of embedded web server based on ARM9 processor and Linux platform. It
analyses hardware configuration and software implementation for monitoring and controlling systems or
devices. User can monitor and control temperature and smoke information. It consists of application program
written in „C‟ for accessing data through the serial port and updating the web page, porting of Linux 2.6.3x
Kernel with application program on ARM9 board and booting it from the RAM.
Data Acquisition and Control System for Real Time Applicationsijsrd.com
This paper proposes an Embedded Ethernet which is nothing but a processor that is capable to communicate with the network. This helps in data acquisition and status monitoring with the help of standard LAN. Currently device with processor is widely used in industrial field. The Embedded Ethernet provides web access to distributed measurement/control systems and provides optimization for instrumentation, educational laboratories and home automation. However, a large number of devices don't have the network interface and the data from them cannot be transmitted in network. A design of ARM Processor based Embedded Ethernet interface is presented. In this design, data can be transmitted transparently through Ethernet interface unit to remote end desktop computer. By typing the IP address of LAN on the ARM9 board, the user gets sensor values on the PC screen at remote station. This provides the status of the devices at remote field. The user can also control the devices interfaced to the ARM9 Board by pressing the button displayed on the GUI of the remote Desktop PC.
The ultimate guide to software updates on embedded linux devicesMender.io
Slides from my talk at NDC Techtown 2019.
Abstract:
Software updates has for a long time been a mess, consisting of “homegrown” solutions specific to a certain project and there was very little re-usage between projects and very little collaboration in our community to solve these complex problems. Luckily for us that time is over and the community around this topic has grown over last couple years and still is growing as the demand increases with the growth of IoT and OTA firmware updates (which introduces even more complexity).
There are now well established open-source solutions that have been “battle tested” that we can collaborate on to make the complexity of software updates manageable. We are heading for a time where a quality Board Support Package should provide an software update implementation because it really should be solved at this level instead of handing this over to application developers which have limited knowledge of low lever architecture on a embedded device.
In this talk Mirza will present some of the challenges of doing software updates on embedded system. He will also present the available open-source projects that can be used to solving these challenges. Projects such as mender.io, SWupdate, RAUC and more.
4. Network
•** Netlink **
Netlink is a socket family used for IPC between the kernel and user
space processes, as well as between user processes (e.g. Unix domain
sockets) or a mixture of both types.
Netlink is a flexible, robust, wire-format communications channel
typically used for kernel to user communication although it can also be
used for user to user and kernel to kernel communications.
5. Network (Contd)
•** Network Scheduler **
A network scheduler, also called packet scheduler, is an
arbiter program that manages the sequence of network
packets in the transmit and receive queues of the network
interface controller, which is a circular data buffer. There are
several network schedulers available for the different
operating system kernels, that implement many of the existing
network scheduling algorithms.
6. Network (Contd)
•** Netfilter **
Netfilter is a framework inside the Linux kernel which offers flexibility
for various networking-related operations to be implemented in form
of customized handlers. Netfilter offers various options for packet
filtering, network address translation, and port translation. These
functions provide the functionality required for directing packets
through a network, as well as for providing ability to prohibit packets
from reaching sensitive locations within a computer network.
7. Network (Contd)
•** Nftables **
nftables is the project that aims to replace the existing
{ip,ip6,arp,eb}tables framework. Basically, this project
provides a new packet filtering framework .
8. Sound
•**Advanced Linux Sound Architecture**
(ALSA) is a software framework and part of the Linux kernel that
provides an application programming interface (API) for sound card
device drivers. Some of the goals of the ALSA project at its inception
were automatic configuration of sound-card hardware and graceful
handling of multiple sound devices in a system, goals which it has
largely met. ALSA is released under the GNU General Public License
(GPL) and the GNU Lesser General Public License (LGPL).
9. Graphics
•**Direct rendering manager**
The Direct Rendering Manager (DRM) is a subsystem of the Linux
kernel responsible for interfacing with GPUs of modern video cards.
DRM exposes an API that user space programs can use to send
commands and data to the GPU, and perform operations like
configuring the mode setting of the display.
The Direct Rendering Manager can be compiled into the Linux kernel or
loaded via the standard module interface.
10. Graphics (Contd)
•** Graphic Execution Manager**
The Graphics Execution Manager (GEM) is a computer software system
developed by Intel to do memory management for device drivers for
graphics chipsets. GEM is part of the Direct Rendering Manager.
GEM manages graphics memory (which means dealing with Non-
Uniform Memory Access (NUMA) on modern graphics chipsets) and
controls the execution context for graphics-related code
11. Input
•**evdev**
In computing, evdev (for event device) is a component of the Linux
kernel for handling input (from keyboards, mice, joysticks, etc.) and a
closely related input driver for both the X.Org Server and Wayland
compositors.
12. Finally
Contact Me :
Facebook :
https://www.facebook.com/elmagic.alaa.395