Linux内核API完全参考手册(第2版)

Linux内核API完全参考手册(第2版)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

基于最新的Linux内核源代码3.19.3版本,对常用的内核API作了系统归纳。

内容简介

本书编写了典型验证程序,使理论分析与实际编程做到了统一。分析的内核API模块包括:模块机制内核API、进程管理内核API、进程调度内核API、中断与异常机制内核API、时间与定时机制内核API、内存管理内核API、内核同步机制API、文件系统内核API和设备驱动与设备管理模块内核API。

作者简介

章节目录

版权信息

前言

第1章 Linux内核API分析必备知识

1.1 Linux内核编程注意事项

1.2 本书中模块编译Makefile模板

1.3 内核调试函数printk

1.4 内核编译与定制

1.5 温馨提示

本章参考文献

第2章 内核模块机制API

2.1 函数:__module_address()

2.2 函数:__module_text_address()

2.3 函数:__print_symbol()

2.4 函数:__symbol_get()

2.5 函数:__symbol_put()

2.6 函数:find_module()

2.7 函数:find_symbol()

2.8 函数:module_is_live()

2.9 函数:module_put()

2.10 函数:module_refcount()

2.11 函数:sprint_symbol()

2.12 函数:symbol_put_addr()

2.13 函数:try_module_get()

本章参考文献

第3章 Linux进程管理内核API

3.1 函数:__task_pid_nr_ns()

3.2 函数:find_get_pid()

3.3 函数:find_pid_ns()

3.4 函数:find_vpid()

3.5 函数:get_pid()

3.6 函数:get_task_mm()

3.7 函数:mmput()

3.8 函数:ns_of_pid()

3.9 函数:pid_nr()

3.10 函数:pid_task()

3.11 函数:pid_vnr()

3.12 函数:put_pid()

3.13 函数:task_active_pid_ns()

3.14 函数:task_tgid_nr_ns()

本章参考文献

第4章 Linux进程调度内核API

4.1 函数:__wake_up()

4.2 函数:__wake_up_sync()

4.3 函数:__wake_up_sync_key()

4.4 函数:abort_exclusive_wait()

4.5 函数:add_wait_queue()

4.6 函数:add_wait_queue_exclusive()

4.7 函数:autoremove_wake_function()

4.8 函数:complete()

4.9 函数:complete_all()

4.10 函数:completion_done()

4.11 函数:current_thread_info()

4.12 函数:default_wake_function()

4.13 函数:do_exit()

4.14 函数:finish_wait()

4.15 函数:init_waitqueue_entry()

4.16 函数:init_waitqueue_head()

4.17 函数:kthread_create_on_node()

4.18 函数:kthread_stop()

4.19 函数:prepare_to_wait()

4.20 函数:prepare_to_wait_exclusive()

4.21 函数:remove_wait_queue()

4.22 函数:sched_setscheduler()

4.23 函数:set_cpus_allowed_ptr()

4.24 函数:set_user_nice()

4.25 函数:task_nice()

4.26 函数:try_wait_for_completion()

4.27 函数:wait_for_completion()

4.28 函数:wait_for_completion_interruptible_timeout()

4.29 函数:wait_for_completion_killable()

4.30 函数:wait_for_completion_timeout()

4.31 函数:wake_up_process()

4.32 函数:yield()

本章参考文献

第5章 Linux中断机制内核API

5.1 函数:__tasklet_hi_schedule()

5.2 函数:__tasklet_schedule()

5.3 函数:disable_irq()

5.4 函数:disable_irq_nosync()

5.5 函数:disable_irq_wake()

5.6 函数:enable_irq()

5.7 函数:enable_irq_wake()

5.8 函数:free_irq()

5.9 函数:irq_set_chip()

5.10 函数:irq_set_chip_data()

5.11 函数:irq_set_irq_type()

5.12 函数:irq_set_irq_wake()

5.13 函数:remove_irq()

5.14 函数:request_irq()

5.15 函数:request_threaded_irq()

5.16 函数:setup_irq()

5.17 函数:tasklet_disable()

5.18 函数:tasklet_disable_nosync()

5.19 函数:tasklet_enable()

5.20 函数:tasklet_hi_schedule()

5.21 函数:tasklet_init()

5.22 函数:tasklet_kill()

5.23 函数:tasklet_schedule()

5.24 函数:tasklet_trylock()

