linux内核API
-
文件系统 – Linux内核API is_bad_inode
is_bad_inode()函数的作用是判断传入的参数inode是否被标记为坏节点,如果节点是坏节点则结构体struct inode的i_op字段的值为系统定义的变量bad_inode_ops的…… -
文件系统 – Linux内核API inode_sub_bytes
inode_sub_bytes()函数的功能是减少inode节点的字节数,减少的量由参数loff_t bytes决定。函数执行过程是首先把减少的量右移9位与inode->i_blocks相减,实…… -
文件系统 – Linux内核API inode_set_bytes
inode_set_bytes()函数的功能是设置inode节点的字节数,设置的字节数由参数loff_t bytes决定。函数执行过程是首先把要设置的量右移9位然后赋值给inode->i_…… -
文件系统 – Linux内核API inode_get_bytes
inode_get_bytes()函数的功能是得到整个inode节点的总字节数。函数工作原理是将文件的扇区(即inode->i_blocks)通过位运算左移9位(即扇区数乘以512),…… -
文件系统 – Linux内核API inode_add_bytes
inode_add_bytes()函数的功能是增加inode节点的字节数,增加的量由参数loff_t bytes决定。函数执行过程是首先把增加的量右移9位与inode->i_blocks相加,即…… -
文件系统 – Linux内核API I_BDEV
函数I_BDEV()在实现过程中调用了函数BDEV_I(),首先申请一个结构体struct bdev_inode变量,然后用参数inode初始化结构体struct bdev_inode变量的vfs_inode字…… -
文件系统 – Linux内核API have_submounts
have_submounts()函数的作用是检查在parent所指定的目录及其子目录上是否有挂载点。 have_submounts文件包含 #include <linux/dcache.h> have_submoun…… -
文件系统 – Linux内核API get_super
get_super()函数可以实现在由参数*bdev所指定的块设备上获得超级块,并返回超级块数组的指针。在调用此函数时,该相应的文件系统必须已经被加载,或者该超级…… -
文件系统 – Linux内核API get_max_files
get_max_files()函数的功能是返回在系统中可以同时打开的最大文件数目。 get_max_files文件包含 #include <linux/fs.h> get_max_files函数定义 在内核…… -
文件系统 – Linux内核API get_fs_type
get_fs_type()函数用于根据输入参数的名字*name,获取对应文件系统类型的描述符信息,文件系统类型的描述符信息保存在函数的返回结果struct file_system_type…… -
文件系统 – Linux内核API generic_fillattr
generic_fillattr()函数的功能是初始化struct kstat结构体变量(在这里,kstat是kernel state的缩写,即内核状态),分别将inode结构体中各字段的值赋给kstat…… -
文件系统 – Linux内核API fget
fget()函数的功能是通过文件描述符查找并返回file结构体。本函数是从当前进程中获得file_struct结构体,然后通过fcheck_files()函数,传入参数为file_struct…… -
文件系统 – Linux内核API dput
dput()函数的作用是释放一个dentry结构体,并且将该结构体的使用计数d_count的值作减1操作,将该结构体从队列中删除,同时,释放该结构体的资源,如果是父结…… -
文件系统 – Linux内核API d_find_alias
函数d_find_alias()通过一个拥有别名的inode结构体,来获取具有该inode结构体的目录结构体。 d_find_alias文件包含 #include <linux/dcache.h> d_find…… -
文件系统 – Linux内核API d_alloc
d_alloc()函数的功能是分配一个目录项缓存的入口目录。如果没有足够有效的内存,则返回NULL。如果分配成功分配则返回的是一个dentry结构体。 d_alloc文件包含…… -
文件系统 – Linux内核API current_umask
current_umask()函数用来返回当前文件的权限值掩码。权限其实就是一个整数,用三位八进制数表示,此外还可以使用以下宏或多个宏的组合,定义见文件linux-3.19…… -
文件系统 – Linux内核API __mnt_is_readonly
__mnt_is_readonly()函数的功能是检查一个虚拟文件系统装载点结构体(vfsmount结构体)是否是只读的。该函数是分别通过mnt->mnt_flags字段与宏MNT_READONL…… -
文件系统 – Linux内核API 文件系统
Linux内核API与文件系统相关的API有如下: Linux内核API __mnt_is_readonly Linux内核API current_umask Linux内核API d_alloc Linux内核API d_find_alias L…… -
同步机制 – Linux内核API write_sequnlock
函数write_sequnlock():写者释放指定的顺序锁sl,同时顺序锁的顺序号加1。 write_sequnlock文件包含 #include <linux/seqlock.h> write_sequnlock函…… -
同步机制 – Linux内核API write_seqlock
函数write_seqlock():写者获取指定的顺序锁sl,同时顺序锁的顺序号加1。 write_seqlock文件包含 #include <linux/seqlock.h> write_seqlock函数定义 …… -
同步机制 – Linux内核API up_write
函数up_write()是写者释放读写信号量sem时调用的。它一般与down_write()函数和down_write_trylock()配对使用,但是如果down_write_trylock()返回0,则表示写…… -
同步机制 – Linux内核API up_read
函数up_read()是读者释放读写信号量sem时调用的。它一般与down_read()函数和down_read_trylock()配对使用,但是如果down_read_trylock()返回0,则表示读者未…… -
同步机制 – Linux内核API up
up()函数的功能是释放信号量sem,释放信号量后,sem的计数器的值将加1。当一个线程调用down函数的某个版本获得信号量后,则它将获得信号量所保护的临界区,对…… -
同步机制 – Linux内核API seqlock_init
宏seqlock_init():初始化顺序锁x,同时对顺序锁的顺序号进行初始化。 seqlock_init文件包含 #include <linux/seqlock.h> seqlock_init宏定义: 在内…… -
同步机制 – Linux内核API sema_init
sema_init()函数用来初始化信号量,将信号量的计数器值设置为val。 sema_init文件包含 #include <linux/semaphore.h> sema_init函数定义 在内核源码中……