C is what the world is breathing today. And Books on C are filling book shelves like believers converging on a Holy bank. But here's a Pilgrimage that's a different kind of voyage. The C Odyssey. Written in a easy, riveting and readable style, the book touches heights that few have reached, and offers insights that Nobody has divined.
The C Odyssey is for (hose who'd like to Learn C and for those who have learnt C. Garnished with small programs, followed by in-depth explanations, the journey takes the beginner by the hand, breaking him into the mold, taking him up to a point, and letting him free to explore on his own. The platform covered is wide and diverse. From C under DOS to C under UNIX, Windows, OS/2, and its interfaces with networking and relational databases.
The Odyssey has a seven stop itinerary. Unserialized and distinct, but threaded by thin silken Bonds to each other. The saga is a lengthy one, through lands that have been visited separately before. Speaking the same Language from different podiums, they abet an undisrupted flow of thought.
Odyssey 3 : UNIX-The Open, Boundless C. :
UNIX is the much maligned, debated and devoured entity today. An operating system that was possible only through C, it has always been dealt with rather cursorily.
Most C Under Unix Books merely skimmed the surface, instead of cashing in on the opportunity to take a trip down to the Philosophy of C, so easily reached through UNIX.
This volume takes you through the innards, questioning the gist of internal data structures like stat, ustat, suid-bit control, file and record-level locking, IPCs like pipes, named pipes, semaphores, shared Memory and message queues.
The Summit is reached with a fairly detailed inquiry into curses. The graphical Face in UNIX, a very low profile GUI.
Contents
Introduction
I. Unix : THE MULTI-TASKING OPERATING SYSTEM :
1. Multi-tasking
2. Background Process
3. Process Identification
4. Parent and Child
5. The 'Fork()'
6. Orphan Process
7. Zombies
8. A "Sleeping Beauty" Process
9. Process Synchronization
10. Core Dump
11. Back to the ‘Fork()'
12. Sharing Data Between Processes Using Files
13. File Buffering
14. The 'Exec()' Function
15. Terminal and File Buffering
16. The 'Execv()' Function
17. The 'Execvp()' Function
18. Environment Block
19. The 'Exec()’ Called through A fork()'
II. UNIX : THE MULTI-USER OPERATING SYSTEM :
1. Booting Up
2. UNIX Copyright
3. User Details
4. Group ID
5. Time
6. Process Group ID
7. Why, Background Processes
8. A Tribute to Cuckoo's Nest
9. UNIX's View Of Disks and Devices
10. Root File System :
i. Boot Block
ii. Super Block
iii. Inode Table
iv. Data Blocks
11. File Permissions
12. Data Security and the 'Suid' Bit
13. Links
III. ON FILES :
1. Unlocked Confusion
2. One at a Time Please
3. Explicit Unlocking
4. A Sign to Ease the Suspense
5. F_TEST Will Tell Us
6. Read Inconsistency
7. Range Locking
8. Action Stations...Deadlock !!!
9. System Lock Table
10. More Control Over a File
11. Permissions and File Locking
12. Conclusion
IV. COMMUNICATING ACROSS PROCESSES :
1. Signals
2. Signal Handling
3. Illegal Instruction Handling
4. About 'SIGHUF
5. About 'SIGCLD'
6. About 'SIGALRM'
7. KILL!!
8. Open Signals
9. Pipes
10. ‘Lseek()'and Pipes
11. Many Processes and One Pipe
12. Sorting Using Pipes
13. The 'Popen()'
14. Named Pipes
15. Conclusion : Signals and Pipes
16. Message Queues
17. Creating a Message Queue
18. Queue Permissions
19. UNIX's Queue Numbering System
20. Information about the Queue
21. Sending A Message
22. And Now to Receive A Message
23. Message in A Bottle
24. A Sense of Priority
25. The Queue for Telecommunication
26. A Printer Spooler
27. Conclusion : Message Queues
28. Semaphores
29. Creating A Semaphore
30. Semaphore Exclusivity
31. Intricacy of Semaphore Permissions
32. Getting and Setting Semaphore Values
33. Who is Using the Resource ?
34. Atomicity through Structures
35. Semaphore Arithmetic
36. Don't Let an Unsuccessful 'Semop()' Stop Us
37. The Importance of Resetting
38. Semaphore Structures
39. Down Memory Lane
40. Conclusion : Semaphores
41. Shared Memory
42. Creating A Shared Memory Segment
43. The Amoeba Devours
44. Hardware and Shared Memory
45. Getting Rid of the Segment
46. Changing User ID and Group ID of Segment
47. Just A Shared Memory Segment Away
48. Conclusion : Shared Memory
V. THE LEFTOVERS :
1. The 'Mknod()'
2. The 'Nice()’
3. The 'Clock()'
4. The 'Ulimit()’
5. The ‘Fcntl()'
6. The ‘Ftw()'
7. The 'Access()’
8. The 'clearerr()’
9. The ‘Memccpy()'
10. The Memset()’
11. The 'Mktemp()’
12. The 'Getpass()'
13. About 'Setjmp()'and ‘Longjmp()’
14. The ‘Ioctl()'
15. Conclusion
VI. ON CURSES :
1. About Curses
2. Switching to ETI
3. Enter, A Character
4. From Characters to Strings
5. BEEP...’Beep()
6. Do Not Disturb!
7. Fooling Around With the Cursor
8. Cosmetic Changes
9. Enter, the Window
10. Windows On the Move
11. Eating 'Em RAW
12. Having Fun With Attributes
13. About Ourselves and How Fast We are
14. Controlling the Cursor
15. The Screen
| Book : | The ’C’ Odyssey: UNIX-The Open Boundless C, Vol. III |
Book ID :51682
Author :Meeta Gandhi,Rajiv Shah,Tilak Shety,Vijay Mukhi
ISBN 13 :9788170291657
Year of Publication :2008
Edition :-
Publisher :BPB Publications
Binding :Softcover
Pages :555
Size :-
Weight :1 Kg.