5.25 函数:tasklet_unlock()

本章参考文献

第6章 Linux内存管理内核API

6.1 函数:__free_pages()

6.2 函数:__get_free_pages()

6.3 函数:__get_vm_area()

6.4 函数:__krealloc()

6.5 函数:alloc_pages()

6.6 函数:alloc_pages_exact()

6.7 函数:find_vma()

6.8 函数:find_vma_intersection()

6.9 函数:free_pages()

6.10 函数:free_pages_exact()

6.11 函数:get_unmapped_area()

6.12 函数:get_zeroed_page()

6.13 函数:kcalloc()

6.14 函数:kfree()

6.15 函数:kmalloc()

6.16 函数:kmem_cache_alloc()

6.17 函数:kmem_cache_create()

6.18 函数:kmem_cache_destroy()

6.19 函数:kmem_cache_free()

6.20 函数:kmem_cache_zalloc()

6.21 函数:kmemdup()

6.22 函数:ksize()

6.23 函数:kstrdup()

6.24 函数:kstrndup()

6.25 函数:kzalloc()

6.26 函数:memdup_user()

6.27 函数:mempool_alloc()

6.28 函数:mempool_alloc_pages()

6.29 函数:mempool_alloc_slab()

6.30 函数:mempool_create()

6.31 函数:mempool_destroy()

6.32 函数:mempool_free()

6.33 函数:mempool_free_pages()

6.34 函数:mempool_free_slab()

6.35 函数:mempool_kfree()

6.36 函数:mempool_kmalloc()

6.37 函数:mempool_resize()

6.38 函数:nr_free_buffer_pages()

6.39 宏:page_address()

6.40 宏:page_cache_get()

6.41 宏:page_cache_release()

6.42 函数:page_zone()

6.43 宏:probe_kernel_address()

6.44 函数:probe_kernel_read()

6.45 函数:vfree()

6.46 函数:vma_pages()

6.47 函数:vmalloc()

6.48 函数:vmalloc_to_page()

6.49 函数:vmalloc_to_pfn()

6.50 函数:vmalloc_user()

本章参考文献

第7章 Linux内核定时机制API

7.1 函数:__round_jiffies()

7.2 函数:__round_jiffies_relative()

7.3 函数:__round_jiffies_up()

7.4 函数:__round_jiffies_up_relative()

7.5 函数:add_timer()

7.6 函数:current_kernel_time()

7.7 函数:del_timer()

7.8 函数:del_timer_sync()

7.9 函数:do_gettimeofday()

7.10 函数:do_settimeofday()

7.11 函数:get_seconds()

7.12 函数:getnstimeofday()

7.13 函数:init_timer()

7.14 函数:init_timer_deferrable()

7.15 函数:init_timer_key()

7.16 函数:init_timer_on_stack()

7.17 函数:init_timer_on_stack_key()

7.18 函数:mktime()

7.19 函数:mod_timer()

7.20 函数:mod_timer_pending()

7.21 函数:ns_to_timespec()

7.22 函数:ns_to_timeval()

7.23 函数:round_jiffies()

7.24 函数:round_jiffies_relative()

7.25 函数:round_jiffies_up()

7.26 函数:round_jiffies_up_relative()

7.27 函数:set_normalized_timespec()

7.28 函数:setup_timer()

7.29 函数:setup_timer_on_stack()

7.30 函数:timer_pending()

7.31 函数:timespec_add_ns()

7.32 函数:timespec_compare()

7.33 函数:timespec_equal()

7.34 函数:timespec_sub()

7.35 函数:timespec_to_ns()

7.36 函数:timeval_compare()

7.37 函数:timeval_to_ns()

7.38 函数:try_to_del_timer_sync()

本章参考文献

第8章 Linux内核同步机制API

8.1 函数:atomic_add()

8.2 函数:atomic_add_negative()

8.3 函数:atomic_add_return()

8.4 函数:atomic_add_unless()

8.5 函数:atomic_cmpxchg()

8.6 函数:atomic_dec()

8.7 函数:atomic_dec_and_test()

8.8 函数:atomic_inc()

8.9 函数:atomic_inc_and_test()

8.10 函数:atomic_read()

8.11 函数:atomic_set()

8.12 函数:atomic_sub()

8.13 函数:atomic_sub_and_test()

8.14 函数:atomic_sub_return()

