一、创建进程 1.创建进程: (1)操作系统创建:它们之间是平等的,一般不存在资源继承关系。 (2)父进程创建:它和父进程存在隶属关系,通常称为子进程。子进程又可创建进程,这样形成一个进程家族。子进程可以继承父进程几乎所有的资源。 子进程继承父进程的很多属性,主要包括:用户ID,组ID,当前工作目录,根目录,打开的文件,创建文件时使用的屏蔽字,信号屏蔽字,上下文环境,共享的存储段,资源限制等。 ps: 系统进程:在系统启动时,操作系统会创建一些进程,它们承担着管理和分配系统资源的任务。 2.fork函数 (1)创建进程的实现 #include<sys/types.h> #include<unistd.h> pid_t fork(void); 成功调用fork函数后,当前进程实际上已经分裂成两个进程,一个是原来的父进程,一个是刚创建的子进程。 当进程创建成功,fork函数有两个返回值,一个是父进程调用fork函数后的返回值,该返回值是刚创建的子进程的ID,另一个是子进程中fork 继续阅读 >>


闫钰晨 16/07/28 10:42:45
Caused by: java.lang.IllegalArgumentException: An SPI class of type org.apache.lucene.codecs.PostingsFormat with name 'Lucene50' does not exist. You need to add the corresponding JAR file supporting this SPI t 作者:gaopu12345 发表于 2016/07/28 09:09:23 原文链接 https://blog.csdn.net/gaopu12345/article/details/52051781 阅读:1423 继续阅读 >>


高朴 16/07/28 09:09:23
进程概述 一.linux进程    linux是一个多用户,多任务的操作系统.    多用户:多个用户可以在同一时间使用计算机;    多任务:linux可以同时同时执行几个任务,可以在还未执行完一个任务时又执行另一个任务.    进程:进程是一个动态的实体,是程序的一次执行过程.进程是操作系统资源分配的基本单位.简单的说,进程是运行中的程序 a.进程和程序的区别   1.进程是动态的,程序是静态的   2.进程是运行中的程序,程序是一些保存在硬盘上可执行的代码 b.线程  1.在进程内部划分了多个线程,线程是比进程更小的能独立运行的基本单位  2.线程基本上不用系统资源,它与同属一个进程的其他线程共享进程的全部进程拥有的全部资源。  3.进程在执行过程中拥有独立的内存单元,其内部的线程共享这些内存。  4.一个线程可以创建和撤销另一个线程,同一个进程中的多个线程可以并行执行。    linux下可以通过ps 或 pstree查看当前系统的进程。 c.进程标识  linux操作系统中,每个进程都是 继续阅读 >>


董孟愿 16/07/28 08:51:36
myshell的完善及优化 实现普通命令输入及输入输出定向及错误提示 昨日未完成的任务 晚上小组总计讨论 给组长们检查了ls,找到了自己代码的bug及不完善的地方 作者:baidu_35085676 发表于2016/7/27 22:55:44 原文链接 阅读:7 评论:0 查看评论 继续阅读 >>


李余通 16/07/27 22:55:44
使用 setuid、setgid 和 Sticky 位的特殊文件权限 可执行文件和公共目录可以使用三种特殊类型的权限:setuid、setgid 和 sticky 位。设置这些权限之后,运行可执行文件的任何用户都应采用该可执行文件所有者(或组)的 ID。 设置特殊权限时必须非常小心,因为特殊权限会带来安全风险。例如,通过执行将用户 ID (user ID, UID) 设置为 0(这是 root 的 UID)的程序,用户可以获得 root 的功能。此外,所有用户可以为其拥有的文件设置特殊权限,这会带来其他安全问题。 应对系统中任何未经授权使用 setuid 权限和 setgid 权限获取 root 功能的情况进行监视。可疑权限为用户而不是 root 或 bin 授予管理程序的所有权。要搜索并列出所有使用此特殊权限的文件,请参见如何查找具有特殊文件权限的文件。 setuid 继续阅读 >>


