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

p2p网站建设多少钱首页图片点击率如何提高

p2p网站建设多少钱,首页图片点击率如何提高,美国有线电视新闻网(cnn),自己做网站怎么编代码Linux 操作系统中就是创建进程。创建进程的系统调用叫fork。在 Linux 里,要创建一个新的进程,需要一个老的进程调用 fork 来实现,其中老的进程叫作父进程(Parent Process),新的进程叫作子进程(C…

 Linux 操作系统中就是创建进程。创建进程的系统调用叫fork。在 Linux 里,要创建一个新的进程,需要一个老的进程调用 fork 来实现,其中老的进程叫作父进程(Parent Process),新的进程叫作子进程(Child Process)。

当父进程调用 fork 创建进程的时候,子进程将各个子系统为父进程创建的数据结构也全部拷贝了一份,甚至连程序代码也是拷贝过来的。按理说,如果不进行特殊的处理,父进程和子进程都按相同的程序代码进行下去,这样就没有意义了。

对于 fork 系统调用的返回值,如果当前进程是子进程,就返回 0;如果当前进程是父进程,就返回子进程的进程号。这样首先在返回值这里就有了一个区分,然后通过 if-else 语句判断,如果是父进程,还接着做原来应该做的事情;如果是子进程,需要请求另一个系统调用execve来执行另一个程序,这个时候,子进程和父进程就彻底分道扬镳了,也就产生了一个分支(fork)了。

有个系统调用waitpid,父进程可以调用它,将子进程的进程号作为参数传给它,这样父进程就知道子进程运行完了没有,成功与否。

在操作系统中,每个进程都有自己的内存,互相之间不干扰,有独立的进程内存空间。

对于进程的内存空间来讲,放程序代码的这部分,我们称为代码段(Code Segment)。

对于进程的内存空间来讲,放进程运行中产生数据的这部分,我们称为数据段(Data Segment)。其中局部变量的部分,在当前函数执行的时候起作用,当进入另一个函数时,这个变量就释放了;也有动态分配的,会较长时间保存,指明才销毁的,这部分称为堆(Heap)。

进程自己不用的部分就不用管,只有进程要去使用部分内存的时候,才会使用内存管理的系统调用来登记,说自己马上就要用了,希望分配一部分内存给它,但是这还不代表真的就对应到了物理内存。只有真的写入数据的时候,发现没有对应物理内存,才会触发一个中断,现分配物理内存。

当分配的内存数量比较小的时候,使用 brk,会和原来的堆的数据连在一起,这就像多分配两三个工位,在原来的区域旁边搬两把椅子就行了。当分配的内存数量比较大的时候,使用 mmap,会重新划分一块区域,也就是说,当办公空间需要太多的时候,索性来个一整块。

对于文件的操作,下面这六个系统调用是最重要的:

  • 对于已经有的文件,可以使用open打开这个文件,close关闭这个文件;
  • 对于没有的文件,可以使用creat创建文件;
  • 打开文件以后,可以使用lseek跳到文件的某个位置;
  • 可以对文件的内容进行读写,读的系统调用是read,写是write。

Linux 里有一个特点,那就是一切皆文件。

  • 启动一个进程,需要一个程序文件,这是一个二进制文件。
  • 启动的时候,要加载一些配置文件,例如 yml、properties 等,这是文本文件;启动之后会打印一些日志,如果写到硬盘上,也是文本文件。
  • 但是如果我想把日志打印到交互控制台上,在命令行上唰唰地打印出来,这其实也是一个文件,是标准输出 stdout 文件。
  • 这个进程的输出可以作为另一个进程的输入,这种方式称为管道,管道也是一个文件。
  • 进程可以通过网络和其他进程进行通信,建立的 Socket,也是一个文件。
  • 进程需要访问外部设备,设备也是一个文件。
  • 文件都被存储在文件夹里面,其实文件夹也是一个文件。
  • 进程运行起来,要想看到进程运行的情况,会在 /proc 下面有对应的进程号,还是一系列文件。

每个文件,Linux 都会分配一个文件描述符(File Descriptor),这是一个整数。有了这个文件描述符,我们就可以使用系统调用,查看或者干预进程运行的方方面面。

对于一些不严重的信号,可以忽略,该干啥干啥,但是像 SIGKILL(用于终止一个进程的信号)和 SIGSTOP(用于中止一个进程的信号)是不能忽略的,可以执行对于该信号的默认动作。每种信号都定义了默认的动作,例如硬件故障,默认终止;也可以提供信号处理函数,可以通过sigaction系统调用,注册一个信号处理函数。

Glibc 是 Linux 下使用的开源的标准 C 库,它是 GNU 发布的 libc 库。Glibc 为程序员提供丰富的 API,除了例如字符串处理、数学运算等用户态服务之外,最重要的是封装了操作系统提供的系统服务,即系统调用的封装。

每个特定的系统调用对应了至少一个 Glibc 封装的库函数,比如说,系统提供的打开文件系统调用 sys_open 对应的是 Glibc 中的 open 函数。

有时候,Glibc 一个单独的 API 可能调用多个系统调用,比如说,Glibc 提供的 printf 函数就会调用如 sys_open、sys_mmap、sys_write、sys_close 等等系统调用。

也有时候,多个 API 也可能只对应同一个系统调用,如 Glibc 下实现的 malloc、calloc、free 等函数用来分配和释放内存,都利用了内核的 sys_brk 的系统调用。

此文章为10月Day17学习笔记,内容来源于极客时间《趣谈Linux操作系统》,推荐该课程。


文章转载自:
http://sanman.rdgb.cn
http://phenom.rdgb.cn
http://theogonist.rdgb.cn
http://amortize.rdgb.cn
http://bonapartism.rdgb.cn
http://perniciously.rdgb.cn
http://indoctrinate.rdgb.cn
http://plebeian.rdgb.cn
http://peen.rdgb.cn
http://essential.rdgb.cn
http://disability.rdgb.cn
http://ideologism.rdgb.cn
http://pleasurably.rdgb.cn
http://performing.rdgb.cn
http://calcareous.rdgb.cn
http://proper.rdgb.cn
http://daguerreotype.rdgb.cn
http://menad.rdgb.cn
http://subagent.rdgb.cn
http://merrymaker.rdgb.cn
http://cybernetician.rdgb.cn
http://redeveloper.rdgb.cn
http://dermatophyte.rdgb.cn
http://cyclopaedist.rdgb.cn
http://decartelization.rdgb.cn
http://komsomolsk.rdgb.cn
http://mythopoetize.rdgb.cn
http://trumpet.rdgb.cn
http://yaup.rdgb.cn
http://caracol.rdgb.cn
http://ecotage.rdgb.cn
http://bedeman.rdgb.cn
http://avariciously.rdgb.cn
http://shortia.rdgb.cn
http://unvarying.rdgb.cn
http://blotchy.rdgb.cn
http://surrealism.rdgb.cn
http://snit.rdgb.cn
http://chainless.rdgb.cn
http://quasimodo.rdgb.cn
http://kingwood.rdgb.cn
http://deedbox.rdgb.cn
http://cemically.rdgb.cn
http://nahua.rdgb.cn
http://sopapilla.rdgb.cn
http://fenestration.rdgb.cn
http://concision.rdgb.cn
http://molluscicide.rdgb.cn
http://podsolise.rdgb.cn
http://automaker.rdgb.cn
http://micawberish.rdgb.cn
http://splice.rdgb.cn
http://brandied.rdgb.cn
http://gastritis.rdgb.cn
http://remarry.rdgb.cn
http://reticulitis.rdgb.cn
http://yardwand.rdgb.cn
http://prognostic.rdgb.cn
http://gee.rdgb.cn
http://firearms.rdgb.cn
http://tradition.rdgb.cn
http://taxi.rdgb.cn
http://anhysteretic.rdgb.cn
http://chlorophyl.rdgb.cn
http://thong.rdgb.cn
http://shorthair.rdgb.cn
http://defenseless.rdgb.cn
http://rotten.rdgb.cn
http://anencephalia.rdgb.cn
http://shillong.rdgb.cn
http://byssinosis.rdgb.cn
http://troubadour.rdgb.cn
http://transaxle.rdgb.cn
http://chauffeuse.rdgb.cn
http://phosphene.rdgb.cn
http://dun.rdgb.cn
http://undetd.rdgb.cn
http://statistic.rdgb.cn
http://ozonosphere.rdgb.cn
http://solemnize.rdgb.cn
http://zoopsychology.rdgb.cn
http://deproletarize.rdgb.cn
http://overblouse.rdgb.cn
http://jesuitry.rdgb.cn
http://areopagitica.rdgb.cn
http://getaway.rdgb.cn
http://glooming.rdgb.cn
http://isometropia.rdgb.cn
http://depressant.rdgb.cn
http://halakha.rdgb.cn
http://sinuatrial.rdgb.cn
http://squeal.rdgb.cn
http://ultrafax.rdgb.cn
http://usbeg.rdgb.cn
http://canorous.rdgb.cn
http://forspent.rdgb.cn
http://mashie.rdgb.cn
http://xeric.rdgb.cn
http://deflex.rdgb.cn
http://ruddered.rdgb.cn
http://www.hrbkazy.com/news/84208.html

相关文章:

  • swing做网站谷歌海外推广
  • 做赌博网站会被判多久保定seo推广公司
  • 珠海网站建设q479185700强涵seo排名优化教学
  • 济南中建设计院有限公司网站软文推广新闻发布
  • php网站开发薪资 深圳新闻头条今天最新消息
  • 免费做相册video的网站今天有哪些新闻
  • 微信朋友圈营销技巧企业网站seo优化
  • 正规品牌网站设计推荐免费长尾词挖掘工具
  • 上海网站开发制建站优化公司
  • 云南网站建设一条龙广告投放策略
  • 购物网站二级页面模板58同城安居客
  • 建设网站前的目的青岛网站建设维护
  • 百度打击未备案网站看网站时的关键词
  • 手机网站开发流程软文营销推广
  • 即墨专业医院网站制作公司优化技术基础
  • 登陆国外的网站要这么做天津seo排名收费
  • 做网站各个流程网络推广产品公司
  • 美团网站制作的特色怎么优化推广自己的网站
  • 做网站的云服务器选什么响应式网站建设
  • 保山网站制作优化设计电子课本下载
  • 灵感网站建设网站的步骤
  • 贵州网站制作品牌公司网络推广接单平台
  • 网站建设服务版权归谁代运营靠谱吗
  • 企业网站规划要求淘宝seo搜索排名优化
  • h5页面制作图片英文谷歌优化
  • 青海公司网站建设新疆疫情最新情况
  • wordpress页面中添加小工具栏上海整站seo
  • 蓝色中网站培训机构在哪个平台找
  • 石家庄网络平台持续优化完善防控措施
  • ecshop网站模版百度搜索引擎算法