8.15 函数:down()

8.16 函数:down_interruptible()

8.17 函数:down_killable()

8.18 函数:down_read()

8.19 函数:down_read_trylock()

8.20 函数:down_timeout()

8.21 函数:down_trylock()

8.22 函数:down_write()

8.23 函数:down_write_trylock()

8.24 函数:downgrade_write()

8.25 宏:init_rwsem()

8.26 函数:read_seqbegin()

8.27 函数:read_seqretry()

8.28 函数:sema_init()

8.29 宏:seqlock_init()

8.30 函数:up()

8.31 函数:up_read()

8.32 函数:up_write()

8.33 函数:write_seqlock()

8.34 函数:write_sequnlock()

本章参考文献

第9章 Linux文件系统内核API

9.1 函数:__mnt_is_readonly()

9.2 函数:current_umask()

9.3 函数:d_alloc()

9.4 函数:d_find_alias()

9.5 函数:dput()

9.6 函数:fget()

9.7 函数:generic_fillattr()

9.8 函数:get_fs_type()

9.9 函数:get_max_files()

9.10 函数:get_super()

9.11 函数:have_submounts()

9.12 函数:I_BDEV()

9.13 函数:inode_add_bytes()

9.14 函数:inode_get_bytes()

9.15 函数:inode_set_bytes()

9.16 函数:inode_sub_bytes()

9.17 函数:is_bad_inode()

9.18 函数:make_bad_inode()

9.19 函数:may_umount()

9.20 函数:may_umount_tree()

9.21 函数:mnt_want_write()

9.22 函数:notify_change()

9.23 函数:put_unused_fd()

9.24 函数:unshare_fs_struct()

9.25 函数:vfs_fstat()

9.26 函数:vfs_getattr()

9.27 函数:vfs_statfs()

本章参考文献

第10章 Linux设备驱动及设备管理API

10.1 函数:__class_create()

10.2 函数:__class_register()

10.3 函数:cdev_add()

10.4 函数:cdev_alloc()

10.5 函数:cdev_del()

10.6 函数:cdev_init()

10.7 宏:class_create()

10.8 函数:class_destroy()

10.9 宏:class_register()

10.10 函数:class_unregister()

10.11 函数:device_add()

10.12 函数:device_create()

10.13 函数:device_del()

10.14 函数:device_destroy()

10.15 函数:device_initialize()

10.16 函数:device_register()

10.17 函数:device_rename()

10.18 函数:device_unregister()

10.19 函数:get_device()

10.20 函数:put_device()

10.21 函数:register_chrdev()

10.22 函数:unregister_chrdev()

10.23 部分相关函数说明

本章参考文献

附录 Linux内核API快速检索表

Linux内核API完全参考手册(第2版)是2016年由机械工业出版社华章分社出版,作者邱铁。

得书感谢您对《Linux内核API完全参考手册(第2版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
用“芯”探核:基于龙芯的Linux内核探索解析 电子书
Linux内核中龙芯3号的Maintainer十年磨一剑,创造性地使用“树形视图”和“链式视图”来解析源代码。
API安全技术与实战 电子书
本书深度剖析了API安全漏洞、API安全设计以及API生命周期安全管理等内容。
色彩设计参考手册 电子书
根据色彩的基本功能和应用特色,本书分为基础色、自然色、生活色、心理色和成长色5章。每一章都包括色彩设计知识的导读及精彩案例欣赏,通过精美的商业案例及其详细的分析和讲解,展示色彩的典型应用,帮助读者掌握色彩设计的基础知识,提高读者对色彩的感知能力、审美能力和设计水平,激发读者更多的创意灵感。本书可作为平面设计、服装设计和环境设计等相关从业者必备的色彩设计案例参考手册,也可作为艺术院校相关专业学生的辅
UI设计参考手册 电子书
本书根据UI设计的基本构成和应用分为移动设备界面设计和网页界面设计两部分。其中移动设备界面设计分为主题、布局、色彩、应用及图标共5章;网页界面设计分为主题和应用共2章。每一章都包含大量的、优秀的UI设计案例,通过对每个案例的布局、颜色和整体评价3个方面的详细分析和讲解,来介绍本章主题在UI设计中的相关运用,帮助读者迅速掌握UI设计在各个方面运用的基础知识、真正提高UI设计的审美能力和理解能力。本书