working ...
Linux Technology Reference
^
Linux OS
(400+ links)
general
Wikipedia about Linux OS
The GNU Operating System
The Linux Documentation Project
news
Google Linux news
www.linux.com/news
lwn.net/Archives
linux.slashdot.org
linuxjournal.com
linuxtoday.com
more
linux.com
linuxgazette.net
linux-mag.com
linux.org.uk
linux.about.com
lxer.com
eweek.com-linux
osnews.com-linux
communities and forums
linuxquestions.org
linuxforum.com
linux.com/forums
news.gmane.org/gmane.linux.general.linux-users
stackoverflow.com/questions/tagged/linux
unix.stackexchange.com/
commercial
linux @ safari.oreilly.com
Linux in a Nutshell
@ amazon.com
more GNU and Linux links
social bookmarks
del.icio.us/tag/linux
del.icio.us/tag/gnu
digg.com/linux_unix
digg.com/linux_unix/upcoming
stumbleupon.com/tag/linux
reddit.com/r/linux
docs
manpages.ubuntu.com
manpages.debian.net
linuxmanpages.com
man-wiki.net
linuxtopia.org
howtoforge.com
wikicompany.org/fs
ibm.com/developerworks/linux
New to Linux
Linux Technology Center
(IBM)
linux.ittoolbox.com
yolinux.com
howtogeek.com/tag/linux
linux-tutorial.info
Ultimate Linux Guide
www.google.com/linux
linuxlinks.com
linux @ Alexa
loll.sourceforge.net/linux/links
Linux @ dmoz.org
Linux system lectures
system (200+ links)
structure
Boot
GRUB boot loader
GRUB
(home)
Boot Linux faster
Initial RAM disk
(initrd)
overview
boot scripts
Init
init
(sag)
man init
inittab
Managing Linux daemons with init scripts
Linux Init Process / PC Boot Procedure
(YoLinux)
login
Linux kernel
Root filesystem
Overview of the Directory Tree
(sag)
Linux Filesystem Hierarchy
storage
Linux Partition HOWTO
fdisk
parted
gparted.sourceforge.net
File Systems
E2fsprogs
e2fsprogs.sourceforge.net
LVM2
sourceware.org/lvm2
LVM Administrator's Guide
LVM Guide
(linuxconfig.org)
dbench
bonnie
fio
Inspecting disk IO performance with fio
Migrating to ext4
libraries
Program Library HOWTO
glibc
manual
man-pages
libstdc++
POSIX threads
NPTL
Pthreads Tutorial
Pthreads Tutorial
(YoLinux)
POSIX threads explained
(ibm)
futex
books
How To Write Shared Libraries
command interface
linuxtutorial.todolistme.net
Using the Command Line
(Ubuntu)
Put Yourself In Command
(manual)
GNU/Linux command-line tools summary
philosophy
tips
(history,keys)
help
(man)
directing input/output
(pipes)
file-system
system info
system control
(mounting, booting, services)
users
groups
text processing
network
security
archiving files
graphics tools
scheduling
(cron, at)
bash : command shell
Introduction HOW-TO
Bash Reference Manual
Bash Guide for Beginners
Advanced Bash-Scripting Guide
Basics
Beyond the Basics
Commands
Advanced Topics
Reference Cards
Linux Shell Scripting Tutorial
(LSST)
Shell Programming FAQs
stackoverflow.com/questions/tagged/bash
Commands Wiki @ LinuxQuestions.org
File commands
Directory commands
Disk drive commands
Internet and network Commands
System information
Library-related Commands and Files
Programming-related Commands
Coreutils : basic commands
Coreutils manual
file
cp
(man)
df
(man)
du
(man)
ln
(man)
ls
(man)
mkdir
(man)
mv
(man)
rm
(man)
pwd
(man)
text
cat
(man)
join
(man)
head
(man)
tail
(man)
cut
(man)
csplit
(man)
findutils
find
Find Howto
(ubuntu)
stackoverflow.com/questions/tagged/find
xargs
locate
(man)
The Power of the Linux Find Command
(video)
text processing
grep - text serch
grep
(man)
stackoverflow.com/questions/tagged/grep
sed
sed
(man)
see also perl
An A-Z Index of the Linux command line
(ss64.com)
Linux command line reference
(pixelbeat.org)
Unix Toolbox
(cb.vu)
Linux Commands Line
(linuxguide.it)
LinuxCommand.org
Command line Howto
(ubuntu)
other
Alphabetical Directory of Linux Commands
(Linux in a Nutshell, 5th)
Linux Commands
(http://www.perpetualpc.net/)
system services and daemons
www.comptechdoc.org/os/linux/howlinuxworks/linux_hlservices.html
Daemon
An introduction to services, runlevels, and rc.d scripts
more
chkconfig
www.makelinux.net/man/8/X/xinetd
www.makelinux.net/man/8/C/cron
www.makelinux.net/man/8/H/httpd
Linux Internals
distributions
Installation Guides
Fedora
fedoraproject.org
docs.fedoraproject.org
Installation Guide
Desktop User Guide
Managing Software with yum
RHEL
redhat.com/rhel
Red Hat Enterprise Linux Documentation
Installation Guide
Deployment Guide
Cluster Logical Volume Manager
Configuring Online Storage
DM Multipath
Linux Virtual Server
(LVS)
Global Network Block Device
Global File System
Global File System 2
Configuration Example - NFS Over GFS
Introduction to System Administration
System Administration Guide
Reference Guide
Step By Step Guide
Security Guide
Desktop Deployment Guide
historical
Red Hat Linux 9 Manuals
(2003)
Debian
debian.org
debian.org/doc
Debian Reference
Preface
Debian fundamentals
Debian System installation hints
Debian tutorials
Upgrading a distribution to stable, testing, or unstable
Debian package management
The Linux kernel under Debian
Debian tips
Tuning a Debian system
Network configuration
Editors
Version Control Systems
Programming
Learning Debian GNU/Linux
(eBook 1999)
wikicompany.org/fs/debian.html
Linux distributions @ dmoz.org
Ubuntu
ubuntu.com
help.ubuntu.com
Install
video
Adding and Removing Software
Files, Folders and Documents
manpages.ubuntu.com
LinuxFromScratch.org
linuxfromscratch.org/lfs/view/stable
guides
Introduction to Linux, A Hands on Guide
(eBook)
Introduction
1. What is Linux?
2. Quickstart
3. About files and the file system
4. Processes
5. I/O redirection
6. Text editors
7. Home sweet /home
8. Printers and printing
9. Fundamental Backup Techniques
10. Networking
11. Sound and Video
The Linux OS HOWTOs
System Administration and Configuration HOWTOs
Hardware HOWTOs
System Administrator's Guide
(sag)
1. Introduction
2. Overview of a Linux System
3. Overview of the Directory Tree
4. Hardware, Devices, and Tools
5. Using Disks and Other Storage Media
6. Memory Management
7. System Monitoring
8. Boots And Shutdowns
9. init
10. Logging In And Out
11. Managing user accounts
12. Backups
14. Keeping Time
Linux System Administration and Configuration
(YoLinux)
more System/Network Administration Guides
virtualization
redhat.com/rhel/virtualization
Virtualization Guide
(RHEL5)
linuxvirtualization.com
virt.kernelnewbies.org
Comparison
Xen Virtualization and Linux Clustering
xensource.com
user-mode-linux.sourceforge.net
Discover the KVM
Linux Virtualization Books
AMD-V™
Intel VT
Virtualization with coLinux
Virtualization howtoforge
Linux Weather Forecast/virtualization
Virtualization for embedded systems
developerworks at developerworks
Top 10 Linux Virtualization Software 2009
wiki.openvz.org
xen.org
linux-kvm.org
kvm.sourceforge.net
wiki.qemu.org
linux-vserver.org
virtualbox.org
bochs.sourceforge.net
user-mode-linux.sourceforge.net
system monitoring tools
RH tools
Top 25 Best Linux Performance Monitoring and Debugging Tools
20 Linux System Monitoring Tools
performance
Performance Tuning Guide
Linux Performance and Tuning Guidelines
Linux Performance Tools
Linux Performance Tuning
top
atop
htop
oprofile
oprofile.sourceforge.net
ps
KSysGuard
gnome-system-monitor
free
sar
mpstat
pidstat
iostat
vmstat
netstat
iptraf
nmon
nmon.sourceforge.net
iozone
iozone.org
more system links
System Administration
(ubuntu community)
comp.os.linux.setup
comp.os.linux.hardware
sourceforge.net system
freshmeat.net system
linux.softpedia.com/get/System/
people.redhat.com/drepper
networking
basics
:
Networking
(intro)
Internet and Networks
(Ubuntu)
command interface
ifconfig
www.makelinux.net/man/8/I/ifconfig
ping
mount
advanced
:
Network-Related Configuration
Networking HOWTOs
netperf
tcpdump
wireshark
nmap
examples
Network Administrators Guide
(eBook)
Preface
1. Introduction to Networking
2. Issues of TCP/IP Networking
3. Configuring the Networking Hardware
4. Configuring the Serial Hardware
5. Configuring TCP/IP Networking
6. Name Service and Resolver Configuration
7. Serial Line IP
8. The Point-to-Point Protocol
9. TCP/IP Firewall
10. IP Accounting
11. IP Masquerade and Network Address Translation
12. Important Network Features
13. The Network Information System
14. The Network File System
historical
15. IPX and the NCP Filesystem
16. Managing Taylor UUCP
mail
17. Electronic Mail
18. Sendmail
19. Getting EximUp and Running
news
20. Netnews
21. C News
22. NNTP and thenntpd Daemon
23. Internet News
24. Newsreader Configuration
Linux Networking
(YoLinux)
Networking Wiki @ LinuxQuestions.org
Cloud computing
www.linux.com/news/enterprise/cloud-computing
Cloud computing with Linux
A Guide to Cloud Computing on Linux
redhat.com/solutions/cloud
Open options for cloud computing
Canonical switches to OpenStack for Ubuntu Linux cloud
openstack.org
Red Hat Summit: Linux Meets Cloud and Virtualization
more networking links
Linux Advanced Routing & Traffic Control
lartc.org/howto
comp.os.linux.networking
linux-foundation.org/en/Net
http://www.LinuxHomeNetworking.com/
Networking lectures
sourceforge.net Internet
sourceforge.net communications
freshmeat.net Internet
freshmeat.net communications
linux.softpedia.com/get/Internet/
linux.softpedia.com/get/Communications/
High-Availability
www.howtoforge.com/howtos/high-availability
Linux-HA
linux-ha.org
drbd.org
csync2
suse.com/products/highavailability
redhat.com/products/enterprise-linux-add-ons/high-availability
oracle.com/us/technologies/linux/product/linux-high-availability/overview
security
Keeping Your Computer Safe
(ubuntu)
Security Guides
(ubuntu community)
Google security news
lwn.net/Security
Linux Security for Beginners
Security Wiki @ LinuxQuestions.org
Security Guides
Linux Administrator's Security Guide
(2001)
SELinux
nsa.gov/research/selinux
Red Hat SELinux Guide
Anatomy of SELinux
Linux Security HOWTO
ibm.com/developerworks/spaces/linuxsecurity
redhat.com/security
Red Hat Enterprise Linux 4
other
Red Hat 9 Linux Security Guide
RH Security Reference
linuxsecurity.com
Linux Security Tools
(YoLinux)
ipsec-tools.sourceforge.net
books
Linux Server Security
(oreilly)
Linux Security Cookbook
(oreilly)
tools
How to monitor network traffic
vnstat
iperf
more security links
iptables
netfilter.org
iptables
(YoLinux)
comp.os.linux.security
Security Lectures
sourceforge.net security
freshmeat.net security
linux.softpedia.com/get/Security/
elinux.org/Security
Server Hardening Security Tips
development (100+ links)
www.linux.com/news/software/developer
Writing Your Own Programs
(Ubuntu)
Programming HOWTOs
Programming and Scripting Books
Software Development on Linux
(YoLinux)
Advanced Linux Programming
(eBook)
Part 0
advancedlinuxprogramming.com
Copyright
Advanced Linux Programming is published under the Open Publication License
About the Authors
About the Technical Reviewers
Acknowledgments
Tell Us What You Think
Introduction
GNU and Linux
The GNU General Public License
Who Should Read This Book?
Conventions
Part I: Advanced UNIX Programming with Linux
Chapter 1. Getting Started
Editing with Emacs
Compiling with GCC
Automating the Process with GNU Make
Debugging with GNU Debugger
Finding more Information
Chapter 2. Writing Good GNU/Linux Software
Interaction With the Execution Environment
Coding Defensively
Writing and Using Libraries
Chapter 3. Processes
Looking at Processes
Creating Processes
Signals
Process Termination
Chapter 4. Threads
Thread Creation
Thread Cancellation
Thread-Specific Data
Synchronization and Critical Sections
GNU/Linux Thread Implementation
Processes Vs. Threads
Chapter 5. Interprocess Communication
Shared Memory
Processes Semaphores
Mapped Memory
Pipes
Sockets
Part II: Mastering Linux
Chapter 6. Devices
Device Types
Device Numbers
Device Entries
Hardware Devices
Special Devices
PTYs
ioctl
Chapter 7. The /proc File System
Extracting Information from /proc
Process Entries
Hardware Information
Kernel Information
Drives, Mounts, and File Systems
System Statistics
Chapter 8. Linux System Calls
Using strace
access: Testing File Permissions
fcntl: Locks and Other File Operations
fsync and fdatasync: Flushing Disk Buffers
getrlimit and setrlimit: Resource Limits
getrusage: Process Statistics
gettimeofday: Wall-Clock Time
The mlock Family: Locking Physical Memory
mprotect: Setting Memory Permissions
nanosleep: High-Precision Sleeping
readlink: Reading Symbolic Links
sendfile: Fast Data Transfers
setitimer: Setting Interval Timers
sysinfo: Obtaining System Statistics
uname
Chapter 9. Inline Assembly Code
When to Use Assembly Code
Simple Inline Assembly
Extended Assembly Syntax
Example
Optimization Issues
Maintenance and Portability Issues
Chapter 10. Security
Users and Groups
Process User IDs and Process Group IDs
File System Permissions
Real and Effective IDs
Authenticating Users
More Security Holes
Chapter 11. A Sample GNU/Linux Application
Overview
Implementation
Modules
Using the Server
Finishing Up
Part III: Appendixes
Appendix A. Other Development Tools
Static Program Analysis
Finding Dynamic Memory Errors
Profiling
Appendix B. Low-Level I/O
Reading and Writing Data
stat
Vector Reads and Writes
Relation to Standard C Library I/O Functions
Other File Operations
Reading Directory Contents
Appendix C. Table of Signals
Appendix D. Online Resources
General Information
Information About GNU/Linux Software
Other Sites
Appendix E. Open Publication License Version 1.0
I. Requirements on Both Unmodified and Modified Versions
II. Copyright
III. Scope of License
IV. Requirements on Modified Works
V. Good-Practice Recommendations
VI. License Options
Open Publication Policy Appendix
Appendix F. GNU General Public License
Preamble, Terms and Conditions
Preamble
Terms and Conditions for Copying, Distribution and Modification
End of Terms and Conditions
tools
Software development tools
(slideshow)
Developer Tools Guide
(RHEL4)
IDE
Eclipse
eclipse.org
KDevelop
kdevelop.org
GNUstep
gnustep.org
GNU Emacs
VIM
vim doc
Graphical vi-vim Cheat Sheet and Tutorial
vim.wikia.com
www.rayninfo.co.uk/vimtips.html
IDE
(linuxlinks)
source management
Revision Control Tools
(linuxlinks)
code navigation
ctags
ctags.sourceforge.net
cscope
kscope
Source-Navigator
Version control for Linux
git
manual
Kernel Hackers' Guide to git
wiki.ubuntu.com/Kernel/Dev/GitCheatSheet
git-scm.com/book
stackoverflow.com/questions/tagged/git
Subversion
(revision control)
subversion.tigris.org
svn book
bazaar-vcs.org
comparing and merging files
diff & patch
Comparing and Merging Files
(diffutils manual)
diff
patch
historical
cvs
more tools
SCons
scons.org
examples
CMake
cmake.org
www.cmake.org/Wiki/CMake
documentation
syntax
examples
screencast
cmake for kde
tutorial
(pdf, desy)
learning CMake
(pdf)
GNU toolchain
(compilation and build)
gcc
Using the GNU Compiler Collection
gcc.gnu.org
GCC 4.2.2 Manual
GCC
(RHEL4)
Learning GNU C
Using cpp, the C Preprocessor
(RHEL4)
stackoverflow.com/questions/tagged/gcc
binutils
Using binutils
(RHEL4)
as
(assembler)
tigcc.ticalc.org/doc/gnuasm.html
Using as, the Gnu Assembler
(RHEL4)
ld
(linker)
Using ld, the Gnu Linker
(RHEL4)
nm
(lists symbols)
objdump
and more utilities
GNU build system
Autotools Tutorial for Beginners
Autobook
Autotools Tutorial
www.lrde.epita.fr/~adl/dl/autotools.pdf
automake
gnu.org/software/automake
autoconf
obsolete
seul.org/docs/autotut
make
make manual
overview
introduction
makefiles
rules
commands
variables
conditionals
functions
running
implicit rules
updating archives
features
incompatibilities
conventions
concept index
name index
quick reference
Managing Projects with GNU make
(eBook)
examples.oreilly.com/make3
Basic Concepts
Advanced and Specialized Topics
Appendixes
make
(man)
Debugging Makefiles
debugging
gdb
GDB User Manual
GDB Internals Manual
gdb
(RHEL4)
Insight
(gui)
DDD
(gui)
Debugging "C" And "C++" Programs Using "gdb"
Debuggers
(linuxlinks)
gprof
$ gcc -g -pg ....
$ gprof
Valgrind
valgrind.org
GCC Heap Consistency Checking
Memory analysis tools
C/C++ Memory Corruption And Memory Leaks
Memory Debugging Development Tools
D.U.M.A. - Detect Unintended Memory Access
scripting languages
AWK
awk
(man)
Perl
perl.org
cpan.perl.org
perldoc.perl.org
overview
perl
intro
tutorials
perlcheat
....
more development links
socket programming
introduction
Five pitfalls of Linux sockets programming
Linux programming @ dmoz.org
comp.os.linux.development.apps
Software development Wiki @ LinuxQuestions.org
LSB Developer Network
Programming Related Lectures
sourceforge.net development
freshmeat.net development
news.gmane.org/gmane.linux.c-programming
jenkins-ci.org
commercial
training.linuxfoundation.org
RHD143 Red Hat Linux Programming Essentials
RHD256 Red Hat Linux Application Development and Porting
The Linux Programming Interface
man7.org/tlpi/toc-detailed.html
review
applications
general
www.linux.com/news/software/applications
GNU / Linux and Free Software - An Introduction
(slideshow)
GNU Project
gnu.org/manual
directories
linux.softpedia.com/
sourceforge.net/softwaremap
freshmeat.net/browse
ohloh.net
savannah.gnu.org
directory.fsf.org/category/index
Applications / GUI / Multimedia HOWTOs
Applications Wiki @ LinuxQuestions.org
Common Tasks Wiki
conversion to Linux
Switching From Windows
(to Ubuntu)
Switching To Ubuntu From Windows
(ubuntu community)
IBM: Migration to Linux
Windows-to-Linux roadmap
linuxalt.com
osalt.com
Windows to Linux Migration
Linux software equivalent to Windows software
The table of equivalents / replacements / analogs of Windows software in Linux
Linux projects @ dmoz.org
Tools and Utilities Lectures
desktop
Linux for Beginners
desktoplinux.com
GNOME
gnome.org
library.gnome.org
users' manuals
Desktop User Guide
administrators' manuals
GNOME Desktop System Administration Guide
developers manuals
KDE
userbase.kde.org
wikicompany.org/fs/kde.html
X.org
Office Productivity Guides
OpenOffice.org
openoffice.org
KOffice
koffice.org
Firefox
mozilla.com
webkit.org
Data visualization tools for Linux
OpenPrinting
printers
drivers
Ubuntu Office
Printing, Faxing and Scanning
(Ubuntu)
Using PDF in Linux
elinux.org/User_Interfaces
multimedia
www.linux.com/news/software/multimedia
Music, Video and Photos
(ubuntu)
VLC media player
videolan.org/vlc
GStreamer
gstreamer.freedesktop.org
Introduction to GStreamer
Helix
player.helixcommunity.org
MPlayer
mplayerhq.hu
MythTV
FFmpeg
Linux Multimedia Hacks
(oreilly)
wikicompany.org/fs/multimedia.html
elinux.org/Multimedia
30+ Awesome Free and Open Source Audio Applications List
server
Ubuntu Server Guide
Servers
(ubuntu community)
databases
LAMP
onlamp.com
Apache HTTP Server
httpd.apache.org
Web Server docs
Samba
samba.org
RHDB
Cluster
MySQL
mysql.com/products/database
SQLite
Linux Server Security
(oreilly)
Linux kernel
(150+ links)
general
Wikipedia about Linux kernel
communities, news, reviews
news
Google Linux kernel news
www.linux.com/news/software/linux-kernel
forums
vger.kernel.org/vger-lists.html
patchwork.kernel.org/project/LKML/list
linux-kernel
lkml.org
news.gmane.org/gmane.linux.kernel
spinics.net/lists/kernel
marc.info/?l=linux-kernel
groups.google.com/group/linux.kernel/topics
www.mail-archive.com/linux-kernel@vger.kernel.org/maillist.html
kernelnewbies
news.gmane.org/gmane.linux.kernel.kernelnewbies
lists.kernelnewbies.org/pipermail/kernelnewbies
kernel.mentors
news.gmane.org/gmane.linux.kernel.mentors
selenic.com/mailman/listinfo/kernel-mentors
selenic.com/pipermail/kernel-mentors
stackoverflow.com/questions/tagged/linux-kernel
LWN.net
ChangeLog
LDN.LinuxFoundation.org
Linux Weather Forecast
Greg Kroah Hartman on the Linux Kernel
(video)
comp.os.linux.development.system
How to Participate in the Linux Community
(ldn)
books
Understanding the Linux Kernel 3rd
(oreilly)
Understanding the Linux Kernel 3rd
(google book)
Understanding Linux network internals
Linux device drivers
Linux Kernel Development 2nd
(safari)
linux.kernel @ safari.oreilly.com
commercial info
RHD221 Red Hat Linux Device Drivers Course
RHD236 Red Hat Linux Kernel Internals Course
more Linux kernel links
kernel.org/doc/Documentation
kernel.org/doc/Documentation/HOWTO
Where Linux Kernel Documentation Hides www.kernel.org/doc/ols/2008/ols2008v2-pages-7-18.pdf
kernelnewbies.org/KernelHacking
kernel.org/doc
The Linux Kernel HOWTO
(2004)
LinuxChix Kernel Hacking Lessons
del.icio.us/search/?p=linux+kernel
Linux kernel @ dmoz.org
wikicompany.org/fs/linux.html
The Linux kernel
(Andries Brouwer)
Kernel Lectures
historical
hackers-docs
(2004,Juan-Mariano de Goyeneche)
Linux Kernel 2.4 Internals
(2002, Tigran Aivazian)
Unreliable Guide To Hacking The Linux Kernel
(2000)
The Linux Kernel
(1999, David A Rusling)
linux.org/news
Kernel Summit 2009
drivers
lxr.free-electrons.com/source/drivers
wiki.kernel.org
Writing device drivers in Linux: A brief tutorial
Linux Device Driver Dos and Don'ts
LinuxDriverProject
Linux Device Drivers 3rd
(eBook)
Essential Linux Device Drivers
(safari)
debugging
wiki.ubuntu.com/Kernel/Debugging
KGDB, Linux Weather Forecast
kgdb.wiki.kernel.org
Device Driver Architecture
(pdf)
Device Model
The Linux Driver Model: A Better Way to Support Devices
Linux Device Model
(lwn)
Linux Device Model
(ldd3)
vendor drivers
ATI
wiki.linuxquestions.org/wiki/ATI
NVIDIA
wiki.linuxquestions.org/wiki/NVIDIA
www.nvidia.com/object/unix
NVIDIA Linux Forum
VIA
linux.via.com.tw
viaarena.com
ZD1211
source
getting
kernel.org
patchwork.kernel.org
git.kernel.org
Linux-next.FAQ
building
Linux Kernel in a Nutshell
(eBook,pdf)
Linux Kernel in a Nutshell
(html)
Building a Linux Kernel
(Linux Kernel Development)
Kernel Rebuild Guide
(2004)
browsing
What's new in Linux 2.6?
(slideshow)
KernelAnalysis-HOWTO
(eBook)
Using Eclipse CDT to navigate Linux kernel source
LXR
Interactive map of Linux kernel
Plain HTML version
tracing
Linux Kernel Trace Seminar
Prerequisties
(pdf)
StrongARM
(pdf)
Kernel Trace Systems
Kernel Function Instrumentation
Kernel Function Trace
Kernel function instrumentation - tool analysis
structure
Anatomy of the Linux kernel
A short tour of Linux history
Introduction to the Linux kernel
Properties of the Linux kernel
Major subsystems of the Linux kernel
Interesting features of the Linux kernel
system (system calls ... common code)
system interfaces
System Calls Interface
Implementing a System Call on Linux 2.6 for i386
syscalls
strace
man-pages
lxr.free-electrons.com/source/include/linux/syscalls.h
lxr.free-electrons.com/source/include/asm-i386/uaccess.h
System Call
(pdf)
ABI
System files
/dev
udev
Char Device Drivers
/proc
lxr.free-electrons.com/source/fs/proc
Proc File Sysyem
(pdf)
/sys
lxr.free-electrons.com/source/fs/sysfs
Kernel Commands
Linux Weather Forecast/userspace
run-time functionality
configuration
Linux Performance Tuning
Tunable Kernel Parameters
(pdf)
see System interfaces and System files
start & shutdown
Inside the Linux boot process
(ibm)
The Kernel Boot Process
Linux Startup
lxr.free-electrons.com/source/init
System Initialization
(pdf)
Signals
(pdf)
modules
Anatomy of Linux loadable kernel modules
(ibm)
lxr.free-electrons.com/source/include/linux/module.h
The Linux Kernel Module Programming Guide
Building and Running Modules @ LDD3
Linux Loadable Kernel Module HOWTO
Linux Peculiarities
Linux Weather Forecast/security
common and reused code
lxr.free-electrons.com/source/include/linux/kernel.h
lxr.free-electrons.com/source/include/linux/types.h
lxr.free-electrons.com/source/lib
Data Types in the Kernel
printk
(man)
cdev_add
(man)
Timers and lists in the 2.6 kernel
HW interfaces
devicetree.org
Communicating with Hardware
(ldd3)
lxr.free-electrons.com/source/arch
Running Linux on a 32-/64-bit RISC architecture
PCI
lxr.free-electrons.com/source+v2.6.26.3/Documentation/PCI
lxr.free-electrons.com/source/drivers/pci
USB
linux-usb.org
gitorious.org/usb
lxr.free-electrons.com/source/drivers/usb
kernelnewbies.org/USB
Understanding and developing Linux USB drivers
(slideshow)
mailing lists
spinics.net/lists/linux-usb
marc.info/?l=linux-usb
news.gmane.org/gmane.linux.usb.general
historical
news.gmane.org/gmane.linux.usb.devel
mail-archive.com/linux-usb-devel@lists.sourceforge.net
I/O memory
I/O ports
Linux HW @ dmoz.org
Linux Weather Forecast/hardware
processing (processes .. interrupts)
Anatomy of Linux process management
Scheduler
Linux Multitasking
kernel.org/doc/Documentation/scheduler
Processes and Threads
(pdf)
Improving Linux kernel performance and scalability
Processes scheduling
(pdf)
SMP
(pdf)
Preemption and Context Switching
(Linux Kernel Development)
Linux Kernel Process Management
(Linux Kernel Development)
Linux Scheduling and Kernel Synchronization
(Linux® Kernel Primer, The: A Top-Down Approach for x86 and PowerPC Architectures)
DPC
Tasklets
Workqueues
Deferrable functions, kernel tasklets, and work queues
Interrupt Handling
(ldd3)
Interrupts and Time
(pdf)
Synchronization
Anatomy of Linux synchronization methods
sleeping and waking up
Concurrency and Race Conditions
Time, Delays, and Deferred Work
pmap
CPU Utilization
components
process
kernel thread
System V IPC
(pdf)
TIPC
tipc.sourceforge.net
Linux Weather Forecast/core kernel
Invoking user-space applications from the kernel
memory
(vmalloc ... page)
Memory Usage
Where is the memory going? Memory usage in the 2.6 kernel
User space memory access from the Linux kernel
Linux Memory Management
virtual memory
Understanding the Linux Virtual Memory Manager, Mel Gorman
pdf
kernel.org/doc/gorman
vmalloc
memory mapping
VM Architecture
(pdf)
VM Architecture - cont
(pdf)
swap
Swapping and Page Fault Handling
(pdf)
Addendum to Swapping
(pdf)
lxr.free-electrons.com/source/include/linux/mm.h
lxr.free-electrons.com/source/mm
slab
Anatomy of the Linux slab allocator
components
page
RAM
process memory
kmalloc
Page table
TLB
slob: introduce the SLOB allocator
MM review
storage (files ... discs)
lxr.free-electrons.com/source/include/linux/file.h
news.gmane.org/gmane.linux.file-systems
disk cache
Linux Disk Caches
(pdf)
filesystem
lxr.free-electrons.com/source/fs
Anatomy of the Linux file system
Linux Weather Forecast/filesystems
VFS
Linux Virtual File System
(pdf)
ext3
lxr.free-electrons.com/source/fs/ext3
Extension2 File System
(pdf)
Extention3 File Sysyem
(pdf)
ZFS
zfsonlinux.org
OpenZFS
NFS
nfs.sourceforge.net
lxr.free-electrons.com/source/fs/nfs
USB storage
lxr.free-electrons.com/source/drivers/usb/storage
block devices
lxr.free-electrons.com/source/block
the gendisk interface
block drivers
SCSI
lxr.free-electrons.com/source/drivers/scsi
Anatomy of the Linux SCSI subsystem
(ibm)
ATA
lxr.free-electrons.com/source/drivers/ata
IDE
lxr.free-electrons.com/source/drivers/ide
iSCSI
Anatomy of Linux journaling file systems
(ibm)
networking (sockets ... eth)
news.gmane.org/gmane.linux.network
Net
(linuxfoundation)
overview
kernel flow
Linux Networking
Anatomy of the Linux networking stack
Boost socket performance on Linux
lxr.free-electrons.com/source/include/linux/net.h
lxr.free-electrons.com/source/net
lxr.free-electrons.com/source/drivers/net
Network drivers @ LWN
Network drivers @ LDD3
Understanding Linux Network Internals
(oreilly)
Linux IP Networking
(old, 2.2.14)
networking reviews
Linux Weather Forecast/networking
components
sockets
lxr.free-electrons.com/source/include/net/sock.h
lxr.free-electrons.com/source/include/linux/socket.h
lxr.free-electrons.com/source/net/socket.c
TCP/IP
dev_alloc_skb
(man)
skb
(socket buffer)
lxr.free-electrons.com/source/include/net/tcp.h
lxr.free-electrons.com/source/net/ipv4
TCP
How TCP works
TCP Socket
(pdf)
IP
(pdf)
UNIX domain sockets
Ethernet
lxr.free-electrons.com/source/include/linux/netdevice.h
lxr.free-electrons.com/source/net/ethernet/eth.c
MII
lxr.free-electrons.com/source/include/linux/mii.h
lxr.free-electrons.com/source/drivers/net/mii.c
WiFi
Wireless in Linux
(Rami Rosen)
iwconfig
wireless.kernel.org
lxr.free-electrons.com/source/include/linux/wireless.h
lxr.free-electrons.com/source/net/mac80211
lxr.free-electrons.com/source/drivers/net/wireless
wpa_supplicant
hostap.epitest.fi/wpa_supplicant
Bluetooth
bluez.org
human interface (console ... keyboard ... )
cdev
console
input
lxr.free-electrons.com/source/drivers/input
mouse
lxr.free-electrons.com/source/drivers/input/mouse
keyboard
lxr.free-electrons.com/source/drivers/input/keyboard
alsa
lxr.free-electrons.com/source/sound
oss
Video4Linux
linuxtv.org
V4L-DVB
Intro to V4L2
The Video4Linux2 API: an introduction
www.exploits.org/v4l
lxr.free-electrons.com/source/Documentation/video4linux
lxr.free-electrons.com/source/drivers/media/video
USB video device class (UVC)
historical
linux-uvc.berlios.de
graphics
fb
lxr.free-electrons.com/source/drivers/video
Graphics Execution Manager
gem_update
Embedded Linux
(100+ links)
general
Category:Embedded Linux
news
www.linux.com/news/embedded-mobile
linuxdevices.com/news
Google embedded Linux news
google past 24h
google past week
google past month
google past year
EmbeddedLinuxConference.com
mailing lists
linux-embedded@vger.kernel.org
news.gmane.org/gmane.linux.kernel.embedded
marc.info/?l=linux-embedded
spinics.net/lists/linux-embedded
historical
comp.os.linux.embedded
stackoverflow.com/questions/tagged/embedded-linux
free-electrons.com
(the best!)
elinux.org
celinuxforum.org
tree.celinuxforum.org/pipermail/celinux-dev
other
Linux-based devices
Mobile Linux
Build an embedded Linux distro from scratch
(ibm,registration)
embedded * lwn.net
genivi.org
www.reddit.com/r/linux_devices
distributions
Embedded Linux Distributions @ elinux
Tools and distributions for embedded Linux development
5 Steps to Building Your Embedded Distribution with Timesys
new
Linaro
linaro.org
planet.linaro.org
www.youtube.com/user/LinaroOrg
releases.linaro.org
android-build.linaro.org
wiki.linaro.org
wiki.linaro.org/EngineeringUnits
wiki.linaro.org/Platform
wiki.linaro.org/WorkingGroups
wiki.linaro.org/LandingTeams
wiki.linaro.org/Source
wiki.linaro.org/TitleIndex
git.linaro.org/gitweb
code.launchpad.net/gcc-linaro
launchpad.net/linaro-toolchain
mailing list
news.gmane.org/gmane.linux.linaro.devel
lists.linaro.org/pipermail/linaro-dev
launchpad.net/~linaro-community
MeeGo
meego.com
LiMo
limofoundation.org
yoctoproject.org
wiki.pokylinux.org/wiki/Planning
Android
en.wikipedia.org/wiki/Category:Android_(operating_system)
devices
android.com
App Inventor
market.android.com
games
applications
androidcentral.com
appbrain.com
phandroid.com
phonegap.com
www.delicious.com/search/?p=android
development
news
Google Developer Podcast
general news
android-developers.blogspot.com
official
developer.android.com
code.google.com/android
android.git.kernel.org
source.android.com
architecture
Android excerpt
Android Kernel Features
elinux.org/Android_Portal
processors.wiki.ti.com/index.php/Android
rooting
CyanogenMod
community
androidcommunity.com
androidforums.com
anddev.org
forum at stackoverflow
chat at stackoverflow
mailing lists
news.gmane.org/gmane.comp.handhelds.android.kernel
news.gmane.org/gmane.comp.handhelds.android.devel
news.gmane.org/gmane.comp.handhelds.android.general
google groups
groups.google.com/group/android-kernel
groups.google.com/group/android-developers
groups.google.com/group/android-discuss
booting
Talking about Android process
Zygote
bootchart
Porting Android to a new device
Networking with Android
Android at developerworks
other
androidquestions.org
en.androidwiki.com
android-dls.com
code.google.com/p/skia
youtube.com/Android
dmoz.org/Computers/Systems/Handhelds/Android
slashdot.org/index2.pl?fhfilter=android
reddit.com/r/Android
Ångström
angstrom-distribution.org
OpenEmbedded
openembedded.net
manual
pokylinux.org
git.pokylinux.org
wiki.pokylinux.org
Debian for ARM
emdebian.org
gentoo.org/proj/en/base/embedded
OpenWrt
openwrt.org
dev.openwrt.org
μClinux
uclinux.org
Introduction to uClinux
(slideshow)
trac.cross-lfs.org
legacy
Openmoko
wiki.openmoko.org
en.wikipedia.org/wiki/Category:Openmoko
Maemo
maemo.org
Moblin
moblin.org
Mobilinux
WebOS
developer.palm.com
general embedded Linux by TimeSys
(webinars)
podcasts
Linux Boot-up
linuxlink.timesys.com/files/boot_up_flash.html
kexec
Solving Common Board Bring-Up Problems
linuxlink.timesys.com/files/board_bringup_webinar.html
Great Small Packages for Embedded Developers
linuxlink.timesys.com/files/small_packages_webinar.html
Get Up-to-Date: Enable Field Upgradeability of Your Embedded Device
linuxlink.timesys.com/files/Mar28webinar.wrf
Get Started: Navigate the Open Source Community
Inside GCC for Embedded Developers
Using RPM as Your Build Environment
Automake and Autoconf
Cygwin Essentials: Embedded Linux Development Using Windows Hosts
linuxlink.timesys.com/tag/embedded_linux
books on embedded Linux
Building Embedded Linux Systems, 2nd
(2008,oreilly)
Building Embedded Linux Systems
(oreilly)
Embedded Linux Primer: A Practical Real-World Approach, Adobe Reader
(safari)
Embedded Linux: Hardware, Software and Interfacing
Embedded Linux: Hardware, Software and Interfacing
(safary)
Embedded Linux by John Lombardo
more embedded Linux links
del.icio.us/search/?p=embedded+linux
embedded Linux @ dmoz.org
Embedded Linux applications: An overview
(2001)
Linux system development on an embedded device
(2002)
tuxmobil.org
design
planning
Tips for planning an embedded Linux project
Using GPL software in embedded applications
Snapshot of the embedded Linux market - April, 2007
Embedded Linux Best Practices
prototyping
Embedded Linux From Scratch... in 40 minutes!
How to port Linux on a new PDA
(slideshow)
requirements analysis
Advantages of Free Software and Open Source in embedded systems
(slideshow)
Identifying the top requirements for Embedded Linux systems
Embedded Linux kernel and driver development
(448 slides!)
Table of contents
kernel overview
compiling and booting Linux
driver development
advice and resources
annexes
interface
Qt
Qt on Embedded Linux
Qt
X-Wrt - Webif²
x-wrt.org
code.google.com/p/x-wrt
wiki.x-wrt.org
manual
Web Application Framework in an Embedded Linux System
Embedded Linux Graphics Quick Reference Guide
platforms (tools, sources, HW)
toolschains
Hardware Hacking
processor architectures
ARM architecture
linux-arm.org
arm.linux.org.uk
ARM infocenter
Building Bare-Metal ARM Systems with GNU
i.MX
www.freescale.com/imxandroid
www.freescale.com/linux
www.timesys.com/supported/processors/freescale
www.lynuxworks.com/board-support/freescale.php
MIPS
MIPS - Linux
Linux Starter Kit
LinuxLink for MIPS
www.linux-mips.org
developer.mips.com
SuperH
Renesas SuperH
linux-sh.org
sh-linux.org
PowerPC
www.freescale.com/webapp/sps/site/homepage.jsp?code=IFFSLLINUX
ELDK
articles
Embedded Linux Distributions
The Linux Devices Showcase
Embedded Linux Distributions Quick Reference Guide
Commercial Distributions
Open Source Distributions
Embedded Processor and System-on-Chip
Running Linux on Your iPod
Single Board Computer
(SBC)
Linux-friendly mini-ITX boards gain dual-DVI video expansion
other chip vendors support
homesupport.cisco.com/en-us/gplcodecenter
picotux.com
oss.intel.com
communities.intel.com
Opensource.TI.com
linux-davinci.info
linux.davincidsp.com
linux.omap.com
www.mail-archive.com/linux-omap@vger.kernel.org/maillist.html
Linux on TI OMAP processors
(slideshow)
news.gmane.org/gmane.linux.ports.arm.omap
designsomething.org
PandaBoard
pandaboard.org
elinux.org/PandaBoard
fedoraproject.org/wiki/Architectures/ARM/Pandaboard
www.omappedia.com/wiki/PandaBoard
panda on linux-omap@vger.kernel.org
search.gmane.org/?query=panda&author=&group=gmane.linux.ports.arm.omap&sort=date
commercial
MontaVista
Mobilinux
mvista.com
mvista.com/download
DevRocket
courses
timesys.com
BlueCat Linux
Wind River Linux Center
developer.windriver.com
VirtualLogix Inc.
Access Linux Platform
Internet Tablet OS
(maemo)
maemo.org
codesourcery.com
components
boot loader
Bootloaders
u-boot
en.wikipedia.org/wiki/Das_U-Boot
RedBoot
busybox
BusyBox simplifies embedded Linux systems
news.gmane.org/gmane.linux.busybox
root file system
rootfs on NFS
(slideshow)
Linux Target Image Builder
NFS root
TimeSys Root Filesystems
buildroot.uclibc.org
docs
mailing list
www.makelinux.net/man/8/M/mkinitramfs
freshmeat.net/projects/mkinitramfs-justboot
initramfs
(Hai Zaar)
slides
Java
Java in embedded Linux systems
(slideshow)
The Embedded Java+Linux Quick Reference Guide
Graphics
directfb.org
tools
Software tools for embedded systems
(slideshow)
Embedded Linux Build System
(ELBS)
elinux.org/Toolbox
TFTP
Serial console terminal
picocom
cat /dev/ttyS0 & cat > /dev/ttyS0; kill $!
cross compiler
BitBake
bitbake.berlios.de/manual
developer.berlios.de/projects/bitbake
HW tools
LED
JTAG ICE
Oscilloscope
Logic analyzer
Cygwin
Cygwin Essentials: Embedded Linux Development Using Windows Hosts
peripherals and drivers
embedded peripherals
(not only for Linux)
serial console
I²C
i2c.wiki.kernel.org
lxr.free-electrons.com/source/drivers/i2c
GPIO
lxr.free-electrons.com/ident?i=gpio_set_value
SPI
lxr.free-electrons.com/source/drivers/spi
flash and storage
File Systems
Flash Filesystems for Embedded Linux Systems
Anatomy of Linux flash file systems
NOR
NAND
lxr.free-electrons.com/source/drivers/mtd
linux-mtd.infradead.org
JFFS2
sourceware.org/jffs2
introduction
YAFFS
yaffs.net
LogFS
lwn.net/Articles/234441
UBIFS
lwn.net/Articles/276025
more challenges
optimization
Optimizing the Linux kernel and applications for speed, size, RAM, power and cost
Speed
elinux.org/Boot_Time
Reducing OS Boot Times for In-Car Computer Applications
System Size
Power Management
real-time
Anatomy of real-time Linux architectures
Real time in embedded Linux systems
(89 slides)
Real-Time Linux Wiki
CONFIG_PREEMPT_RT Patch
Intro to Real-Time Linux for Embedded Developers
elinux.org/Real_Time
Interrupt latency
MontaVista Real-Time Linux
Presentations
TimeSys Real-Time
device drivers
RTLinux
web.archive.org/web/20110207134834/http://rtlinuxfree.com
RTLinux HOWTO
Xenomai
xenomai.org
RTAI
rtai.org
ADEOS
historical
Real-time Linux Software Quick Reference Guide
Real-Time and Embedded Linux
part 2
additional topics (80+ links)
software development
Stages
Requirements analysis
Use case
Program specification
Traceability matrix
Design
Module
maximum cohesion
minimum coupling
Considerations
Extensibility
Robustness
Fault-tolerance
Security
Maintainability
Compatibility
OOAD
Architecture
Assessing quality in software architectures
Architectural patterns
Design patterns
UML
uml.org
Diagrams
Introduction to the Diagrams of UML 2.0
UML Quick Reference
Structure diagram
Class diagram
Component diagram
Composite structure diagram
Deployment diagram
Object diagram
Package diagram
Behavior diagrams
Activity diagram
State diagram
Use case diagram
Interaction diagrams
Communication diagram
Interaction overview diagram
Sequence diagram
UML Timing Diagram
Coding
Source code
Programming style
Naming conventions
OOP
API
Configuration management
Baseline
Application
Library
Testing
QA
Unit testing
Integration testing
System testing
Regression testing
Acceptance testing
Performance testing
Stress testing
Software prototyping
Requirements testing
Design testing
Debugging
detect
locate
identify
fix
test
post development
Deployment
Maintenance
Models
from more relaxed to more strict:
Cowboy coding
Agile
Extreme Programming
Test-driven development
Iterative development
Spiral model
Waterfall model
DOD-STD-2167A
CMMI
CMM
Levels
Initial
Repeatable
Defined
Quantitatively Managed
Optimizing
good software
Good Software Takes Ten Years. Get Used To it
documentation
Visualization Methods
IEEE Software Engineering Standards
Plain English
Rules for Regulation Writers
Software Requirements Specification
Characteristics of a good SRS
Correct
Unambiguous
Complete
Consistent
Ranked for importance and/or stability
Verifiable
Modifiable
Traceable
Table of Contents
Introduction
Purpose
Scope
Definitions, acronyms, and abbreviations
References
Overview
Overall description
Product perspective
Product functions
User characteristics
Constraints
Assumptions and dependencies
Specific requirements
How to write a software requirements specification
IEEE Std 830-1998: IEEE Recommended Practice for Software Requirements Specifications
SRS template
Writing Software Requirements Specifications
Software Design Description
Design entity
Identification
Type
subprogram
module
procedure
process
data store
Purpose
Function
Subordinates
Interface
Resources
Processing
Data
Design views
Decomposition Description
Dependency Description
Interface Description
Detailed Design Description
References
IEEE Std 1016-1998: IEEE Recommended Practice for Software Design Descriptions
Statement of work
How to Write a SoW
Acceptance testing
software quality
conformance to requirements
Designing Integrated High Quality Linux Applications
(tldp)
What Makes a Software High-Quality?
Software Productization
Code refactoring
KISS principle
Scalability
Performance
Fault-tolerance
ISO 9001
ISO 9126
ISO 9126 Software Quality Characteristics
Functionality
Suitability
Accuracy
Interoperability
Compliance
Security
Reliability
Maturity
Recoverability
Fault Tolerance
Usability
Learnability
Understandability
Operability
Efficiency
Maintainability
Portability
related topics
Systems analysis
Business analysis
System Requirements Specification
CASE
ISO 12207
IEEE 12207
MIL-STD-498
DOD-STD-2167A
Software metric
SLOC
Cyclomatic complexity
COCOMO
embedded systems
embedded-world.eu
embedded.com
The basics of programming embedded processors
Employ the proper flash memory in your design
The Benefits of Hacking Embedded Devices
(Embedded Linux Primer: A Practical Real-World Approach)
ddj.com/embedded
MobileWorldCongress.com
just some brand names:
ARM
eCos
ecos.sourceware.org
GHS
IAR
Keil
MontaVista
PIC
QNX
Symbian
ThreadX
VxWorks
Windows CE
Wind River
and may others
some Technologies and applications
DSP
Wireless
Mobile computing
Comments
,
submit link
Copyright © 2007-2013 Constantine Shulyupin