金沙国际官网_金沙国际平台登录

因为这个金沙国际官网_金沙国际平台登录网站与很多的大型澳门赌场都有合作,金沙国际官网_金沙国际平台登录尽职尽责,高效执行,保持好奇心,不断学习,追求卓越,点击进入金沙国际官网_金沙国际平台登录马上体验吧,所以现在也正式地开始了营业。

您的位置:金沙国际官网 > 金沙国际平台登录 > 进程的创建和终结

进程的创建和终结

发布时间:2019-11-01 17:09编辑:金沙国际平台登录浏览(119)

    一、 进程创建:

    站点版

    1、概念:PHPWord是用纯PHP提供了一组类写入和从不同的文档格式的文件阅读库。PHPWord的当前版本支持微软的Office Open XML(OOXML或处理OpenXML),用于Office应用程序OASIS开放文档格式(OpenDocument格式或ODF)和富文本格式(RTF)。在GitHub中下载项目到你的本地。

      Unix 下的进程创建很特别,与许多其他操作系统不同,它分两步操作来创建和执行进程: fork() 和 exec() 。首先,fork() 通过拷贝当前进程创建一个子进程;然后,exec() 函数负责读取可执行文件并将其载入地址空间开始运行。

    (一)、企业站

    搜狐:http://mirrors.sohu.com/
    网易:http://mirrors.163.com/
    阿里云:http://mirrors.aliyun.com/
    腾讯:http://android-mirror.bugly.qq.com:8080/(仅针对APP开发的软件,限流,不推荐)
    淘宝:http://npm.taobao.org/
    
    阿里云  repl 源:  http://mirrors.aliyun.com/repo/
    

    2、参考学习文档:

    1、fork() :kernel/fork.c

    (二)、教育站

    上海交通大学:http://ftp.sjtu.edu.cn/html/resources.xml(部分移动运营商出口状况不佳,无法访问)
    华中科技大学:http://mirror.hust.edu.cn/(当前已用容量估计:4.83T)
    清华大学:http://mirrors.tuna.tsinghua.edu.cn/(当前已用容量估计:9.8T)
    北京理工大学:http://mirror.bit.edu.cn/web/
    兰州大学:http://mirror.lzu.edu.cn/
    中国科技大学:http://mirrors.ustc.edu.cn/(当前已用容量估计:21.32T)
    大连东软信息学院:http://mirrors.neusoft.edu.cn/(当前已用容量估计:2.5T)
    东北大学:http://mirror.neu.edu.cn/
    大连理工大学:http://mirror.dlut.edu.cn/
    哈尔滨工业大学:http://run.hit.edu.cn/html/(部分联通运营商出口状况不佳,无法访问)
    北京交通大学:http://mirror.bjtu.edu.cn/cn/
    天津大学:http://mirror.tju.edu.cn(无法访问,ping超时)
    中国地质大学:http://mirrors.cug.edu.cn/(当前已用容量估计:2.3T)
    浙江大学:http://mirrors.zju.edu.cn/
    厦门大学:http://mirrors.xmu.edu.cn/
    中山大学:http://mirror.sysu.edu.cn/
    重庆大学:http://mirrors.cqu.edu.cn/(当前已用容量估计:3.93T)
    北京化工大学:http://ubuntu.buct.edu.cn/(Android SDK镜像仅供校内使用,当前已用容量估计:1.72T)
    南阳理工学院:http://mirror.nyist.edu.cn/
    中国科学院:http://www.opencas.org/mirrors/
    电子科技大学:http://ubuntu.uestc.edu.cn/(无法访问,ping超时)
    电子科技大学星辰工作室:http://mirrors.stuhome.net/(当前已用容量估计:1.08T)
    西北农林科技大学:http://mirrors.nwsuaf.edu.cn/(只做CentOS镜像,当前已用容量估计:140GB) 
    浙江大学:http://mirrors.zju.edu.cn/
    台湾淡江大学: http://ftp.tku.edu.tw/Linux/
    

    图片 1

      在Linux系统中,通过调用fork()来创建一个进程。调用 fork() 的进程称为父进程,新产生的进程称为子进程。在该调用结束时,在返回点这个相同的位子上,父进程恢复执行,子进程开始执行。fork()系统调用从内核返回两次:一次返回到父进程,另一次返回到新产生的子进程。使用fork()创建新进程的流程如下:

    (三)、其他

    首都在线科技股份有限公司(英文名Capital Online Data Service):http://mirrors.yun-idc.com/
    中国电信天翼云:http://mirrors.ctyun.cn/
    noc.im:http://mirrors.noc.im/(当前已用容量估计:3.74T)
    常州贝特康姆软件技术有限公司:http://centos.bitcomm.cn/(只做CentOS镜像,当前已用容量估计:140GB)
    公云PubYun(母公司为贝特康姆):http://mirrors.pubyun.com/
    Linux运维派:http://mirrors.skyshe.cn/(使用阿里云服务器,界面使用浙江大学的模板,首页维护,内容可访问)
    中国互联网络信息中心:http://mirrors.cnnic.cn/(只做Apache镜像,当前已用容量估计:120GB)
    Fayea工作室:http://apache.fayea.com/(只做Apache镜像,当前已用容量估计:120GB)
    开源中国社区 http://mirrors.oss.org.cn/
    

    3、安装/配置:

      1)fork() 调用clone;

    软件版

    • PHP 5.3.3+
    • XML解析器扩展
    • Zend的逃避者组件
    • Zend的 STDLIB组件

      2)clone() 调用 do_fork();

    (一)、操作系统类

     1.Ubuntu

    阿里云:http://mirrors.aliyun.com/ubuntu-releases/
    网易:http://mirrors.163.com/ubuntu-releases/
    搜狐:http://mirrors.sohu.com/ubuntu-releases/(搜狐在12年之后似乎不同步了)
    首都在线科技股份有限公司:http://mirrors.yun-idc.com/ubuntu-releases/
    

    2.CentOS

    网易:http://mirrors.163.com/centos/
    搜狐:http://mirrors.sohu.com/centos/
    阿里云:http://mirrors.aliyun.com/centos/
    

    4、PHPWord通过安装composer(你可以进入百度搜索查一下它在PHP中的作用)。你只需要添加依赖于PHPWord到你的包。

      3)do_fork() 调用 copy_process() 函数,copy_process() 函数将完成第 4-11 步;

     

    • 先从composer的官网: 下载composer.exe,然后点击下一步下一步安装就可以了(不用点选任何按钮)。
    • 然后安装完毕之后在命令行中验证,输入composer -v
    • 图片 2
    • 然后在下载composer.phar到你的项目根目录下。
    • 然后到载入中国镜像composer ,https://pkg.phpcomposer.com/安装使用到你项目中,如果看到你的composer.json中有

      "repositories": {
          "packagist": {
              "type": "composer",
              "url": "https://packagist.phpcomposer.com"
          }
      }就成功了。中国镜像毕竟速度快。
      

      4)调用 dup_task_struct() 为新进程创建一个内核栈、thread_info结构和task_struct,这些值与当前进程的值相同;

    旧版本下载   

    5、最后打开命令行,输入composer install,成功了之后会在你的项目根目录出现vendor文件。

      5)检查并确保新创建这个子进程后,当前用户所拥有的进程数目没有超出给它分配的资源的限制;

    (二)、服务器类

    1.Apache

    中国互联网络信息中心:http://mirrors.cnnic.cn/apache/
    华中科技大学:http://mirrors.hust.edu.cn/apache/
    北京理工大学:http://mirror.bit.edu.cn/apache/
    TOMCAT全版本:https://archive.apache.org/dist/tomcat/
    

    2.MySQL

    北京理工大学:http://mirror.bit.edu.cn/mysql/Downloads/
    中国电信天翼云:http://mirrors.ctyun.cn/Mysql/
    搜狐镜像源:http://mirrors.sohu.com/mysql/
    

    3.PostgreSQL

    浙江大学:http://mirrors.zju.edu.cn/postgresql/
    

    4.MariaDB

    中国电信天翼云:http://mirrors.ctyun.cn/MariaDB/
    

    5.VideoLAN

    大连东软信息学院:http://mirrors.neusoft.edu.cn/videolan/
    中国科技大学:http://mirrors.ustc.edu.cn/videolan-ftp/
    

    6、php

    php全版本:  https://secure.php.net/releases/
    

    6、然后在Apache服务器中打开地址127.0.0.1,打开samples文件中的index.php就可以啦。

      6)清理子进程进程描述符中的一些成员(清零或初始化,如PID),以使得子进程与父进程区别开来;

    (三)、开发工具类

    1.Eclipse

    中国科技大学:http://mirrors.ustc.edu.cn/eclipse/
    中国科学院:http://mirrors.opencas.cn/eclipse/
    东北大学:http://ftp.neu.edu.cn/mirrors/eclipse/,http://mirror.neu.edu.cn/eclipse/
    

    2.Android SDK

    中国科学院:http://mirrors.opencas.ac.cn/android/repository/
    南洋理工学院:http://mirror.nyist.edu.cn/android/repository/
    中国科学院:http://mirrors.opencas.cn/android/repository/
    腾讯:http://android-mirror.bugly.qq.com:8080/android/repository/(限流,不推荐)
    大连东软信息学院:http://mirrors.neusoft.edu.cn/android/repository/(同步效果不如中科院的镜像,不推荐)
    

    3.Xcode

    腾讯:http://android-mirror.bugly.qq.com:8080/Xcode/(从7.2之后不再更新,建议直接从官网下载)
    

    7、出现以下情况就可以用了

      7)将子进程的状态设置为 TASK_UNINTERRUPTIBLE,保证它不会投入运行;

    (四)、容器

    lxc国内镜像源: https://mirrors.tuna.tsinghua.edu.cn/lxc-images/
    

     

    图片 3

      8)调用 copy_flags() 以更新 task_struct 的 flags 成员;

    官方镜像列表状态地址

    CentOS:http://mirror-status.centos.org/#cn
    Archlinux:https://www.archlinux.org/mirrors/status/
    Ubuntu:https://launchpad.net/ubuntu/+cdmirrors
    Debian:http://mirror.debian.org/status.html
    Fedora Linux/Fedora EPEL:https://admin.fedoraproject.org/mirrormanager/mirrors
    Apache:http://www.apache.org/mirrors/#cn
    

     

      9)调用 alloc_pid() 为新进程分配一个有效的 PID;

    10)根据传递给clone() 的参数标志,copy_process() 拷贝或共享打开的文件、文件系统信息、信号处理函数、进程地址空间和命名空间等;

    11)做一些扫尾工作并返回一个指向子进程的指针。

    12)回到 do_fork() 函数,如果 copy_process() 函数成功返回,新创建的子进程将被唤醒并让其投入运行。

      下面用一段简单的代码演示一下 fork() 函数:

      1 #include <unistd.h>
      2 #include <stdio.h>
      3 
      4 int main(){
      5     pid_t fpid;
      6     int count= 0;
      7     fpid = fork();              // fpid 为fork()的返回值
      8     if(fpid < 0){               // 当fork()的返回值为负值时,表明调用 fork() 出错
      9         printf("error in fork!");
     10     }
     11     else if(fpid  == 0){        // fork() 返回值为0,表明该进程是子进程
     12         printf("this is a child process, the process id is %dn",getpid());
     13         count++;
     14     }
     15     else{                       // fork() 返回值大于0,表明该进程是父进程,这时返回值其实是子进程的PID
     16         printf("this is a father process, the process id is %dn",getpid());
     17         count++;
     18     }
     19     printf("计数 %d 次n",count);
     20     return 0;                                                                          
     21 }
    

    输出结果:

    本文由金沙国际官网发布于金沙国际平台登录,转载请注明出处:进程的创建和终结

    关键词:

上一篇:没有了

下一篇:没有了