Linux编程入门(1)-理解系统编程

一些概念

操作系统职责:计算机用操作系统来管理所有的资源,并将不同的设备和不同的程序连接起来。

操作系统与普通程序一样,在内存中运行。它的特殊之处是,能把普通程序与其他程序或者设备连接起来。

内存空间用来存放程序和数据,所有的程序都必须在内存空间中才能运行,用来容纳操作系统的内存空间叫做系统空间,容纳应用程序的内存空间叫做用户空间

操作系统也被称为内核。程序要从键盘得到数据,必须向内核发出请求;若在显示器上显示结果,也要通过内核,程序中所有对设备的操作都是通过内核进行的。

操作系统的基本功能:(1)防止硬件被失控的应用程序滥用;(2)向应用程序提供简单一致的机制来控制复杂而又通常大不相同的低级硬件设备。

在进行系统编程时,必须对系统的结构和工作方式有更深的了解,要知道内核提供哪些服务(系统调用),如何使用他们,系统有哪些资源和设备,不同的资源和设备如何操作。

系统资源

  1. 处理器(Processor)处理器是执行程序指令的硬件设备。内核能够安排一个程序的执行、停止、恢复执行。
  2. 输入输出(I/O)程序中所有的输入/输出的数据、终端的输入/输出数据以及硬盘的输入/输出数据,都经过内核。
  3. 进程管理(Process Management)进程指程序的一次运行。内核与进程相关的服务有:新建进程、终止进程、进程调度。
  4. 内存(Memory)内存是计算机系统中很重要的资源,程序必须被装载到内存中才可运行。内核的职责之一是内存管理。
  5. 设备(Device)计算机系统可以有各种各样的外设,他们的操作方式各不相同。内核能够提供简单而统一的操作方式。
  6. 计时器(Timers)程序的工作与时间有关,内核可以通过系统调用向应用程序提供计时器服务。
  7. 进程间通信(Interprocess Communication)计算机的世界中,内核提供的服务使不同的进程间通信成为可能,通信也是资源。
  8. 网络(Networking)网络通信也是内核提供的服务。

用户角度理解Linux

登陆-运行程序-注销

在登陆过程中,当用户名和密码验证后,系统会启动一个叫 shell 的进程,由这个进程处理用户的请求。shell为用户提供服务,shell和用户之间的连接由内核控制。

shell在屏幕上显示提示符,用户可以在提示符后输入要运行的程序的名字,内核负责把用户的输入传输给shell。

用户注销时,内核会结束所有分配这个用户的进程。

目录操作

在Linux系统中,文件和目录被组织成树状结构,Linux提供相应的指令来对目录进行操作。如图为目录树的一部分

Linux编程入门(1)-理解系统编程

目录树结构

文件系统的最顶端是“/”,叫做根目录。大多数的Linux系统都在根目录下有 /etc、/home、/bin、/proc 等几个子目录,都有特定用途。

(1)ls——列出目录内容

(2)cd——改变当前目录

(3)pwd——显示当前目录

(4)mkdir、rmdir——新建、删除目录

文件操作

(1)cat,more,less,pg——查看文件内容

(2)cp——文件复制

(3)rm——文件删除

(4)mv——重命名或移动文件

(5)lpr,lp——打印文件

每个文件都有文件所有者和文件许可权限。许可权限分为3组,通过 ls -l 命令可以看到。

- rwx rwx rwx r:read, w:write, x:execute

user goup other

与3组许可权限对应,用户也被分为3组:user 文件所有者;group 与文件所有者同组的用户;other 其他用户。每组用户都可以有3种权限:读、写、执行。

系统角度看Linux

Linux系统编程中3个重要的方面:

Linux主要结构

内存被分为系统空间和用户空间,内核和它的数据结构位于系统空间,用户程序位于用户空间。用户通过终端连接到系统。文件存放在磁盘上,各种各样的设备被内核直接管理。用户程序可以通过内核来访问设备。用户也可以通过网络接入系统。

小结

展开阅读全文

更新时间:2024-07-29

标签:系统   内核   入门   进程   操作系统   操作   文件   目录   程序   用户   设备

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top