楚东方 16/07/27 22:47:31
一、linux 进程 1、进程概念 百度 2、进程标识 进程ID:每个进程都通过惟一的进程ID标识, 进程ID是一个非负数。 每个进程除了进程ID外还有一些其他标识信息,都可通过相应的函数获得。 3、Linux进程的结构 Linux中一个进程由3部分组成:代码段、数据段、堆栈段 4、Linux进程状态 (1)R 运行状态 (2)S可中断等待状态 (3)D不可中断等待状态 (4)Z僵死状态 (5)T停止状态 二、进程的内存映像 命令行参数和环境量 ——————– 高地址 栈 堆 未被初始化数据段 数据段 代码段——————————————-低地址 栈:存放局部变量,函数参数 堆:动态分配内存 未初始化数据段:bss段,未初始化的变量 数据段:全局变量,静态变量,静态局部变量 代码段: 包含了进程运行的程序机器语言指令。文本段具有只读属性,以防止进程通过错误指针意外修改自 继续阅读 >>


闫钰晨 16/07/27 22:09:00
前面讲过了django学前需要做的准备,如果还没来的及看的话,请点击:http://blog.dreamchasinger.cn/?p=470 或http://blog.csdn.net/it_dream_er/article/details/51985936 今天就来分享一下django的入门知识,并带领大家写出自己的第一个页面,虽然很激动,但是还是希望大家按奈住自己的心情,认真学习! 怎样开始一个django项目?     这估计是很多初学者最关心的问题,感觉自己无从下手,下面就分享一下。     我们在前面已经成功安装django,如果还没安装的话,就快点安装吧!     打开shell,运行命令:django-admin.py startproject myproject 就可以开始一个名为myproject 的django项目     可以看到在当前的工作目录下出现了一个名为myproject的文件夹,其目录结构为:     下面简单解释一下每个 继续阅读 >>


周攀 16/07/27 22:04:50
wait和waitpid两个函数的功能: 1.防止产生僵尸进程              2.跟据需求,先让父进程挂起等待子进程结束后,再运行,实现进程的同步。 僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程。 如果进程不调用wait / waitpid的话, 那么保留的那段信息就不会释放,其进程号就会一直被占用,但是系统所能使用的进程号是有限的,如果大量的产生僵死进程,将因为没有可用的进程号而导致系统不能产生新的进程. 此即为僵尸进程的危害,应当避免。 wait函数: 函数原型: #include <sys/types.h>  #include <sys/wait.h> pid_t wait(int *status) 进程一旦调用了wait,就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经 继续阅读 >>


冯鑫 16/07/27 21:56:23
windows 下实现socket编程_传送文件 其实,Windows下的socket编程与Linux下的类似,这里不再赘述! 参考:http://blog.csdn.net/chudongfang2015/article/details/51926999 下面直接上代码: cilent.cpp: /************************************************************************* = File Name: Win_Client.c ************************************************************************/ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <WinSock2.h> #define PORT 8087 //端口号 #define S 继续阅读 >>


楚东方 16/07/27 21:47:15
守护进程是指在后台运行的,没有控制终端与之相连的进程。它独立于控制终端,经常周期性地执行某种任务。 所以要想创建一个守护进程,就要实现满足这两点。 在此之前,要先介绍一下进程组和会话组。 一个进程组可以包含多个进程 进程组中的这些进程之间不是孤立的,他们彼此之间或者存在者父子、兄弟关系,或者在功能有相近的联系。 那linux为什么要有进程组呢?其实提供进程组就是方便管理这些进程。假设要完成一个任务,需要同时并发100个进程,当用户由于某种原因要终止这个任务时,要是没有进程组,就需要一个个去杀死这些进程,设置了进程组后,就可以对进程组中的进程进行每个杀死。 进程 ---------------------------------------------  每个进程必定属于一个进程组,也只能属于一个进程组。 子进程属于父进程所在的进程组。   一个进程除了有进程ID外,还有一个进程组ID,每个进程组也有唯一的进程组ID。 每个进程组有一个进程组组长,进程组组长的进程ID和组ID相同 会话   继续阅读 >>


冯鑫 16/07/27 20:58:50