对于普通 Linux 来说,终端的作用是一个字符(或者模拟字符)的命令交互界面,实现对计算机的控制。
最初的UNIX类型的系统是大型机系统(当时还没有个人计算机的概念,而Apple和IBM是个人计算机开发的两个推动者)。 用户需要远程登录大型机,并且多个用户可以通过终端进行访问。
一般来说,终端没有主机,只有显示键盘和鼠标(在当时,鼠标是相当先进的工具)。 大型机本身没有监视器键盘和鼠标。
到目前为止,Linux还保留了“终端”的概念,所有用户交互都使用终端方法来访问系统。 包括X环境也是一个特殊的终端实现, 尽管现在计算机本身将自身与终端相连。
扩展资料:
linux下开启终端的4种方法:
1、ctrl+alt+F1~F6之间使用,这是纯终端使用。
2、在linux桌面环境下,鼠标点击程序菜单,找到一般为实用程序或者系统工具类的菜单中找到终端程序。
3、调试模式的终端模式,在开机时候esc键,根据linux版本不同,进入方式也不同,这一般为系统出现故障才使用的终端模式。
4、可以使用类似SSH类型的软件,远程登录终端,这属于网络版终端,使用终端服务器软件,远程开启终端,这需要配置终端服务器。
有一定的联系。进程就是正在执行的程序,每个服务都有自己的进程,看看windows任务管理器里的进程就知道了。假如非得说终端与进程有关系的话,那就是终端要运行的话,必须有进程。但进程运行的话,是否有用到终端这个问题需要讨论,考虑过这个问题,但还没解决。我们都知道ps
命令
是可以查看进程的,其中ps
查看的结果里有tty这么一个显示字段,它代表的就是终端的意思,因此说,他们是有一定的联系的,用终端来区分前台进程与后台进程,还有就是有些用户登录不同的控制台执行命令,使用的也是不同的终端,至于其他就不是很清楚了。
linux进程组会话控制终端一个进程可以通过fork()调用创建子进程,这些进程就可以构成一个进程组。 进程组--------------------------------------------- 进程组是一个或多个进程的集合。每个进程组有一个称为组长的进程,组长进程就是其进程号(pid)等于进程组号(gid)的进程(即进程组号等于组长的进程号)。进程组的概念有很多用途,最常见的是我们在终端上向前台执行程序发出终止信号(Ctrl-C),同时终止整个进程组的所有进程。 (1). Shell上的一条命令行形成一个进程组 (2). 每个进程属于一个进程组 (3). 每个进程组有一个领头进程(组长) (4). 进程组的生命周期到组中最后一个进程终止, 或加入其他进程组为止 (5). getpgrp: 获得进程组id, 即领头进程的pid (6). 前台进程组和后台进程组 (7). 进程A(假设该进程为组长)和其子进程B属于同一进程组,它们的进程组号(task_struct.gid)都为进程A的进程号(A.pid)会话 --------------------------------------------- 会话期(Session,或者称为会话)则是一个或多个进程组的集合。通常情况下,用户登录后所执行的所有程序都属于一个会话期,而其登录shell则是会话期首进程(Session leader),并且它所使用的中断就是会话期的控制终端(Controlling Terminal),因此会话期的首进程通常也被称为控制进程(Controlling process)。当我们退出登录(logout)时,所有属于这个会话期的进程都将被终止。 (1). 一次登录形成一个会话 (2). 一个会话可包含多个进程组, 但只能有一个前台进程组. (3). setsid()可建立一个新的会话;如果调用该函数的进程不是进程组的领头进程, 该函数才能建立新的会话.调用setsid()之后, 调用进程将成为新会话的领头进程.控制终端--------------------------------------------- (1) 会话的领头进程打开一个终端之后, 该终端就成为该会话的控制终端 (SVR4/linux) (2) 与控制终端建立连接的会话领头进程称为控制进程 (session leader) (3) 一个会话只能有一个控制终端 (4) 产生在控制终端上的输入和信号将发送给会话的前台进程组中的所有进程 (5) 终端上的连接断开时(比如网络断开或Modem断开), 挂起信号将发送到控制进程(session leader)欢迎分享,转载请注明来源:内存溢出
评论列表(0条)