1.关于pid_t和fork()的理解
今天学习进程的时候碰到一个语句:pid_t pid = fork();
这里的pid_t类似一个类型,就像int型一样,int型定义的变量都是整型的,pid_t定义的类型都是进程号类型。这个语句的意思是定义了一个pid_t类型的变量pid,fork()函数返回一个进程号,这个进程号赋给了pid。pid_t在头文件types.h(sys/types.h)中定义、
其中fork( void )为创建子进程,有趣的是他有三种不同的返回值
1、在父进程中,fork返回新创建的子进程的PID
2.、在子进程中,fork返回0
3、如果出现错误,fork返回一个负值
另外在子进程被创建之前,只有一个进程在运行,但在fork创建子进程后,两进程同时运行
int main(int argc ,char *argv ) { // printf("PID =%d \n",getpid()); // printf("PPID =%d \n",getppid()); pid_t pid; //定义一个进程号类型的变量 pid // 在此程序中,此时只有一个进程在运行 pid=fork(); // 在此程序中,此时只有两个进程在运行 if(pid<0) printf("error in fork!"); else if (pid==0) printf("I am the child process,ID is %d\n",getpid()); else printf("I am the parent process,ID is %d\n",getpid()); return 0; }
运行结果:创建了一个子进程,输出的结果为 I am the parent process,ID is 13655 I am the child process, ID is 13525,不同次执行时,进程的ID一般是不同的。
http://blog.sina.com.cn/s/blog_c5082df30102vyqf.html
2.linux tomcat mysql php安装
3.2安装和配置Apache Web服务器
1、检查是否已经安装apache
# rpm -qa |grep httpd
2、yum安装apache
# yum -y install httpd
# rpm -qa |grep httpd
3、开启停止重启apache服务
# service httpd start | stop | restart
检查是否已经启动apache服务
# service hsystemctl status httpd.service
# ps -A|grep httpd
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --reload
命令含义:
--zone #作用域
--add-service=http #添加服务;也可以添加端口
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
4、设置开机自动启动
# chkconfig --level 35 httpd on
5、外网访问验证
http://192.168.100.221/
3.3安装和配置MySQL数据库服务器
1、下载并安装MySQL官方的 Yum Repository
# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
2、安装MySQL的Yum Repository
# yum -y install mysql57-community-release-el7-10.noarch.rpm
3、之后就开始安装MySQL服务器。
# yum -y install mysql-community-server
4、启动MySQL
# systemctl start mysqld.service
5、查看MySQL运行状态
# systemctl status mysqld.service
6、在日志文件中找出root的登陆密码
# grep "password" /var/log/mysqld.log
2019-11-12T12:55:11.282657Z 1 [Note] A temporary password is generated for root@localhost: ll4XjeyP-bLw
7、登陆数据库
# mysql -uroot -p
8、修改root密码
> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘MySQL_2019‘;
9、安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉
# yum -y remove mysql57-community-release-el7-10.noarch
3.4安装和配置PHP
1、 yum安装PHP
#yum install php –y
2、测试是否安装成功
#php -v