当前位置:  技术问答>linux和unix

Open函数的inode疑问

    来源: 互联网  发布时间:2016-03-22

    本文导语:  我们来看open函数的定义:int i2cdev_open (struct inode *inode, struct file *file) 但实际我们在使用open函数时并不会填入inode参数,只需填如file参数就行了。 为什么会这样呢??? | Linux内部有映射...

我们来看open函数的定义:int i2cdev_open (struct inode *inode, struct file *file)
但实际我们在使用open函数时并不会填入inode参数,只需填如file参数就行了。
为什么会这样呢???

|
Linux内部有映射表,根据file参数找到对应的设备,根据对应的设备驱动程序,然后就可以找到inode.你可以看Linux源码,比如open

|
实际情况是这样的:

open(char * path, ...) will call do_open(char * path, ..) which assumes almost the same format as open.
The the first thing do_open does is to call "open_namei(char * path, ..., &inode, ...)", this is in namei.c
Then by using the inode pointer returned from "open_namei()", "do_open" will call inode->i_op->open() to actually open the file. The pointer can point to ext2_open if your file is on an EXT2 File System.

    
 
 

您可能感兴趣的文章:

  • 关于can总线open()系统调用函数与QDialog中的open()冲突
  • jquery iis7站长之家
  • 初学Unix,问:标准级函数,如fopen,fclose;系统级函数open,close,两者什么关系?(在一篇讲文件操作的文章中看到的)
  • linux open 函数问题
  • 《unix环境高级编程》open_max是个什么函数?
  • 问一个open函数的低级问题。。。
  • linux 下用open()函数在根目录下打开或创建文件失败
  • 关于open函数的疑问.
  • shm_open函数问题.奇怪!!!奇怪!!!!!
  • Linux open函数创建的文件却自己没有权限
  • linux下用open函数已二进制方式打开一个文件
  • open函数中第2个参数为O_DIRECTORY和O_CLOEXEC的用方法
  • open函数的问题
  • 在open中成功提交了urb,usb_submit_urb 返回值为0,但是为什么不进 urb回调函数?
  • 关于open()函数的问题,请指教
  • linux 下 usb 鼠标驱动 关于 open 函数里面 mouse->irq->dev = mouse->usbdev 疑问
  • linux驱动open函数问题,大家来看看(我没有分,所以给的少点)
  • Open函数的问题(100分)
  • 【求助】文件open函数打开时的O_NONBLOCK 什么意思
  • UNIX 环境高级编程 17章进程高级通信中的open服务器2 ioctl函数返回错误!!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt枚举desktop.action的类成员方法: open定义及介绍
  • 先装open Solaris再装win7,怎么进入open?
  • java命名空间javax.swing类jfilechooser的类成员方法: open_dialog定义及介绍
  • man open正常,打开的是1部分,但man 2 open报错,报错信息如下
  • java命名空间javax.sound.sampled类lineevent.type的类成员方法: open定义及介绍
  • 为什么这个open调用一定会失败?open("/proc/hide-252",O_RDWR|O_CREAT,0);
  • java命名空间java.util.logging类errormanager的类成员方法: open_failure定义及介绍
  • I open grub.conf in Nautilus , but it doesn't allow me to edit the file . How to open it in the editable mode ?
  • java命名空间java.nio.channels类pipe的类成员方法: open定义及介绍
  • Open Watcom
  • java命名空间javax.print.attribute.standard类printerstatereason的类成员方法: interlock_open定义及介绍
  • 邮件客户端 Open-jACOB eMail
  • java命名空间javax.print.attribute.standard类printerstatereason的类成员方法: door_open定义及介绍
  • 开放下载管理器 Open Download Manager
  • java命名空间javax.management类jmx的类成员方法: open_type_field定义及介绍
  • open-iscsi的移植。。。有人做过吗?
  • java命名空间javax.print.attribute.standard类printerstatereason的类成员方法: cover_open定义及介绍
  • binlog分析程序 Open Replicator
  • java命名空间java.util.zip类zipfile的类成员方法: open_read定义及介绍
  • 开源建模工具 Open ModelSphere
  • C++ I/O 成员 open():创建一个输入流
  • 网络审计程序 Open-AudIT


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3