【Linux C 从入门到精通】笔记 1:Linux 系统概述

前言

细心的朋友会发现,我之前写的【C 语言】系列在【C 语言入门】完结后,就停止更新了,从 5 月 29 号到今天,已经停了有 一个半月了。并不是姐我变懒了,而是在我想把【C 语言初级】及后面的系列的例程迁移到 Linux 系统上去实现,【C 语言入门】的例程都是基于 Windows 的 Visual Studio 去做的,为了提高自己的能力,同时挑战下自己,我用了一个半月的时间去初步阅读了《Linux C 从入门到精通》这本书,对 Linux 操作系统算是有了大概的印象,能在 Linux 上敲敲指令和写写简单代码。
如果您也是个 Linux 初学者,我极力不推荐这本《Linux C 从入门到精通》。理由有如下几点:

  • 并未详细介绍 Linux 操作系统。
  • 在你读完了这本书后,也不清楚这本书的读者群体是谁。我看完了这本书,我并不知道,我能用 Linux + C 去实现什么, 目的性不强。
  • 最重要的是,例程 Bug 巨多!
  • 此外还有在我看来是大问题的:例程排版巨差!

NOTE:希望不要遭黑!
当然,我也只是粗略的看了一遍,可能是我看得仔细。接下来在做笔记(第 2 次阅读,仔细阅读)的时候,希望我能对这本书有所改观。

Linux 的历史

在学习一个新知识点之前,先了解他的历史背景,更事半功倍。因为历史造就了它的辉煌,述说了它的前世今生,就好比,要了解什么是中国人,先看中国的历史,现在站在大街上的每一个中国人,他的一举一动,都在体现着中华上下五千年的历史。扯远了,请略过!

操作系统

计算机系统:由硬件系统软件系统组成。
软件系统的基础:操作系统。

那操作系统是做什么的呢?
操作系统:管理着计算机内所有硬件资源和软件资源

主流的三大类操作系统

  • 微软的 Windows 系统
  • 苹果的 Mac 系统
  • Linux 系统,开源的,属于所有人的~

Linux的起源与发展

这里写图片描述

Linux 的内核

内核是操作系统的核心部分,系统的其他部分必须依靠内核部分软件提供服务。

内核的功能:承上启下

  • 对底层硬件:提供对计算机系统的硬件设备的管理,对硬件设备进行驱动。
  • 对上层应用软件:提供与硬件交互的纽带。

应用程序通过内核实现对硬件设备的访问。

内核的目的

  • 简化应用程序开发的难度
  • 更好的保护硬件

这里写图片描述

内核的组成

  • 中断服务程序
  • 调度程序
  • 内存管理程序
  • 网络和进程间通讯等

NOTE
Linux 内核独立于普通应用程序,拥有内核空间(受保护的内存空间和对硬件访问的所有权限)。

Linux 的主要特点

  • 支持动态加载内核模块 —— 内核可裁剪。
  • 支持对称多处理机制((Symmetrical Multi-Processing), SMP)
  • 充分体现自由开发
  • 对一些 UNIX 中的拙劣功能进行了优化和删除
  • 不区分线程和其他一般进程

猜你喜欢

转载自blog.csdn.net/xiuhua_wu/article/details/81044029