![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
juce
这个作者很懒,什么都没留下…
展开
-
一个Linux程序的执行过程的详解
1.父进程的行为: 复制,等待执行应用程序的方式有很多,从shell中执行是一种常见的情况。交互式shell是一个进程(所有的进程都由pid号为1的init进程fork得到,关于这个话题涉及到Linux启动和初始化,以及idle进程等,有空再说),当在用户在shell中敲入./test执行程序时,shell先fork()出一个子进程(这也是很多文章中说的子shell),并且wait()这个转载 2013-03-19 12:57:16 · 1174 阅读 · 0 评论 -
linux下svn客户端安装及环境配置
一、svn安装: 运行:#yum install subversion 即可安装。二、svn命令操作:检出:#svn --username=*** co svn_path local_path(以下参考http://www.cnblogs.com/sunyubo/archive/2010/05/25/2282164.html)1、 单个文件的操作(he原创 2013-06-07 17:19:49 · 623 阅读 · 0 评论 -
Linux下RPM软件包的安装及卸载
在 Linux 操作系统下,几乎所有的软件均通过RPM 进行安装、卸载及管理等操作。RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件。Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装。RPM 有五种操作模式,分别为:安装、卸载、升级、查询和验证。RPM 安装操作命令:rpm原创 2013-06-07 16:16:15 · 430 阅读 · 0 评论 -
x86的控制寄存器CR0,CR1,CR2,CR3
状态和控制寄存器组除了EFLAGS、EIP ,还有四个32位的控制寄存器,它们是CR0,CR1,CR2和CR3。这几个寄存器中保存全局性和任务无关的机器状态。CR0中包含了6个预定义标志,0位是保护允许位PE(Protedted Enable),用于启动保护模式,如果PE位置1,则保护模式启动,如果PE=0,则在实模式下运行。1位是监控协处理位MP(Moniter coproces原创 2013-03-19 14:14:33 · 9717 阅读 · 0 评论 -
利用异常表处理 Linux 内核态缺页异常
在程序的执行过程中,因为遇到某种障碍而使 CPU 无法最终访问到相应的物理内存单元,即无法完成从虚拟地址到物理地址映射的时候,CPU 会产生一次缺页异常,从而进行相应的缺页异常处理。基于 CPU 的这一特性,Linux 采用了请求调页(Demand Paging)和写时复制(Copy On Write)的技术1. 请求调页是一种动态内存分配技术,它把页框的分配推迟到不能再推迟为止。这种技术的动原创 2013-03-19 13:47:20 · 4429 阅读 · 0 评论 -
linux缺页异常处理--用户空间 .
用户空间的缺页异常可以分为两种情况--1.触发异常的线性地址处于用户空间的vma中,但还未分配物理页,如果访问权限OK的话内核就给进程分配相应的物理页了2.触发异常的线性地址不处于用户空间的vma中,这种情况得判断是不是因为用户进程的栈空间消耗完而触发的缺页异常,如果是的话则在用户空间对栈区域进行扩展,并且分配相应的物理页,如果不是则作为一次非法地址访问来处理,内核将终结进程下面来看d原创 2013-03-19 14:05:01 · 934 阅读 · 0 评论 -
ELF映像的装入
ELF映像的装入(一) 毛德操 现在我们来看看ELF映像的装入和启动。一般而言,应用软件的编程不可能是“一竿子到底”、所有的代码都自己写的,程序员不可避免地、也许是不自觉地、都会使用一些现成的程序库。对于C语言的编程,至少C程序库是一定会用到的。从编译/连接和运行的角度看,应用程序和库程序的连接有两种方法。一种是固定的、静态的连接,就是把需要用到的库函数的目标(二进制)原创 2013-03-19 13:24:31 · 563 阅读 · 0 评论 -
大端模式和小端模式
一、概念及详解 在各种体系的计算机中通常采用的字节存储机制主要有两种: big-endian和little-endian,即大端模式和小端模式。 先回顾两个关键词,MSB和LSB: MSB:Most Significant Bit ------- 最高有效位 LSB:Least Significant Bit ------- 最低有效位 大端模式(big-原创 2013-03-19 13:02:09 · 540 阅读 · 0 评论 -
init进程如何从内核态切换到用户态 .
大家都知道如何产生一个新的进程。 通过sys_fork,之后再调用sys_execve 系统初启后(核心态)的第一个用户态进程是init。 这要涉及到内层(特权级高)向外层(特权级低)转移的问题。 通常情况下,内核是不会调用用户层的代码,要想实现这逆向的转移,一般做法是在用户进程的核心栈(tss->esp0)压入用户态的SS,ESP,EFLAGS,CS,EI转载 2013-03-19 12:54:50 · 1431 阅读 · 0 评论 -
do_page_fault
//*********************************缺页异常处理函数*******************************************do_page_fault(struct pt_regs *regs, unsigned long error_code){ //获取当前cpu正在运行的进程的进程描述符原创 2013-03-19 14:19:23 · 1764 阅读 · 0 评论 -
linux存储管理 MMU
/* * =====================================================================================* * Filename: storage_managment存储管理原理和实现.c * * Description: 存储管理和实现,庞大的模块,2周搞定 * *原创 2013-03-19 13:35:43 · 1529 阅读 · 0 评论 -
Linux下支付宝安全控件安装程序运行原理
想登录个网银,结果在神样兼容性前瞬间阵亡。想起两年多前支付宝就推出了安全控件,手滑点开看看究竟。安全控件自身的原理当然不明;)不过安装程序写的也蛮有趣,代码不多逻辑简单,正好当个经典案例。从官网上下载的安全控件是个tar.gz的压缩包,里面很简单,只有一个shell文件即aliedit.sh。该文件的主要内容见下: 72 main() 73 { 74 S原创 2013-09-26 13:38:07 · 2571 阅读 · 0 评论