• Fri frakt över 249 kr
  • •
  • Snabba leveranser
  • •
  • Billiga böcker
Kundservice

Du är på sajten för privatpersoner.

Företag, bibliotek eller offentlig verksamhet?

Du handlar på classic.bokus.com, där alla dina funktioner finns intakta.
Till classic.bokus.com
Bokus logotyp. Gå till startsidan.
  • Erbjudanden
  • Nyheter
  • Student
  • Topplistor
  • Barn & ungdom
  • Bokus Play
  • E-böcker
  • Pocketböcker
  • Spel & pussel

10% studentrabatt med kod TERM26

Sidfot

Mina sidor

    Hjälp

    • Kundservice
    • Vanliga frågor och svar
    • Frakt och leverans
    • Retur vid ångerrätt
    • Reklamera vara
    • Betalning
    • Köpvillkor
    • Allmänna villkor
    • Information om webbplatsens tillgänglighet

    Om Bokus

    • Om oss
    • Pressrum
    • För studenter
    • För företag
    • För bibliotek och offentlig verksamhet
    • För leverantörer
    • Hållbarhet

    Populärt

    • Aktuella erbjudanden
    • Presentkort
    • Studentlitteratur
    • Nya böcker
    • Topplistor
    • Signerade böcker
    • Engelska böcker

    Inspiration

    • Boktips
    • BookTok
    • Populära bokserier
    • Barnbokskaraktärer
    • Populära författare

    Mina sidor

      Hjälp

      • Kundservice
      • Vanliga frågor och svar
      • Frakt och leverans
      • Retur vid ångerrätt
      • Reklamera vara
      • Betalning
      • Köpvillkor
      • Allmänna villkor
      • Information om webbplatsens tillgänglighet

      Om Bokus

      • Om oss
      • Pressrum
      • För studenter
      • För företag
      • För bibliotek och offentlig verksamhet
      • För leverantörer
      • Hållbarhet

      Populärt

      • Aktuella erbjudanden
      • Presentkort
      • Studentlitteratur
      • Nya böcker
      • Topplistor
      • Signerade böcker
      • Engelska böcker

      Inspiration

      • Boktips
      • BookTok
      • Populära bokserier
      • Barnbokskaraktärer
      • Populära författare
      Logotyp för Bokus
      Följ oss på Facebook (extern länk)Följ oss på Instagram (extern länk)Följ oss på YouTube (extern länk)Följ oss på TikTok (extern länk)
      bokus @ CookiesAnpassa cookiesIntegritetspolicyKöpvillkor
      Till Citymail hemsida (extern länk)Till Budbee hemsida (extern länk)Till Postnord hemsida (extern länk)Till Schenker hemsida (extern länk)Till Early Bird hemsida (extern länk)Till Walleys hemsida (extern länk)
      1. Data och IT
      2. Operativsystem

      Linux Application Development by Example

      The Fundamental APIs

      AvArnold Robbins

      Häftad, Engelska, 2025

      451 kr

      Beställningsvara. Skickas inom 7-10 vardagar. Fri frakt över 249 kr.

      Beskrivning

      Unlock the secrets of Linux system programming and take your coding skills to the next level

      • Do you use Linux, but not really understand it?
      • Have you ever wondered how ls -l knows everything it does?
      • Could you explain to a coworker why ls and find can be external commands but cd and umask must be built into the shell?

      The answers to these questions, and more, are in Linux Application Development by Example, Second Edition! This book tells you exactly what you need to know--no more and no less--about the fundamental Linux system programming APIs.

      Following the latest POSIX standard, author Arnold Robbins explains how the basic file, process, IPC and networking APIs work. When possible, he demonstrates the use of the APIs with code drawn from real programs (V7 Unix, BSD Unix, and GNU), and when that's not possible, he provides small, clearly documented and annotated, standalone example programs of his own. All code presented in the book is available for download, so you can compile, run, and modify the programs yourself.

      Robbins focuses on both high-level principles and "under the hood" techniques. Along the way, he carefully addresses real-world issues like performance, portability, and robustness.

      Each chapter closes with exercises, ranging from coding problems to thought experiments, to help you cement your understanding of the material covered, and all chapters have been thoroughly revised and updated for this edition, along with two chapters new in this edition.

      • Memory management
      • File I/O
      • File metadata
      • Processes, Users and groups
      • Sorting and searching
      • Argument parsing
      • Extended interfaces
      • Signals
      • Internationalization
      • Basic Networking
      • Debugging
      • And more!

      Just learning to program? Switching from Windows or macOS? Already developing with Linux but interested in exploring the system call interface further? No matter which, quickly and directly, this book will help you master the fundamentals needed to build serious Linux software.

      "It's rare that I read a programming book and find myself enjoying it. I enjoyed going through this manuscript, to the point where I would be surprised that a couple hours would go by while I was absorbed in the topics.... It deserves to sit on my shelf alongside other classics."
      --Matthew Helmke, Linux author and consultant

      With a Foreword by Chet Ramey, maintainer of the Bash shell

      Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.

      Produktinformation

      • Utgivningsdatum:2025-11-13
      • Mått:189 x 232 x 40 mm
      • Vikt:1 350 g
      • Format:Häftad
      • Språk:Engelska
      • Antal sidor:736
      • Upplaga:2
      • Förlag:Pearson Education
      • ISBN:9780135325520

      Utforska kategorier

      • Operativsystem inom Data och IT

      Mer om författaren

      Arnold Robbins is a professional software engineer and technical author. He has been working with Unix systems of various sorts, GNU/Linux systems, C, C++, and all the other major Unix tools since 1980. As a long-time volunteer for the GNU project, he has been the maintainer of gawk (GNU Awk) for many years. In 2024, he was awarded the USENIX Lifetime Achievement Award ("The Flame") for his work on GNU Awk and for his numerous books on topics related to Unix and Linux.

      Recensioner i media

      Praise for the Second Edition"This may be the most clearly written narrative-style coverage of the topic that I have encountered and one of the most complete that is not solely a reference work."[The book] has forced me to think differently about some of these topics and how they build on one another. It's almost like when I studied LISP way back when and it turned all my thinking about programming on its head. Thank you! It is a privilege to review this."This is one of the better-crafted tech books I've reviewed across two decades. The exercises consistently help the reader focus on specific things in the text and gently struggle and learn concepts that might otherwise slip through the cracks. I failed to find any exercise that I would delete and can't think of any I would add."--Matthew Helmke, Linux author and consultantPraise for the First Edition"This is an excellent introduction to Linux programming. The topics are well chosen and lucidly presented. I learned things myself, especially about internationalization, and I've been at this for quite a while."--Chet Ramey, coauthor and maintainer of the Bash shell"This is a good introduction to Linux programming. Arnold's technique of showing how experienced programmers use the Linux programming interfaces is a nice touch, much more useful than the canned programming examples found in most books."--Ulrich Drepper, project lead, GNU C library"A gentle yet thorough introduction to the art of UNIX system programming, Linux Programming by Example uses code from a wide range of familiar programs to illustrate each concept it teaches. Readers will enjoy an interesting mix of in-depth API descriptions and portability guidelines, and will come away well prepared to begin reading and writing systems applications. Heartily recommended."--Jim Meyering, coauthor and maintainer of the GNU Core Utility Programs

      Innehållsförteckning

      • Foreword xvPreface xviiPart I: Files and Users 1Chapter 1: Introduction 31.1 The Linux/Unix File Model 31.2 The Linux/Unix Process Model 71.3 Standard C versus Original C 91.4 Why GNU Programs Are Better 131.5 Portability Revisited 171.6 Some Words about Coding Style 181.7 Artificial Intelligence Isn't Intelligent 191.8 Suggested Reading 191.9 Summary 20Exercises 21Chapter 2: Arguments, Options, and the Environment 232.1 Option and Argument Conventions 232.2 Basic Command-Line Processing 262.3 Option Parsing: getopt() and getopt_long() 282.4 The Environment 372.5 Summary 49Exercises 49Chapter 3: User-Level Memory Management 513.1 Linux/Unix Address Space 513.2 Memory Allocation 553.3 Summary 76Exercises 77Chapter 4: Files and File I/O 794.1 Introducing the Linux/Unix I/O Model 794.2 Presenting a Basic Program Structure 794.3 Determining What Went Wrong 814.4 Doing Input and Output 874.5 Random Access: Moving Around within a File 964.6 Creating Files 1014.7 Forcing Data to Disk 1064.8 Setting File Length 1074.9 Summary 108Exercises 109Chapter 5: Directories and File Metadata 1115.1 Considering Directory Contents 1115.2 Creating and Removing Directories 1215.3 Reading Directories 1235.4 Obtaining Information about Files 1305.5 Avoiding Race Conditions: openat() and Friends 1445.6 Changing Ownership, Permission, and Modification Times 1455.7 Summary 151Exercises 153Chapter 6: General Library Interfaces--Part 1 1556.1 Times and Dates 1556.2 Sorting and Searching Functions 1716.3 User and Group Names 1906.4 Terminals: isatty() 1966.5 Suggested Reading 1966.6 Summary 197Exercises 198Chapter 7: Putting It All Together: ls 2017.1 V7 ls Options 2017.2 V7 ls Code 2027.3 Summary 218Exercises 218Chapter 8: Filesystems and Directory Walks 2218.1 Mounting and Unmounting Filesystems 2218.2 Files for Filesystem Administration 2288.3 Retrieving Per-Filesystem Information 2348.4 Moving Around in the File Hierarchy 2478.5 Processing a File Hierarchy: GNU du 2618.6 Changing the Root Directory: chroot() 2698.7 Summary 270Exercises 271Part II: Processes, Networking, and Internationalization 273Chapter 9: Process Management and Pipes 2759.1 Process Creation and Management 2759.2 Process Groups 3009.3 Basic Interprocess Communication: Pipes and FIFOs 3029.4 File Descriptor Management 3079.5 Example: Two-Way Pipes in gawk 3239.6 Suggested Reading 3279.7 Summary 328Exercises 330Chapter 10: Signals 33310.1 Introduction 33310.2 Signal Actions 33310.3 Standard C Signals: signal() and raise() 33410.4 Signal Handlers in Action 33710.5 The System V Release 3 Signal APIs: sigset() et al. 34910.6 POSIX Signals 35010.7 Signals for Interprocess Communication 36010.8 Important Special-Purpose Signals 36310.9 Signals across fork() and exec() 37810.10 Summary 379Exercises 381Chapter 11: Permissions and User and Group ID Numbers 38311.1 Checking Permissions 38311.2 Retrieving User and Group IDs 38511.3 Checking as the Real User: access() 38811.4 Setting Extra Permission Bits for Directories 39111.5 Setting Real and Effective IDs 39311.6 Working with All Three IDs: getresuid() and setresuid() (Linux) 39811.7 Crossing a Security Minefield: Setuid root 39911.8 Suggested Reading 40011.9 Summary 401Exercises 403Chapter 12: Resource Limits 40512.1 Introduction 40512.2 System Limits: sysconf(), pathconf(), and fpathconf() 40512.3 Getting Configuration String Variables: confstr() 41112.4 Basic Process Limits: ulimit() 41312.5 Hard and Soft Limits: getrlimit() and setrlimit() 41412.6 Summary 417Exercises 418Chapter 13: General Library Interfaces--Part 2 41913.1 Assertion Statements: assert() 41913.2 Low-Level Memory: The memXXX() Functions 42313.3 Temporary Files 42613.4 Committing Suicide: abort() 43413.5 Nonlocal Gotos 43513.6 Pseudorandom Numbers 44213.7 Metacharacter Expansions 45013.8 Regular Expressions 45913.9 Suggested Reading 46713.10 Summary 468Exercises 469Chapter 14: Sockets and Basic Networking 47314.1 Introduction, with a Little Bit of History 47314.2 Networking Technologies 47414.3 Internet Building Blocks 47414.4 Networking and Client/Server 47714.5 Basic Structure of a Server Program 47814.6 Basic Structure of a Client Program 48814.7 Specialized Send and Receive Functions 49214.8 Handling Multiple Open Connections: select() 49414.9 pselect(): A Smarter Version of select() 50114.10 Unix-Domain Sockets 50214.11 Suggested Reading 50214.12 Summary 503Exercises 504Chapter 15: Internationalization and Localization 50715.1 Introduction 50715.2 Locales and the C Library 50815.3 Dynamic Translation of Program Messages 52615.4 Can You Spell That for Me, Please? 54015.5 Suggested Reading 55315.6 Summary 553Exercises 555Chapter 16: Extended Interfaces 55716.1 Allocating Aligned Memory: posix_memalign() and memalign() 55716.2 Locking Files 55816.3 More Precise Times 56716.4 Advanced Searching with Binary Trees 57516.5 Summary 586Exercises 587Part III: Debugging and Final Project 589Chapter 17: Debugging 59117.1 First Things First 59117.2 Compilation for Debugging 59217.3 GDB Basics 59317.4 Programming for Debugging 60617.5 Debugging Tools I: A Modern lint 63217.6 Debugging Tools II: Memory Allocation Debuggers 63317.7 Asking for Help 65017.8 Software Testing 65117.9 Debugging Rules 65317.10 Suggested Reading 65517.11 Summary 656Exercises 657Chapter 18: A Project That Ties Everything Together 65918.1 Project Description 65918.2 Suggested Reading 661Part IV: Appendices 663Appendix A: Teach Yourself Programming in Ten Years 665Appendix B: Caldera Ancient UNIX License 671Appendix C: GNU General Public License 673Appendix D: License for the One True Awk 685Appendix E: License for 4.4 BSD Code 687Index 689
      Hoppa över listan

      Mer från samma författare

      Arnold Robbins - Bash Pocket Reference 2e, Häftad
      • -10% student

      Bash Pocket Reference 2e

      Arnold Robbins

      Häftad, 2016

      250 kr

      Elbert Hannah, Arnold Robbins - Learning the vi and Vim Editors, E-bok

      Learning the vi and Vim Editors

      Elbert Hannah, Arnold Robbins

      E-bok
      2021

      473 kr

      Arnold Robbins - Gdb Pocket Reference, Häftad

      Gdb Pocket Reference

      Arnold Robbins

      Häftad, 2005

      154 kr

      Arnold Robbins - sed & awk Pocket Reference, Häftad

      sed & awk Pocket Reference

      Arnold Robbins

      Häftad, 2002

      154 kr

      Arnold Robbins - Classic Shell Scripting, Häftad

      Classic Shell Scripting

      Arnold Robbins

      Häftad, 2005

      374 kr

      Arnold Robbins - UNIX in a Nutshell, Häftad

      UNIX in a Nutshell

      Arnold Robbins

      Häftad, 2005

      337 kr

      Nelson H. F. Beebe, Arnold Robbins - Classic Shell Scripting, E-bok

      Classic Shell Scripting

      Nelson H. F. Beebe, Arnold Robbins

      E-bok
      2005

      351 kr

      Arnold Robbins - bash Quick Reference, E-bok

      bash Quick Reference

      Arnold Robbins

      E-bok
      2006

      107 kr

      Arnold Robbins - GDB Pocket Reference, E-bok

      GDB Pocket Reference

      Arnold Robbins

      E-bok
      2005

      100 kr

      Arnold Robbins - sed and awk Pocket Reference, E-bok

      sed and awk Pocket Reference

      Arnold Robbins

      E-bok
      2002

      100 kr

      Hoppa över listan

      Du kanske också är intresserad av

      Arnold Robbins - vi Editor Pocket Reference, E-bok

      vi Editor Pocket Reference

      Arnold Robbins

      E-bok
      1999

      84 kr

      Arnold Robbins - Unix in a Nutshell, E-bok

      Unix in a Nutshell

      Arnold Robbins

      E-bok
      2005

      343 kr

      Arnold Robbins, Robert Love, Stephen Figgins, Ellen Siever - Linux in a Nutshell, E-bok

      Linux in a Nutshell

      Arnold Robbins, Robert Love, Stephen Figgins, Ellen Siever

      E-bok
      2009

      442 kr

      Arnold Robbins - vi and Vim Editors Pocket Reference, E-bok

      vi and Vim Editors Pocket Reference

      Arnold Robbins

      E-bok
      2011

      146 kr

      Arnold Robbins - sed & awk Pocket Reference, Häftad

      sed & awk Pocket Reference

      Arnold Robbins

      Häftad, 2002

      154 kr

      Arnold Robbins - Classic Shell Scripting, Häftad

      Classic Shell Scripting

      Arnold Robbins

      Häftad, 2005

      374 kr

      Arnold Robbins - GDB Pocket Reference, E-bok

      GDB Pocket Reference

      Arnold Robbins

      E-bok
      2005

      100 kr

      Arnold Robbins - Effective awk Programming, E-bok

      Effective awk Programming

      Arnold Robbins

      E-bok
      2015

      427 kr

      Arnold Robbins - vi and Vim Editors Pocket Reference, E-bok

      vi and Vim Editors Pocket Reference

      Arnold Robbins

      E-bok
      2011

      145 kr

      Arnold Robbins, Dale Dougherty - sed & awk, E-bok

      sed & awk

      Arnold Robbins, Dale Dougherty

      E-bok
      1997

      390 kr