进程和线程windows
可执行文件:就是一个文件,若是没有执行,和普通的文件同样安全
进程:可执行文件的动态活动的表现,一次生命历练,资源最基本的单位多线程
线程:cpu最小的调度单位,多核以后才是真正意义上是的并发并发
andriod是多进程多线程函数
进程边界的安全围栏:Crash的不可扩展性spa
当一个进程出现问题的时候,系统不会由于当前的进程出现问题而致使整个系统的崩溃,这就是他的安全围栏。线程
例如windows:对象
例如Android的:进程
这些都是Crash,可是他不会由于某个文件出错而致使整个系统崩溃。可是若是kernel Crash的话,整个系统就挂掉了。只须要保证kernel的健壮性就ok了。内存
全局数据和服务的不可访问性
每一个应用都有一个本身独立的运行空间。如上图,个人银行密码存在A,取钱函数在B,若是另外一个恶意应用经过读取我b里面对应的数据,那个人银行密码就会被泄露了,可是在安卓里面是不可访问的。即便另外一个应用也读取B的数据,可是他读取的是另外一段物理内存的地址,不可能访问到我A里面的物理内存,这就是 Android里面的全局数据和服务的安全机制。
多用户和多用户边界
一个系统里面运行的时候,其实是多个进程在运行。
特性标识实际上是进程的UID/GID
查看某个用户正在执行的进程:ps aux | grep dailei
每一个用户都有本身独立的工做空间。
手机用户root了怎么办?
一旦应用撺掇获得了root权限就能够作任何事情,可是就算被root,也不能让他随心所欲。
DAC(自主访问控制):传统的UNIX和Linux安全管理模型,主体对它所属的对象和运行程序有所有的控制权。
MAC(强制访问控制):管理员访问控制,管理员制定策略,用户不能改变。
SEAndroid