如题,Linux系统可以同时启动多个shell进程,并在其中执行相关命令么?敝人认为是可以的,就相当于同时启动多个bash终端,但有朋友说不行,So特此请教!
另:Linux系统中通过kill -6命令杀死进程后,进程所拥有的资源如(申请的内存)如何处理,成为僵尸进程后等待父进程处理?
肯定是可以的,注意所谓的同时有很多种情况
比如用途tmux 或者screen等,在不同的窗口中启动运行很久的shell是很常见的情况,这些shell其实就是同时在运行的多个shell
此单个客户端下,如果shell可以在后台运行,则在命令后面加上 & 放置到后台,则可以启动多个shell
你朋友说不行,是基于一个如果shell全是前台执行(比如一些无交互要求的shell,只是单纯的执行时间很长),则在一个客户端下,必须一个shell退出后才会执行下一个shell。
所以到底是否可行要看你具体的需求和相应shell应用情况。
每个shell都是一个独立的进程,都是可以自己独立运行的,其中的任务操作也是这个进程的子进程,与其他的shell没有关系的。
当父进程关后,子进程也会关的,申请的内存系统会自己回收
我觉得关键字在“执行相关命令”。
肯定是支持多shell,这点毫无疑义。但是相关命令就不一定了,很多命令是自锁的,在执行完之前,不允许执行另外一个副本,一般用在统计时间、显示状态、或者某些占用某些硬件资源的特殊应用。
可以,ubuntu就是这样的,上面开很多个shell也是可以的
其实在Linux系统下,shell也只是个进程,shell上面运行的命令相当于它的子进程