Pdf linux system programming talking directly to the kernel and c library

Linux System Programming: Talking Directly to the Kernel and C Library, 2nd Edition

Linux System Programming: Talking Directly to the Kernel and C Library, 2nd Edition

Write software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider’s guide to writing smarter, faster code.
Love clearly distinguishes between POSIX standard functions and special services offered only by Linux. With a new chapter on multithreading, this updated and expanded edition provides an in-depth look at Linux from both a theoretical and applied perspective over a wide range of programming topics, including:

  • A Linux kernel, C library, and C compiler overview
  • Basic I/O operations, such as reading from and writing to files
  • Advanced I/O interfaces, memory mappings, and optimization techniques
  • The family of system calls for basic process management
  • Advanced process management, including real-time processes
  • Thread concepts, multithreaded programming, and Pthreads
  • File and directory management
  • Interfaces for allocating memory and optimizing memory access
  • Basic and advanced signal interfaces, and their role on the system
  • Clock management, including POSIX clocks and high-resolution timers

Resolve the captcha to access the links!

Источник

Linux System Programming: Talking Directly to the Kernel and C Library Second Edition

This post was published 4 years ago. Download links are most likely obsolete. If that’s the case, try asking the uploader to re-upload.

Linux System Programming: Talking Directly to the Kernel and C Library Second Edition

English | ISBN: 9781449341527 | 456 pages | May 14, 2013 | EPUB | 0.75 MB

Write software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider’s guide to writing smarter, faster code.

Love clearly distinguishes between POSIX standard functions and special services offered only by Linux. With a new chapter on multithreading, this updated and expanded edition provides an in-depth look at Linux from both a theoretical and applied perspective over a wide range of programming topics, including:

Читайте также:  Линукс операционная система для слабых компьютеров

A Linux kernel, C library, and C compiler overview
Basic I/O operations, such as reading from and writing to files
Advanced I/O interfaces, memory mappings, and optimization techniques
The family of system calls for basic process management
Advanced process management, including real-time processes
Thread concepts, multithreaded programming, and Pthreads
File and directory management
Interfaces for allocating memory and optimizing memory access
Basic and advanced signal interfaces, and their role on the system
Clock management, including POSIX clocks and high-resolution timers

Download from free file storage

Resolve the captcha to access the links!

Registered members don’t get captcha . just sayin

Источник

Linux System Programming: Talking Directly to the Kernel and C Library, 2nd Edition

Linux System Programming: Talking Directly to the Kernel and C Library, 2nd Edition

Write software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider’s guide to writing smarter, faster code.
Love clearly distinguishes between POSIX standard functions and special services offered only by Linux. With a new chapter on multithreading, this updated and expanded edition provides an in-depth look at Linux from both a theoretical and applied perspective over a wide range of programming topics, including:

  • A Linux kernel, C library, and C compiler overview
  • Basic I/O operations, such as reading from and writing to files
  • Advanced I/O interfaces, memory mappings, and optimization techniques
  • The family of system calls for basic process management
  • Advanced process management, including real-time processes
  • Thread concepts, multithreaded programming, and Pthreads
  • File and directory management
  • Interfaces for allocating memory and optimizing memory access
  • Basic and advanced signal interfaces, and their role on the system
  • Clock management, including POSIX clocks and high-resolution timers

Resolve the captcha to access the links!

Источник

Linux System Programming: Talking Directly to the Kernel and C Library PDF

ebook img

Preview Linux System Programming: Talking Directly to the Kernel and C Library

