Linux-shell运行命令和运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。
而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel?

比如下面这个例子:

你是一个程序员,你比较害羞,你是用户命令:

小美时美女,你喜欢她,小美是核心

但是你太害羞了,说话吞吞呜呜的,不适合和小美直接交流,此时就需要媒婆(王婆)(shell外壳)来做媒介,将你的意思传达给小美,小美同意,命令执行成功,不喜欢,命令执行失败

小美不同意,但是你强行要王婆传达命令,王婆心想我不能砸我自己的牌子啊,所以就会找实习生来替她办事,无论实习生(子进程)做的好坏都不影响王婆的招牌。

总结:我们可以得出,shell运行的原理就是,创建子进程,让子进程对命令进行翻译给核心,子进程无论发生什么问题,都不会影响父进程(shell),shell进程的最主要作用在于保护内核的安全的同时,也会去创建子进程保护自己,子进程翻译失败,也不会影响父进程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想找后端开发的小杜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值