Master essential Linux troubleshooting tools, including strace, gdb, kdb, SysRq, /proc, and more
The indispensable start-to-finish troubleshooting guide for every Linux professional
A systematic, practical guide to Linux troubleshooting for every power user, administrator, and developer.
A four-step methodology for identifying and resolving every type of Linux-related system or application problem: errors,
crashes, hangs, performance slowdowns, unexpected behavior, and unexpected outputs. Youll learn exactly how to
use Linuxs key troubleshooting tools to solve problems on your own, and how to make effective use of the Linux
If you use Linux professionally, this book can dramatically increase your efficiency, productivity, and marketability.
If youre involved with deploying or managing Linux in the enterprise, it can help you significantly reduce operation
costs, enhance availability, and improve ROI.
VMs behavior affects every Linux kernel subsystem and dramatically impacts overall performance. But until now,
there was only one way to understand VM: study the poorly documented source one line at a time. Now theres an
easier, faster alternative. This book describes VM in unprecedented detail, presenting both theoretical foundations
and a line-by-line source code commentary. It systematically covers everything from physical memory description to
out-of-memory management. Coverage includes:
Linux VM 2.4 architecture in depth-with diagrams and call graphs
Physical memory description, page tables, address spaces, and memory allocation
High memory, swapping, shared memory, and much more
Expert guidance for analyzing the code of any open source project
Guidelines for writing secure programs on Linux and Unix systems. Includes application programs used as viewers of
remote data, web applications (including CGI scripts), network servers, and setuid/setgid programs. Includes specific
guidance for a number of languages, including C, C++, Java, Perl, PHP, Python, Tcl, and Ada95.
Assumes the reader understands computer security issues in general, the general security model of Unix-like systems,
networking (in particular TCP/IP based networks) and the C programming language. This book does include some information
about the Linux and Unix programming model for security.
Linux is the fastest-growing Java development platform because it saves money and then saves time by serving as a
platform for both development and deployment. But developers face significant platform-specific challenges when
managing and deploying Java applications in a controlled production environment. Written for Java and Linux developers
alike, (this book) is the hands-on guide to the full Java application development lifecycle on Linux.
Determined to spare other developers hours of trial and error, the authors demonstrate the platform, tools, and
application development by constructing a real-world, database-driven budget application. After a simple command-line
application introduces basic tools, this program leads readers through business logic object analysis, database design,
Java servlet UIs, Java Server Pages (JSP) UIs, Swing GUIs, and Standard Widget Toolkit (SWT) GUIs. Scaling up to the
enterprise level provides the opportunity to use the JBoss Application Server and Enterprise JavaBeans (EJB).
A companion website includes all source code and a link to each tool described.
Learn how to:
Use development tools available on Linux, such as the GNU Compiler for Java (gcj), Ant, the NetBeans IDE,
IBMs Eclipse Java IDE, JUnit, and SunONE Studio
Develop business logic layers using Java DataBase Connectivity (JDBC)
Add a Web interface using servlets and JSPs
Add a GUI using Suns Abstract Window Toolkit (AWT) and IBMs SWT
The story of how Linux and the free software movement undercut the high-tech titans by writing their own
software and giving it away. This book covers the ups and downs, failures and successes, the struggles and teamwork.