www.it-ebooks.info www.it-ebooks.info LINUX System Programming www.it-ebooks.info Other Linux resources from O’Reilly Related titles Building Embedded Linux Programming Embedded Systems Systems Designing Embedded Running Linux Hardware Understanding Linux Linux Device Drivers Network Internals Linux Kernel in a Nutshell Understanding the Linux Kernel Linux Books linux.oreilly.com is a complete catalog of O’Reilly’s books on Resource Center Linux and Unix and related technologies, including sample chapters and code examples. ONLamp.com isthe premiersiteforthe opensource web plat- form: Linux, Apache, MySQL and either Perl, Python, or PHP. Conferences O’Reillybringsdiverseinnovatorstogethertonurturetheideas thatsparkrevolutionaryindustries.Wespecializeindocument- ing the latest tools and systems, translating the innovator’s knowledgeintousefulskillsforthoseinthetrenches.Visitcon- ferences.oreilly.com for our upcoming events. Safari Bookshelf (safari.oreilly.com) is the premier online refer- ence library for programmers and IT professionals. Conduct searchesacrossmorethan1,000books.Subscriberscanzeroin on answers to time-critical questions in a matter of seconds. Read the books on your Bookshelf from cover to cover or sim- ply flip to the page you need. Try it today for free. www.it-ebooks.info LINUX System Programming Robert Love Beijing • Cambridge • Farnham • Köln • Paris • Sebastopol • Taipei • Tokyo www.it-ebooks.info Linux System Programming by Robert Love Copyright © 2007 O’Reilly Media, Inc. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (safari.oreilly.com). For more information, contact our corporate/institutional sales department: (800) 998-9938 [email protected]. Editor: Andy Oram Indexer: John Bickelhaupt Production Editor: Sumita Mukherji Cover Designer: Karen Montgomery Copyeditor: Rachel Head Interior Designer: David Futato Proofreader: Sumita Mukherji Illustrator: Jessamyn Read Printing History: September 2007: First Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. TheLinux series designations,Linux System Programming, images of the man in the flying machine, and related trade dress are trademarks of O’Reilly Media, Inc. Manyofthedesignationsusedbymanufacturersandsellerstodistinguishtheirproductsareclaimedas trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. Whileeveryprecautionhasbeentakeninthepreparationofthisbook,thepublisherandauthorassume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein. This book uses RepKover™, a durable and flexible lay-flat binding. ISBN-10: 0-596-00958-5 ISBN-13: 978-0-596-00958-8 [M] www.it-ebooks.info Table of Contents Foreword. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 1. Introduction and Essential Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 System Programming 1 APIs and ABIs 4 Standards 6 Concepts of Linux Programming 9 Getting Started with System Programming 22 2. File I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Opening Files 24 Reading via read() 29 Writing with write() 33 Synchronized I/O 37 Direct I/O 40 Closing Files 41 Seeking with lseek() 42 Positional Reads and Writes 44 Truncating Files 45 Multiplexed I/O 47 Kernel Internals 57 Conclusion 61 v www.it-ebooks.info 3. Buffered I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 User-Buffered I/O 62 Standard I/O 64 Opening Files 65 Opening a Stream via File Descriptor 66 Closing Streams 67 Reading from a Stream 67 Writing to a Stream 70 Sample Program Using Buffered I/O 72 Seeking a Stream 74 Flushing a Stream 75 Errors and End-of-File 76 Obtaining the Associated File Descriptor 77 Controlling the Buffering 77 Thread Safety 79 Critiques of Standard I/O 81 Conclusion 82 4. Advanced File I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Scatter/Gather I/O 84 The Event Poll Interface 89 Mapping Files into Memory 95 Advice for Normal File I/O 108 Synchronized, Synchronous, and Asynchronous Operations 111 I/O Schedulers and I/O Performance 114 Conclusion 125 5. Process Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 The Process ID 126 Running a New Process 129 Terminating a Process 136 Waiting for Terminated Child Processes 139 Users and Groups 149 Sessions and Process Groups 154 Daemons 159 Conclusion 161 vi | Table of Contents www.it-ebooks.info 6. Advanced Process Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Process Scheduling 162 Yielding the Processor 166 Process Priorities 169 Processor Affinity 172 Real-Time Systems 176 Resource Limits 190 7. File and Directory Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Files and Their Metadata 196 Directories 212 Links 223 Copying and Moving Files 228 Device Nodes 231 Out-of-Band Communication 233 Monitoring File Events 234 8. Memory Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 The Process Address Space 243 Allocating Dynamic Memory 245 Managing the Data Segment 255 Anonymous Memory Mappings 256 Advanced Memory Allocation 260 Debugging Memory Allocations 263 Stack-Based Allocations 264 Choosing a Memory Allocation Mechanism 268 Manipulating Memory 269 Locking Memory 273 Opportunistic Allocation 277 9. Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Signal Concepts 280 Basic Signal Management 286 Sending a Signal 291 Reentrancy 293 Signal Sets 295 Blocking Signals 296 Table of Contents | vii www.it-ebooks.info Advanced Signal Management 298 Sending a Signal with a Payload 305 Conclusion 306 10. Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 Time’s Data Structures 310 POSIX Clocks 313 Getting the Current Time of Day 315 Setting the Current Time of Day 318 Playing with Time 320 Tuning the System Clock 321 Sleeping and Waiting 324 Timers 330 Appendix. GCC Extensions to the C Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 Bibliography. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 viii | Table of Contents www.it-ebooks.info

Читайте также:  Linux see kernel version

Similar Linux System Programming: Talking Directly to the Kernel and C Library

Most Popular

Latest upload

DMCA & Copyright: Dear all, most of the website is community built, users are uploading hundred of books everyday, which makes really hard for us to identify copyrighted material, please contact us if you want any material removed.

DMCA.com Protection Status

Copyright @ PDFdrive.to, 2022 | We love our users

Источник

Оцените статью
Adblock
detector