
نویسنده |
Michael Kerrisk |
---|---|
سال انتشار |
2010 |
تعداد صفحات |
1556 |
سطح کتاب |
پیشرفته |
زبان کتاب |
انگلیسی |
حجم فایل |
7.4MB |
مطالعه کنید
درباره کتاب The Linux Programming Interface:
کتاب The Linux Programming Interface نوشته Michael Kerrisk یکی از جامعترین و معتبرترین منابع برای یادگیری برنامهنویسی سیستمی در لینوکس و یونیکس است. این کتاب با رویکردی عمیق و کاربردی، تمامی جنبههای برنامهنویسی سطح پایین، از جمله کار با فایلها، پردازشها، حافظه، سیگنالها، نخها (Threads)، ارتباط بین پردازشی (IPC)، سوکتها و شبکه را به صورت گامبهگام و با مثالهای عملی آموزش میدهد. نویسنده که خود از توسعهدهندگان و مستندسازان اصلی لینوکس است، با دقت و جزئیات فراوان، استانداردهای POSIX و تفاوتهای لینوکس با سایر یونیکسها را نیز پوشش داده است.خلاصه کتاب The Linux Programming Interface:
در این کتاب ابتدا مفاهیم پایهای و تاریخچه لینوکس و یونیکس، استانداردهای برنامهنویسی و ساختار سیستم عامل معرفی میشود. سپس، مباحث کلیدی مانند مدیریت فایلها و دایرکتوریها، ورودی/خروجی، پردازشها و نخها، مدیریت حافظه، سیگنالها، کنترل دسترسی، و مدیریت منابع سیستم به صورت کامل و با مثالهای کدنویسی در زبان C آموزش داده میشود. هر فصل با تمرینها و مثالهای عملی به پایان میرسد تا خواننده بتواند مفاهیم را به صورت عملی پیادهسازی کند. در بخشهای پیشرفتهتر کتاب به موضوعاتی مانند ارتباط بین پردازشی (IPC)، سوکتنویسی و برنامهنویسی شبکه، مدلهای مختلف I/O، مدیریت ترمینالها و پودوترمینالها و امنیت برنامههای سیستمی میپردازد. همچنین، تفاوتهای لینوکس با سایر یونیکسها و نکات مربوط به پرتابلیتی (قابلیت حمل برنامهها بین سیستمعاملها) به طور کامل بررسی شده است. این کتاب یک مرجع بینظیر برای برنامهنویسان حرفهای، دانشجویان رشته کامپیوتر و هر کسی است که میخواهد به صورت عمیق با برنامهنویسی سیستمی در لینوکس و یونیکس آشنا شود.فهرست مطالب کتاب The Linux Programming Interface:
Preface
Chapter 1: History and Standards
Chapter 2: Fundamental Concepts .
Chapter 3: System Programming Concepts.
Chapter 4: File I/O: The Universal I/O Model
Chapter 5: File I/O: Further Details
Chapter 6: Processes
Chapter 7: Memory Allocation.
Chapter 8: Users and Groups
Chapter 9: Process Credentials
Chapter 10: Time.
Chapter 11: System Limits and Options
Chapter 12: System and Process Information
Chapter 13: File I/O Buffering.
Chapter 14: File Systems
Chapter 15: File Attributes
Chapter 16: Extended Attributes
Chapter 17: Access Control Lists
Chapter 18: Directories and Links
Chapter 19: Monitoring File Events
viii Brief Contents
Chapter 20: Signals: Fundamental Concepts
Chapter 21: Signals: Signal Handlers
Chapter 22: Signals: Advanced Features
Chapter 23: Timers and Sleeping
Chapter 24: Process Creation
Chapter 25: Process Termination
Chapter 26: Monitoring Child Processes
Chapter 27: Program Execution.
Chapter 28: Process Creation and Program Execution in More Detail.
Chapter 29: Threads: Introduction
Chapter 30: Threads: Thread Synchronization
Chapter 31: Threads: Thread Safety and Per-Thread Storage
Chapter 32: Threads: Thread Cancellation.
Chapter 33: Threads: Further Details
Chapter 34: Process Groups, Sessions, and Job Control
Chapter 35: Process Priorities and Scheduling
Chapter 36: Process Resources
Chapter 37: Daemons
Chapter 38: Writing Secure Privileged Programs
Chapter 39: Capabilities
Chapter 40: Login Accounting
Chapter 41: Fundamentals of Shared Libraries
Chapter 42: Advanced Features of Shared Libraries
Chapter 43: Interprocess Communication Overview
Chapter 44: Pipes and FIFOs
Chapter 45: Introduction to System V IPC
Chapter 46: System V Message Queues
Brief Contents ix
Chapter 47: System V Semaphores
Chapter 48: System V Shared Memory
Chapter 49: Memory Mappings
Chapter 50: Virtual Memory Operations
Chapter 51: Introduction to POSIX IPC.
Chapter 52: POSIX Message Queues
Chapter 53: POSIX Semaphores
Chapter 54: POSIX Shared Memory
Chapter 55: File Locking.
Chapter 56: Sockets: Introduction
Chapter 57: Sockets: UNIX Domain
Chapter 58: Sockets: Fundamentals of TCP/IP Networks
Chapter 59: Sockets: Internet Domains
Chapter 60: Sockets: Server Design
Chapter 61: Sockets: Advanced Topics
Chapter 62: Terminals
Chapter 63: Alternative I/O Models
Chapter 64: Pseudoterminals
Appendix A: Tracing System Calls
Appendix B: Parsing Command-Line Options
Appendix C: Casting the NULL Pointer
Appendix D: Kernel Configuration
Appendix E: Further Sources of Information
Appendix F: Solutions to Selected Exercises
Bibliography
Index