注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)Linux內(nèi)核API完全參考手冊(第2版)

Linux內(nèi)核API完全參考手冊(第2版)

Linux內(nèi)核API完全參考手冊(第2版)

定 價:¥99.00

作 者: 邱鐵,周玉
出版社: 機械工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787111548775 出版時間: 2016-10-01 包裝:
開本: 16開 頁數(shù): 640 字?jǐn)?shù):  

內(nèi)容簡介

  本書基于zui新的Linux內(nèi)核源代碼3.19.3版本,對常用的內(nèi)核API作了系統(tǒng)歸納,并編寫了典型驗證程序,使理論分析與實際編程做到了統(tǒng)一。分析的內(nèi)核API模塊包括:模塊機制內(nèi)核API、進(jìn)程管理內(nèi)核API、進(jìn)程調(diào)度內(nèi)核API、中斷與異常機制內(nèi)核API、時間與定時機制內(nèi)核API、內(nèi)存管理內(nèi)核API、內(nèi)核同步機制API、文件系統(tǒng)內(nèi)核API和設(shè)備驅(qū)動與設(shè)備管理模塊內(nèi)核API。

作者簡介

暫缺《Linux內(nèi)核API完全參考手冊(第2版)》作者簡介

圖書目錄

前 言
第1章 Linux內(nèi)核API分析必備知識 1
1.1 Linux內(nèi)核編程注意事項 1
1.2 本書中模塊編譯Makefile模板 2
1.3 內(nèi)核調(diào)試函數(shù)printk 3
1.4 內(nèi)核編譯與定制 5
1.4.1 獲得Linux內(nèi)核與補丁 5
1.4.2 準(zhǔn)備編譯需要的工具 5
1.4.3 解壓內(nèi)核 6
1.4.4 給內(nèi)核打補丁 6
1.4.5 設(shè)定編譯選項 7
1.4.6 編譯與安裝內(nèi)核 9
1.4.7 創(chuàng)建initramfs 10
1.4.8 設(shè)置grub 11
1.4.9 啟動選項 12
1.5 溫馨提示 12
本章參考文獻(xiàn) 13
第2章 內(nèi)核模塊機制API 14
2.1 函數(shù):__module_address( ) 14
2.2 函數(shù):__module_text_address( ) 16
2.3 函數(shù):__print_symbol( ) 19
2.4 函數(shù):__symbol_get( ) 22
2.5 函數(shù):__symbol_put( ) 25
2.6 函數(shù):find_module( ) 27
2.7 函數(shù):find_symbol( ) 31
2.8 函數(shù):module_is_live( ) 36
2.9 函數(shù):module_put( ) 38
2.10 函數(shù):module_refcount( ) 40
2.11 函數(shù):sprint_symbol( ) 42
2.12 函數(shù):symbol_put_addr( ) 45
2.13 函數(shù):try_module_get( ) 48
本章參考文獻(xiàn) 50
第3章 Linux進(jìn)程管理內(nèi)核API 51
3.1 函數(shù):__task_pid_nr_ns( ) 51
3.2 函數(shù):find_get_pid( ) 54
3.3 函數(shù):find_pid_ns( ) 56
3.4 函數(shù):find_vpid( ) 58
3.5 函數(shù):get_pid( ) 60
3.6 函數(shù):get_task_mm( ) 62
3.7 函數(shù):mmput( ) 66
3.8 函數(shù):ns_of_pid( ) 68
3.9 函數(shù):pid_nr( ) 70
3.10 函數(shù):pid_task( ) 72
3.11 函數(shù):pid_vnr( ) 74
3.12 函數(shù):put_pid( ) 76
3.13 函數(shù):task_active_pid_ns( ) 78
3.14 函數(shù):task_tgid_nr_ns( ) 80
本章參考文獻(xiàn) 82
第4章 Linux 進(jìn)程調(diào)度內(nèi)核API 83
4.1 函數(shù):__wake_up( ) 83
4.2 函數(shù):__wake_up_sync( ) 88
4.3 函數(shù):__wake_up_sync_key( ) 91
4.4 函數(shù):abort_exclusive_wait( ) 94
4.5 函數(shù):add_wait_queue( ) 99
4.6 函數(shù):add_wait_queue_exclusive( ) 102
4.7 函數(shù):autoremove_wake_function( ) 105
4.8 函數(shù):complete( ) 109
4.9 函數(shù):complete_all( ) 112
4.10 函數(shù):completion_done( ) 115
4.11 函數(shù):current_thread_info( ) 118
4.12 函數(shù):default_wake_function( ) 121
4.13 函數(shù):do_exit( ) 124
4.14 函數(shù):finish_wait( ) 126
4.15 函數(shù):init_waitqueue_entry( ) 130
4.16 函數(shù):init_waitqueue_head( ) 132
4.17 函數(shù):kthread_create_on_node( ) 134
4.18 函數(shù):kthread_stop( ) 136
4.19 函數(shù):prepare_to_wait( ) 138
4.20 函數(shù):prepare_to_wait_exclusive( ) 142
4.21 函數(shù):remove_wait_queue( ) 147
4.22 函數(shù):sched_setscheduler( ) 150
4.23 函數(shù):set_cpus_allowed_ptr( ) 154
4.24 函數(shù):set_user_nice( ) 157
4.25 函數(shù):task_nice( ) 160
4.26 函數(shù):try_wait_for_completion( ) 162
4.27 函數(shù):wait_for_completion( ) 166
4.28 函數(shù):wait_for_completion_interruptible_timeout( ) 169
4.29 函數(shù):wait_for_completion_killable( ) 173
4.30 函數(shù):wait_for_completion_timeout( ) 177
4.31 函數(shù):wake_up_process( ) 180
4.32 函數(shù):yield( ) 183
本章參考文獻(xiàn) 185
第5章 Linux中斷機制內(nèi)核API 187
5.1 函數(shù):__tasklet_hi_schedule( ) 187
5.2 函數(shù):__tasklet_schedule( ) 190
5.3 函數(shù):disable_irq( ) 193
5.4 函數(shù):disable_irq_nosync( ) 193
5.5 函數(shù):disable_irq_wake( ) 196
5.6 函數(shù):enable_irq( ) 199
5.7 函數(shù):enable_irq_wake( ) 201
5.8 函數(shù):free_irq( ) 204
5.9 函數(shù):irq_set_chip( ) 205
5.10 函數(shù):irq_set_chip_data( ) 209
5.11 函數(shù):irq_set_irq_type( ) 212
5.12 函數(shù):irq_set_irq_wake( ) 214
5.13 函數(shù):remove_irq( ) 217
5.14 函數(shù):request_irq( ) 221
5.15 函數(shù):request_threaded_irq( ) 225
5.16 函數(shù):setup_irq( ) 229
5.17 函數(shù):tasklet_disable( ) 232
5.18 函數(shù):tasklet_disable_nosync( ) 234
5.19 函數(shù):tasklet_enable( ) 236
5.20 函數(shù):tasklet_hi_schedule( ) 237
5.21 函數(shù):tasklet_init( ) 241
5.22 函數(shù):tasklet_kill( ) 243
5.23 函數(shù):tasklet_schedule( ) 245
5.24 函數(shù):tasklet_trylock( ) 247
5.25 函數(shù):tasklet_unlock( ) 248
本章參考文獻(xiàn) 251
第6章 Linux內(nèi)存管理內(nèi)核API 252
6.1 函數(shù):__free_pages( ) 252
6.2 函數(shù):__get_free_pages( ) 253
6.3 函數(shù):__get_vm_area( ) 255
6.4 函數(shù):__krealloc( ) 258
6.5 函數(shù):alloc_pages( ) 261
6.6 函數(shù):alloc_pages_exact( ) 264
6.7 函數(shù):find_vma( ) 266
6.8 函數(shù):find_vma_intersection( ) 270
6.9 函數(shù):free_pages( ) 272
6.10 函數(shù):free_pages_exact( ) 273
6.11 函數(shù):get_unmapped_area( ) 274
6.12 函數(shù):get_zeroed_page( ) 276
6.13 函數(shù):kcalloc( ) 278
6.14 函數(shù):kfree( ) 280
6.15 函數(shù):kmalloc( ) 281
6.16 函數(shù):kmem_cache_alloc( ) 283
6.17 函數(shù):kmem_cache_create( ) 285
6.18 函數(shù):kmem_cache_destroy( ) 288
6.19 函數(shù):kmem_cache_free( ) 289
6.20 函數(shù):kmem_cache_zalloc( ) 290
6.21 函數(shù):kmemdup( ) 292
6.22 函數(shù):ksize( ) 295
6.23 函數(shù):kstrdup( ) 298
6.24 函數(shù):kstrndup( ) 299
6.25 函數(shù):kzalloc( ) 301
6.26 函數(shù):memdup_user( ) 303
6.27 函數(shù):mempool_alloc( ) 306
6.28 函數(shù):mempool_alloc_pages( ) 308
6.29 函數(shù):mempool_alloc_slab( ) 311
6.30 函數(shù):mempool_create( ) 313
6.31 函數(shù):mempool_destroy( ) 316
6.32 函數(shù):mempool_free( ) 317
6.33 函數(shù):mempool_free_pages( ) 318
6.34 函數(shù):mempool_free_slab( ) 318
6.35 函數(shù):mempool_kfree( ) 319
6.36 函數(shù):mempool_kmalloc( ) 320
6.37 函數(shù):mempool_resize( ) 322
6.38 函數(shù):nr_free_buffer_pages( ) 325
6.39 宏:page_address( ) 326
6.40 宏:page_cache_get( ) 328
6.41 宏:page_cache_release( ) 330
6.42 函數(shù):page_zone( ) 331
6.43 宏:probe_kernel_address( ) 334
6.44 函數(shù):probe_kernel_read( ) 336
6.45 函數(shù):vfree( ) 338
6.46 函數(shù):vma_pages( ) 339
6.47 函數(shù):vmalloc( ) 341
6.48 函數(shù):vmalloc_to_page( ) 343
6.49 函數(shù):vmalloc_to_pfn( ) 345
6.50 函數(shù):vmalloc_user( ) 347
本章參考文獻(xiàn) 349
第7章 Linux內(nèi)核定時機制API 350
7.1 函數(shù):__round_jiffies( ) 350
7.2 函數(shù):__round_jiffies_relative( ) 352
7.3 函數(shù):__round_jiffies_up( ) 354
7.4 函數(shù):__round_jiffies_up_relative( ) 356
7.5 函數(shù):add_timer( ) 358
7.6 函數(shù):current_kernel_time( ) 359
7.7 函數(shù):del_timer( ) 361
7.8 函數(shù):del_timer_sync( ) 364
7.9 函數(shù):do_gettimeofday( ) 367
7.10 函數(shù):do_settimeofday( ) 369
7.11 函數(shù):get_seconds( ) 372
7.12 函數(shù):getnstimeofday( ) 374
7.13 函數(shù):init_timer( ) 376
7.14 函數(shù):init_timer_deferrable( ) 378
7.15 函數(shù):init_timer_key( ) 380
7.16 函數(shù):init_timer_on_stack( ) 382
7.17 函數(shù):init_timer_on_stack_key( ) 385
7.18 函數(shù):mktime( ) 387
7.19 函數(shù):mod_timer( ) 389
7.20 函數(shù):mod_timer_pending( ) 392
7.21 函數(shù):ns_to_timespec( ) 394
7.22 函數(shù):ns_to_timeval( ) 396
7.23 函數(shù):round_jiffies( ) 398
7.24 函數(shù):round_jiffies_relative( ) 401
7.25 函數(shù):round_jiffies_up( ) 404
7.26 函數(shù):round_jiffies_up_relative( ) 406
7.27 函數(shù):set_normalized_timespec( ) 409
7.28 函數(shù):setup_timer( ) 411
7.29 函數(shù):setup_timer_on_stack( ) 413
7.30 函數(shù):timer_pending( ) 415
7.31 函數(shù):timespec_add_ns( ) 417
7.32 函數(shù):timespec_compare( ) 420
7.33 函數(shù):timespec_equal( ) 422
7.34 函數(shù):timespec_sub( ) 424
7.35 函數(shù):timespec_to_ns( ) 426
7.36 函數(shù):timeval_compare( ) 428
7.37 函數(shù):timeval_to_ns( ) 431
7.38 函數(shù):try_to_del_timer_sync( ) 433
本章參考文獻(xiàn) 435
第8章 Linux內(nèi)核同步機制API 436
8.1 函數(shù):atomic_add( ) 436
8.2 函數(shù):atomic_add_negative( ) 438
8.3 函數(shù):atomic_add_return( ) 440
8.4 函數(shù):atomic_add_unless( ) 442
8.5 函數(shù):atomic_cmpxchg( ) 444
8.6 函數(shù):atomic_dec( ) 446
8.7 函數(shù):atomic_dec_and_test( ) 448
8.8 函數(shù):atomic_inc( ) 449
8.9 函數(shù):atomic_inc_and_test( ) 451
8.10 函數(shù):atomic_read( ) 453
8.11 函數(shù):atomic_set( ) 453
8.12 函數(shù):atomic_sub( ) 455
8.13 函數(shù):atomic_sub_and_test( ) 457
8.14 函數(shù):atomic_sub_return( ) 459
8.15 函數(shù):down( ) 461
8.16 函數(shù):down_interruptible( ) 463
8.17 函數(shù):down_killable( ) 465
8.18 函數(shù):down_read( ) 468
8.19 函數(shù):down_read_trylock( ) 470
8.20 函數(shù):down_timeout( ) 472
8.21 函數(shù):down_trylock( ) 474
8.22 函數(shù):down_write( ) 476
8.23 函數(shù):down_write_trylock( ) 479
8.24 函數(shù):downgrade_write( ) 481
8.25 宏:init_rwsem( ) 483
8.26 函數(shù):read_seqbegin( ) 486
8.27 函數(shù):read_seqretry( ) 488
8.28 函數(shù):sema_init( ) 490
8.29 宏:seqlock_init( ) 492
8.30 函數(shù):up( ) 494
8.31 函數(shù):up_read( ) 496
8.32 函數(shù):up_write( ) 497
8.33 函數(shù):write_seqlock( ) 498
8.34 函數(shù):write_sequnlock( ) 498
本章參考文獻(xiàn) 499
第9章 Linux文件系統(tǒng)內(nèi)核API 500
9.1 函數(shù):__mnt_is_readonly( ) 500
9.2 函數(shù):current_umask( ) 502
9.3 函數(shù):d_alloc( ) 504
9.4 函數(shù):d_find_alias( ) 507
9.5 函數(shù):dput( ) 510
9.6 函數(shù):fget( ) 512
9.7 函數(shù):generic_fillattr( ) 515
9.8 函數(shù):get_fs_type( ) 517
9.9 函數(shù):get_max_files( ) 520
9.10 函數(shù):get_super( ) 522
9.11 函數(shù):have_submounts( ) 525
9.12 函數(shù):I_BDEV( ) 527
9.13 函數(shù):inode_add_bytes( ) 529
9.14 函數(shù):inode_get_bytes( ) 531
9.15 函數(shù):inode_set_bytes( ) 533
9.16 函數(shù):inode_sub_bytes( ) 535
9.17 函數(shù):is_bad_inode( ) 537
9.18 函數(shù):make_bad_inode( ) 538
9.19 函數(shù):may_umount( ) 540
9.20 函數(shù):may_umount_tree( ) 542
9.21 函數(shù):mnt_want_write( ) 544
9.22 函數(shù):notify_change( ) 545
9.23 函數(shù):put_unused_fd( ) 547
9.24 函數(shù):unshare_fs_struct( ) 549
9.25 函數(shù):vfs_fstat( ) 551
9.26 函數(shù):vfs_getattr( ) 553
9.27 函數(shù):vfs_statfs( ) 556
本章參考文獻(xiàn) 559
第10章 Linux 設(shè)備驅(qū)動及設(shè)備管理API 560
10.1 函數(shù):__class_create( ) 560
10.2 函數(shù):__class_register( ) 562
10.3 函數(shù):cdev_add( ) 563
10.4 函數(shù):cdev_alloc( ) 564
10.5 函數(shù):cdev_del( ) 566
10.6 函數(shù):cdev_init( ) 572
10.7 宏:class_create( ) 577
10.8 函數(shù):class_destroy( ) 578
10.9 宏:class_register( ) 581
10.10 函數(shù):class_unregister( ) 582
10.11 函數(shù):device_add( ) 589
10.12 函數(shù):device_create( ) 589
10.13 函數(shù):device_del( ) 592
10.14 函數(shù):device_destroy( ) 592
10.15 函數(shù):device_initialize( ) 599
10.16 函數(shù):device_register( ) 606
10.17 函數(shù):device_rename( ) 607
10.18 函數(shù):device_unregister( ) 613
10.19 函數(shù):get_device( ) 620
10.20 函數(shù):put_device( ) 621
10.21 函數(shù):register_chrdev( ) 625
10.22 函數(shù):unregister_chrdev( ) 626
10.23 部分相關(guān)函數(shù)說明 634
本章參考文獻(xiàn) 635
附錄 Linux內(nèi)核API快速檢索表 636

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號