进程 vs 线程:
1.进程是运行中的程序,是系统进行资源分配和调度的一个独立单位;线程是程序执行的最小单位,是CPU调度和分派的基本单位;
2.进程是资源分配的基本单位,同一进程内多个线程共享其资源;
3.进程拥有独立的地址空间,同一进程内多个线程共享其资源;
4.进程包括(地址空间(内存)、寄存器(CPU状态)、I/O状态),是对计算机的完整抽象;
5.线程包括(栈、寄存器(CPU状态)),是对处理器的最小抽象;
进程是什么:
1.(简单下定义)进程是运行中的程序
2.(解释定义)运行中:地址空间 cpu状态 I/O状态
3.(展开)I/O状态:每个进程都有一个进程描述符 cpu状态:寄存器 地址空间:页表
4.(由此带来的性质:便利/不便)进程间相互隔离好 通信不便/进程抽象完整,互相之间松耦合;一个进程崩溃,其他进程继续运行;由于进程间地址空间相互独立,所以相互通信不方便.
5.(举例)web服务器
线程是什么:线程是程序执行的最小单位。
线程是进程中的实体,一个进程可以拥有多个线程,一个线程必须有一个父进程。线程不拥有系统资源,只有运行必须的一些数据结构;它与父进程的其它线程共享该进程所拥有的全部资源。线程可以创建和撤消线程,从而实现程序的并发执行。
线程是程序中一个单一的顺序控制流程.在单个程序中同时运行多个线程完成不同的工作,称为多线程
信号是什么:信号是消息的表现形式,消息是信号的具体内容。
锁(用来控制并发访问的数据结构),
信号量是什么:信号量(Semaphore),有时被称为信号灯,是在多线程环境下使用的一种设施,是可以用来保证两个或多个关键代码段不被并发调用
比较进程间通信方式:信号 共享内存 管道 套接字
信号是事件通信 其他是数据通信
共享内存(捕捉):不是流通信,管道和套接字是流通信
管道:双向通信
套接字:单向通信
比较进程和线程的通信方式:(线程的通信方式:信号量,消息,事件)
比较TCP/UDP:
TCP:面向连接,是可靠传输,适用于传输大量数据,速度慢;
UDP:面向非连接,是不可靠传输,适用于传输少量数据,速度快;
比较服务器并发方式:
比较epoll和select:
什么是编程语言?(人写,计算机执行)
计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类。 如果按语种分,可以分为英文符号语言和汉语符号语言两类。(典型的如:易语言、易语言.飞扬) 电脑每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。 目前通用的编程语言有两种形式:汇编语言和高级语言。
1.进程是运行中的程序,是系统进行资源分配和调度的一个独立单位;线程是程序执行的最小单位,是CPU调度和分派的基本单位;
2.进程是资源分配的基本单位,同一进程内多个线程共享其资源;
3.进程拥有独立的地址空间,同一进程内多个线程共享其资源;
4.进程包括(地址空间(内存)、寄存器(CPU状态)、I/O状态),是对计算机的完整抽象;
5.线程包括(栈、寄存器(CPU状态)),是对处理器的最小抽象;
进程是什么:
1.(简单下定义)进程是运行中的程序
2.(解释定义)运行中:地址空间 cpu状态 I/O状态
3.(展开)I/O状态:每个进程都有一个进程描述符 cpu状态:寄存器 地址空间:页表
4.(由此带来的性质:便利/不便)进程间相互隔离好 通信不便/进程抽象完整,互相之间松耦合;一个进程崩溃,其他进程继续运行;由于进程间地址空间相互独立,所以相互通信不方便.
5.(举例)web服务器
线程是什么:线程是程序执行的最小单位。
线程是进程中的实体,一个进程可以拥有多个线程,一个线程必须有一个父进程。线程不拥有系统资源,只有运行必须的一些数据结构;它与父进程的其它线程共享该进程所拥有的全部资源。线程可以创建和撤消线程,从而实现程序的并发执行。
线程是程序中一个单一的顺序控制流程.在单个程序中同时运行多个线程完成不同的工作,称为多线程
信号是什么:信号是消息的表现形式,消息是信号的具体内容。
锁(用来控制并发访问的数据结构),
信号量是什么:信号量(Semaphore),有时被称为信号灯,是在多线程环境下使用的一种设施,是可以用来保证两个或多个关键代码段不被并发调用
比较进程间通信方式:信号 共享内存 管道 套接字
信号是事件通信 其他是数据通信
共享内存(捕捉):不是流通信,管道和套接字是流通信
管道:双向通信
套接字:单向通信
比较进程和线程的通信方式:(线程的通信方式:信号量,消息,事件)
比较TCP/UDP:
TCP:面向连接,是可靠传输,适用于传输大量数据,速度慢;
UDP:面向非连接,是不可靠传输,适用于传输少量数据,速度快;
比较服务器并发方式:
比较epoll和select:
什么是编程语言?(人写,计算机执行)
计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类。 如果按语种分,可以分为英文符号语言和汉语符号语言两类。(典型的如:易语言、易语言.飞扬) 电脑每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。 目前通用的编程语言有两种形式:汇编语言和高级语言。