当前位置: 首页 > news >正文

网站初期推广方案双语网站建设报价

网站初期推广方案,双语网站建设报价,wordpress源码教程,毕业了智慧团建密码忘了以下内容源于朱有鹏嵌入式课程的学习与整理#xff0c;如有侵权请告知删除。 前言 在命令行中使用“man 2 open”可以获知open这个文件IO API的使用方法。 open函数的模型有两种#xff0c;根据需要选择其中一种即可。 int open(const char *pathname, int flags); int open(…以下内容源于朱有鹏嵌入式课程的学习与整理如有侵权请告知删除。 前言 在命令行中使用“man 2 open”可以获知open这个文件IO API的使用方法。 open函数的模型有两种根据需要选择其中一种即可。 int open(const char *pathname, int flags); int open(const char *pathname, int flags, mode_t mode);两种函数模型中都有flags这个标志它表示对文件的权限设置以及其他的一些设置使用方法都像下面这样。 file_fdopen(a.txt, O_WRONLY | O_TRUNC | …… ) 1、O_RDONLY、O_WRONLY、O_RDWR Linux中的文件有读写权限使用open函数打开文件时也可以附带一定的权限说明。 比如O_RDONLY就表示以只读方式打开O_WRONLY表示以只写方式打开O_RDWR表示以可读可写方式打开。 当附带权限说明后打开的文件就只能按照这种权限来操作。 2、O_APPEND、O_TRUNC 当使用open函数打开一个内部有内容的文件时有如下情况 1如果使用O_TRUNC标志则原来的内容会被丢弃。 2如果使用O_APPEND标志则新写入的内容会接续到原来内容的后面。 3默认不使用O_APPEND 和 O_TRUNC标志时则原来文件中的内容保持不变。 4如果O_APPEND和O_TRUNC同时出现则O_TRUNC将O_APPEND屏蔽掉。 3、O_CREAT、O_EXCL 当使用open函数打开一个文件如果这个文件不存在则会打开文件错误。 使用O_CREAT标志后如果想要打开的文件不存在则去创建该文件并打开它如果想要打开的文件存在则重新创建这个文件原来的内容会消除。使用这个属性时最好明确地知道要打开的文件是不存在的因为如果文件存在新创建的文件会覆盖已经存在的文件导致误删问题。 使用O_CREAT和O_EXCL标志后如果想打开的文件不存在时则去创建这个文件如果想打开的文件存在则报错。 open函数在使用O_CREAT标志去创建文件时可以使用第三个参数mode来指定要创建的文件的权限。mode使用4个数字来指定权限的其中后面三个很重要对应我们要创建的这个文件的权限标志比如创建一个可读可写不可执行的文件就用0666。 4、O_NONBLOCK 打开文件默认是阻塞式的如果你希望以非阻塞的方式打开文件则要添加O_NONBLOCK标志。另外这个标志只用于设备文件而不用于普通文件。 补充说明 1阻塞与非阻塞的定义 如果一个函数是阻塞式的调用这个函数时函数有可能被卡住即这个函数内部要完成的事情条件不具备当前没法做要等待条件成熟函数被阻塞住了就不能立刻返回。如果一个函数是非阻塞式的调用这个函数后会立即返回但是函数有没有完成任务则不确定。 2阻塞与和非阻塞的对比 它们是两种不同的设计思路并没有好坏之分。总的来说阻塞式的结果有保障但是时间没保障非阻塞式的时间有保障但是结果没保障。 操作系统提供的API和由API封装而成的库函数有很多被设计为阻塞式或者非阻塞式的应用程度调用这些函数时需要特别注意。 5、O_SYNC 注意这个标志是写在open函数中的然后影响write函数的。 open函数没有O_SYNC标志时write函数将内容写入底层缓冲区即可返回。然后OS会在合适的时机将buf中的内容一次性的同步到硬盘中。这种设计是为了提升硬件操作的性能提升硬件寿命。 open函数有O_SYNC标志时write函数会阻塞等待底层完成硬盘写入才返回。这意味着把内容立即写入硬盘中不需要等待合适的时机。 6、再谈O_APPEND 1情形1 如果在同一程序中使用两次open函数打开同一个文件然后分别读取结果会怎样 结果可能有两种一种是fd1和fd2分别读第二种是接续读。 经过实验验证证明了结果是fd1和fd2分别读。 结果分析说明fd1和fd2所对应的文件指针是不同的2个独立的指针。文件指针是包含在动态文件的文件管理表中的所以可以看出linux系统的进程中不同fd对应的是不同的独立的文件管理表。 2情形2 如果在同一程序中使用两次open函数打开同一个文件然后分别写入结果会怎样 结果可能有两种一种是fd1和fd2分别写第二种是接续读。 经过实验验证证明了结果是fd1和fd2分别写。会导致覆盖问题。 结果分析说明原因和情形1一样。另外正常情况下我们有时候需要分别写有时候又需要接续写所以这两种本身是没有好坏之分的关键看用户需求。 3如何实现接续写解决覆盖问题 在open时加O_APPEND标志即可实现接续写不再出现覆盖问题。 4O_APPEND的实现原理、原子操作性说明 O_APPEND为什么能够将分别写改为接续写关键在于文件指针。分别写的内部原理就是2个fd拥有不同的文件指针并且彼此只考虑自己的位移。但是O_APPEND标志可以让write和read函数内部多做一件事情就是移动自己文件指针的同时把别人的文件指针同时移动。虽然加了O_APPENDfd1和fd2还是各自拥有一个独立的文件指针但是这两个文件指针关联起来了一个动了会通知另一个跟着动。 O_APPEND对文件指针的影响对文件的读写是原子的。整个操作一旦开始就不会被打断必须等到操作结束后其他代码才能得以调度运行这就叫原子操作。每种操作系统中都有一些机制来实现原子操作以保证那些需要原子操作的任务可以运行。
http://www.zqtcl.cn/news/299262/

