随笔分类 - linux/操作系统
摘要:首先,先稍微了解系统调用的概念: 系统调用,英文名system call,每个操作系统都在内核里有一些内建的函数库,这些函数可以用来完成一些系统系统调用把应用程序的请求传给内核,调用相应的的内核函数完成所需的处理,将处理结果返回给应用程序,如果没有系统调用和内核函数,用户将不能编写大型应用程序,及别
阅读全文
摘要:学会查看日志文件是一件很有意义的事,因为在Linux系统中运行的程序通常会把一些系统消息和错误消息写入对应的日志中,若是一旦出现问题,我们就可以通过查看日志来迅速定位,及时解决故障。 日志的三种类型# 内核及系统日志: 这种日志数据由系统服务rsyslog统一管理,根据其主配置文件/etc/rsys
阅读全文
摘要:一、用户态和内核态 内核态和用户态是操作系统的两种运行级别,用于区分不同程序的不同权利。 内核态就是拥有资源多的状态,或者说访问资源多的状态,也称为特权态。相对来说,用户态就是非特权态,访问的而资源将受到限制。如果一个程序运行在特权态,该程序就可以访问计算机的任何资源,它的资源访问权限不受限制。如果
阅读全文
摘要:概念太多了,信号,软中断,中断等等。试着做总结。 下面这个里面主要讲了硬件中断: http://www.cnblogs.com/charlesblc/p/6261741.html 下面这个里面主要讲了软中断,硬中断: http://www.cnblogs.com/charlesblc/p/62632
阅读全文
摘要:OS教科书对进程和线程的区别有这样简单的概括:进程是资源分配的单位,线程是调度的单位。但是Linux内核是不区分进程和线程的,都用任务(task_struct)来表示,什么时候叫进程什么时候叫线程,需要视上下文而定。虽没有专门的线程实现,但内核用轻量级进程LWP(Light Weight Proce
阅读全文
摘要:一、逻辑地址转线性地址 机器语言指令中出现的内存地址,都是逻辑地址,需要转换成线性地址,再经过MMU(CPU中的内存管理单元)转换成物理地址才能够被访问到 我们写个最简单的hello world程序,用gcc编译,再反汇编后会看到以下指令: mov 0x80495b0, %eax 这里的内存地址0x
阅读全文