Linux进程概念总结

这里总结下Linux进程概念总结❗ 

冯诺依曼:

  • CPU   运算器与控制器
  • RAM 内存(存储器)
  • Cache 缓存(一种技术)不属于冯诺依曼体系结构。
  • ROM 磁盘(输入输出设备)
  • 磁盘 既可以从硬盘读取数据也可以向硬盘写入数据。
  • 冯诺依曼体系结构中数据输入设备的有键盘/磁盘。
  • 冯诺依曼体系结构计算机的基本原理 存储程序和程序控制。

操作系统:

  • 计算机就是为了完成指定的数据处理,而通过指令按指定流程完成指定功能,指令的合集就是一段程序。说白了计算机就是按照指定的指令执行流程完成对指定数据的处理。

  • 操作系统:操作系统的定位就是控制和管理计算机上软硬件资源让计算机更加好用

  • 编译器:对汇编语言,高级语言和甚高级语言程序进行翻译,将高级语言解释为机器指令能够被机器识别执行。这不是操作系统的主要功能,而是一个外部应用的主要功能。

  • 源程序以及数据库文件都是存储在磁盘上的,这是操作系统中文件系统管理部分的主要功能。

系统调用:

  • 应用程序通过系统调用将自己需要完成的功能传递给内核,进行执行完成。

  • 系统调用的运行过程是在内核态完成的,操作系统并不允许用户直接访问内核,也就是说用户运行态并不满足访问内核的权限。(系统调用函数的执行过程应该是不在用户态)

  • 系统调用就是想上层提供用于完成特定内核服务或功能的。利用系统调用能够得到操作系统提供的多种服务。

  • 是操作系统提供给编程人员的接口。

  • 系统调用给用户屏蔽了设备访问的细节,用户只需要将自己的请求以及数据通过系统调用接口传递给内核,内核中完成对应的设备访问过程,最终返回结果正确。

  • 系统调用保护了一些只能在内核模式执行的操作指令,系统向上层提供系统调用接口用于访问内核服务或功能的很大原因也是因为这样可以最大限度的保护内核的稳定运行。

  • 库函数是用户对系统调用接口的进一步封装接口
  • printf函数是glibc中封装的用于实现格式化输出的接口
  • scanf函数是glibc中封装的用于实现格式化输入的接口
  • fgetc函数是glibc中封装的用于实现从输入流中获取字符的接口
  • read是系统提供的用于从输入设备获取数据的接口
  • print_s以及scan_s这两个函数不存在,至少在C语言的常见典型的跨平台移植代码库中不存在。
  • fgetc是系统调用而不是库函数

 Linux的进程:

  • 僵尸进程指的是进程退出后不会完全释放资源,会造

你可能感兴趣的:(Linxu系统编程,linux,操作系统)