相关文章:

  • 商城网站前端更新商品天天做吗惠州网络营销公司
  • 买高端品牌网站建设公司做网站比较好的平台
  • 找个网站这么难2021公司名称大全好听
  • 网站要实名认证网站建设 简易合同
  • 网站建站公司费用建设网站改版
  • 做网站php与python新渝网门户网
  • 响应式网站建设外文文献中介做网站的别打电话
  • 奥迪网站建设策划书wordpress取消评论审核
  • 无锡百度正规公司专业seo网站优化推广排名教程
  • 湖南城乡建设厅网站青岛网站推广招商
  • 网站备案信息加到哪里国际要闻军事新闻
  • 商河县做网站公司如何仿制国外网站
  • 网站如何跟域名绑定唐山正规做网站的公司哪家好
  • 网站建设wang.cdwordpress文章链接插件
  • 本地进wordpress后台搜索优化师
  • 网站备案证书下载失败法国 wordpress
  • 海南平台网站建设企业优秀的设计案例
  • 拿别的公司名字做网站合肥网页设计培训班
  • 到哪个网站做任务太原百度seo优化推广
  • 北京外贸网站开发广东智慧团建系统入口
  • 做百度网站接到多少客户电话阿里云服务器win系统建站教程
  • 天空在线网站建设深圳外贸网站怎么建
  • 网站的交流的功能怎么做小商品网站建设
  • 求职招聘网站建设投标书怎样在手机上面建设网站
  • 重庆工厂网站建设备案域名出售平台
  • 免费网站优化校园电商平台网站建设
  • 宁波市住房和城乡建设局网站成都网站建设网站制作
  • 网站制作还花钱建设银行网站查询密码是啥
  • 周到的做pc端网站产品图册设计公司
  • 淘宝客新增网站网页设计板式类型