欢迎光临IT网Linux学习频道

当前位置: > Linux服务器 > Linux系统 >
  • [Linux系统] 自旋锁 日期:2014-12-21 20:17:50 点击:61 好评:0

    自旋锁 自旋锁是专为防止多处理器并发而引入的一种锁,它在内核中大量应用于中断处理等部分(对于单处理器来说,防止中断处理中的并发可简单采用关闭中断的方式,即在标志寄存器中关闭/打开中断标志位,不需要自旋锁)。比如有A、B两个处理器协同工作,如果A...

  • [Linux系统] Linux空间划分 & MMU 日期:2014-12-21 20:17:06 点击:155 好评:0

    Linux内核地址空间划分 通常32位Linux内核地址空间划分0~3G为用户空间,3~4G为内核空间。注意这里是32位内核地址空间划分,64位内核地址空间划分是不同的。32位的Linux系统中从0x00000000到0xFFFFFFFF整个4GB虚拟存储空间。 内核空间:内核空间表示运行在处理...

  • [Linux系统] 如何减少缺页异常 日期:2014-12-21 20:16:28 点击:99 好评:0

    如何减少换页错误?() 1. 进程倾向于占用CPU 2. 访问局部性(localilty of reference)满足进程要求 3. 进程倾向于占用I/O 4. 使用基于最短剩余时间(shortest remaining time)的调度机制 5. 减少页大小 换页错误,一般称为缺页异常。每个进程都有一段自己...

  • [Linux系统] Linux内核态与用户态数据交换方式(一) 日期:2014-12-21 20:15:39 点击:181 好评:0

    在Linux下用户空间与内核空间数据交换的方式一 本系列文章包括两篇,它们文详细地介绍了 Linux 系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数与sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具...

  • [Linux系统] Linux内核态与用户态数据交换方式(二) 日期:2014-12-21 20:14:51 点击:192 好评:0

    本系列文章包括两篇,它们文详细地地介绍了Linux系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数与sysfs、 sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具体的例子帮助读者掌握这些技术的使 用。本文是...

  • [Linux系统] Linux_数据段、代码段、堆栈段、BSS段的区别 日期:2014-12-21 19:51:26 点击:96 好评:0

    5个数据段 进程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途 不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收...

  • [Linux系统] Linux_微内核和单内核 日期:2014-12-21 19:48:30 点击:57 好评:0

    Linux大部分都是单内核的 操作系统内核可能是微内核,也可能是单内核(后者有时称之为宏内核Macrokernel)。按照类似封装的形式,这些术语定义如下: 微内核(Microkernelkernel)――在微内核中,大部分内核都作为单独的进程在特权状态下运行,他们通过消息...

  • [Linux系统] Linux内存分配中的堆和栈 日期:2014-12-21 19:46:46 点击:131 好评:0

    1、什么是堆栈? 2、一道微软的笔试题。 3、自己写的两个关于堆栈的例子? 4、如何动态申请二维数组? 一、什么是堆栈? 1、内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack) 由编译器自动分配释放 ,存放函数的参数值,局部变量...

  • [Linux系统] Linux_C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区 日期:2014-12-21 19:45:57 点击:101 好评:0

    栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。在一个进程中,位于用户虚拟地址空间顶部的是用户栈,编译器用它来实现函数的调用。和堆一样,用户栈在程序执行期间可以动态地扩展和收...

  • [Linux系统] Linux Java中堆内存与栈内存分配浅析 日期:2014-12-21 19:45:10 点击:157 好评:0

    Java把内存划分成两种:一种是栈内存,另一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配,当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java 会自动释放掉为该变量...

栏目列表
推荐内容