操作系统
知识的港湾
高级软件开发工程师
展开
-
Linux操作系统基础知识之二:内存寻址
Q1. 什么是物理地址?什么是虚地址?什么是线性地址?A:1) 将主板上的物理内存条所提供的内存空间定义为物理内存空间,其中每个内存单元的实际地址就是物理地址;2) 将应用程序员看到的内存空间定义为虚拟地址空间(或地址空间),原创 2011-10-10 16:39:42 · 2610 阅读 · 3 评论 -
iOS的层次结构概述
在学习iOS开发之前,我们有必要了解一下iOS的层次结构,这样也可以让自己对整个系统有清晰的认识,能够对自己所从事的工作有一个合理的定位。原创 2016-08-01 21:39:18 · 4682 阅读 · 0 评论 -
Linux下的基本操作命令集锦
对于Linux下的开发人员来说,除了编写代码之外,也要熟练掌握Linux操作系统的一些基本操作。很多开发人员可能会有这样的经历:有很多非常简单的操作命令长期不用就忘掉了,等需要用到的时候又要到处去找,甚至去问周围的同事。在尴尬之余,我们也怪自己没有将那些简单而有用的操作命令记录下来。本文汇总了我在使用Linux的过程中所使用过的一些基本操作,可供相关的开发人员参考。原创 2016-05-09 18:53:59 · 4615 阅读 · 0 评论 -
操作系统随想
我们每天都在与计算机打交道,它改变了整个人类的生活。打开电脑后,我们想进入哪个主题,只需用鼠标点击一下相应的图标即可。这真是太方便了!但是你有没有想过,为什么计算机会那么听话,总是乖乖地完成你给它布置的任务,虽然偶尔也会“罢工”?在你实现超级体验的过程中,它又做了些什么?以上这些原创 2011-10-02 10:29:24 · 2053 阅读 · 6 评论 -
掌握VI编辑器(三)
EXINIT环境变量和.exrc文件有两种方式来个性化VI编辑器。如果你在主目录下生成了一个叫做.exrc的文件,当VI启动的时候,那里面所有的命令都会被读到。另外一种方法是设置一个叫做EXINIT的环境变量。该选项在你的shell的建立文件里被设置。如果你使用/bin/csh (C-Shell),命令如下(被放置在.cshrc文件里面):setenv EXINIT '...'。如果你使用翻译 2012-08-04 20:26:04 · 2771 阅读 · 0 评论 -
掌握VI编辑器(二)
VI的两种模式 大多数用户了解VI编辑器的第一件事就是它有两种模式:command(命令)和insert(插入)。command模式允许命令条目来操纵文字。这些命令通常是一个或两个字符长,可以敲几下键盘便被输入了。insert模式将任何在键盘上敲击的内容输入现在的文件中。 VI是以command模式启动的。有几个命令来将VI编辑器转入insert模式。最常用翻译 2012-07-15 16:19:17 · 2040 阅读 · 0 评论 -
掌握VI编辑器(一)
资料来源:University of Hawaii at Manoa College of Engineering。 引言 VI编辑器是一个被许多Unix用户使用的基于屏幕的编辑器。VI编辑器具备强大的功能来帮助程序员,但是许多初学者因为要面对很多不同的指令而对使用VI敬而远之。写作本教程的目的就是要帮助初学者适应VI编辑器的使用,当然,也有一些小节的内容与VI的惯用者有翻译 2012-07-07 17:46:00 · 2408 阅读 · 4 评论 -
Linux操作系统基础知识之一:Linux操作系统概述
Q1. 什么是GNU?Linux与GNU有什么关系?A:1) GNU是GNU is Not Unix的递归缩写,是自由软件基金会(Free Software Foundation,FSF)的一个项目,该项目已经开发了许多高质量的编程工具,包括e原创 2011-10-09 20:23:37 · 3483 阅读 · 2 评论 -
Linux操作系统基础知识之九:设备驱动
Q1. 为什么把设备分为“块设备”和“字符设备”两大类?A:1) Linux将设备看成文件,具有三方面的含义:第一,每个设备都对应一个文件名,在内核中也就对应一个索引节点;第二,对文件操作的系统调用大都适用于设备文件;第三,从应用程序的角度看,原创 2011-10-17 19:16:07 · 2170 阅读 · 0 评论 -
Linux操作系统基础知识之八:文件系统
Q1. Linux目录树结构是怎样的?它与Windows的目录树结构有什么区别?为什么Linux的文件系统采用固定的目录形式?A:文件是一个抽象的概念,它是存放一切数据或信息的仓库;1) Linux的目录树结构为:根目录(/)在上,其它的平行在原创 2011-10-16 20:00:06 · 2495 阅读 · 4 评论 -
Linux操作系统基础知识之六:系统调用
Q1. 什么是系统调用?为什么要引入系统调用?A:1) 操作系统为用户态的进程与硬件设备(如CPU、磁盘和打印机等)之间的交互提供了一组接口,这些接口使得程序更具有可移植性,因为不同的操作系统只要所提供的一组接口相同,那么在这些操作系统之上就可原创 2011-10-14 14:58:10 · 2069 阅读 · 0 评论 -
Linux操作系统基础知识之七:内核中的同步
Q1. 什么是临界区?什么是竞争状态?什么是同步?A:1) 临界区(critical regions)就是访问和操作共享数据的代码段,多个内核任务并发访问同一个资源通常是不安全的;2) 如果两个内核任务可能处于同一个临界区,就原创 2011-10-15 16:26:41 · 1963 阅读 · 0 评论 -
Linux操作系统基础知识之五:中断和异常
Q1. 什么是中断?什么是异常?二者有何不同?A:1) 中断控制是为克服对I/O接口采用程序查询控制服务方式所带来的处理器低效率而产生的,它的主要优点是只有在I/O接口需要服务时才能得到处理器的响应,而不需要处理器不断地进行查询;因此,最初的中原创 2011-10-13 15:16:24 · 2624 阅读 · 0 评论 -
Linux操作系统基础知识之四:内存管理
Q1. 为什么把进程的地址空间划分为“内核空间”和“用户空间”?A:Linux的虚拟地址空间的大小为4GB,内核将这4GB的空间分为两部分,较高的1GB(虚地址0xC0000000到0xFFFFFFFF)供内核使用,称为“内核空间”;而较低的3GB(虚地址0x0原创 2011-10-12 15:52:36 · 2563 阅读 · 0 评论 -
时钟
瑞士的钟表世界闻名,拥有这么一块表是每个人的心愿。也许你已经发现,钟表早已成了我们日常生活的重要组成部分,戴在手上的表,挂在墙上的石英钟,甚至计算机上面的时间显示器。有调查表明,一天中看表频率最高的人群,通常是工作比较繁忙的中产阶级。所以,如果你经常看表,那么恭喜你,整个社会会因原创 2011-10-02 10:32:14 · 2205 阅读 · 1 评论 -
Linux操作系统基础知识之三:进程
Q1. 程序与进程的概念分别是什么?为什么要引入“进程”的概念?A:1) 程序是一个普通文件,是机器代码指令和数据的集合,这些指令和数据存储在磁盘上的一个可执行映像中,可执行映像(executable image)就是一个可执行文件的内容;原创 2011-10-11 15:18:09 · 2713 阅读 · 0 评论 -
确保线程安全的几种方法
本文首先对线程进行简单的介绍,然后介绍几种保证线程安全的方法。原创 2017-07-10 18:12:43 · 29684 阅读 · 6 评论