上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 45 下一页

2011年4月19日

摘要: 进程的结束 结束一个进程,就是要释放该进程所有的结构和资源,让系统从此之后再也感觉不到它的存在。如前面所说的,一个进程的结构包括:task[]数组中一项,指向了该进程的task_struct和内核堆栈所在页面;GDT中两项,一项是TSS描述符,一项是LDT描述符;若干页目录项和若干页表。一个进程拥有的资源包括:进程拥有的所有物理页面(包括页表和task_struct所占页面);进程打开的所有文件。GDT中的两项不用特意清除,以后别的进程要用时直接覆盖上去就了。因此,进程要结束就要做好如下几件事情释放所有物理页面;关闭所有打开的文件;清除task[]数组中相关项。清除task[]数组项往往... 阅读全文
posted @ 2011-04-19 22:22 yming0221 阅读(272) 评论(0) 推荐(0)

2011年4月15日

摘要: 高压平流泵的控制系统设计http://mips.eefocus.com/project/index.php?act=view&id=1061视频演示:高压平流泵控制系统_演示视频_BY_omniknighthttp://v.youku.com/v_show/id_XMjUzMTIwOTc2.html家用智能监控系统http://mips.eefocus.com/project/index_view_1131.html视频演示:http://v.youku.com/v_show/id_XMjUzMjk3NTg0.html基于Cerebot 32MX4 Board的无线智能温室大棚管理系统 阅读全文
posted @ 2011-04-15 16:07 yming0221 阅读(113) 评论(0) 推荐(0)

2011年4月12日

摘要: 半导体是手机、计算机、数字家电以及汽车等设备的核心零部件。位于日本岩手县的东芝电子和富士通半导体、位于茨城县的瑞萨电子和日本德州仪器等公司的工厂厂房在此次大地震中受到了直接冲击;截至目前,还没有恢复的迹象。日本半导体生产设备的总体份额为37%,半导体材料的总体份额则超过了66%。这场席卷日本东部地区的大地震与海啸给对世界产业经济举足轻重的半导体产业带来了多大影响呢? 限时停电使生产设备无法正常运转 日本媒体报道称,位于岩手县的东芝电子和富士通半导体、位于茨城县的瑞萨电子和日本得克萨斯仪器等公司的工厂厂房被震裂,受到了直接冲击。目前为止,似乎还没有恢复的迹象。 同时,福岛第一核电站发生的重大事故 阅读全文
posted @ 2011-04-12 23:26 yming0221 阅读(137) 评论(0) 推荐(0)
摘要: 进程是程序的一次执行过程。用剧本和演出来类比,程序相当于剧本,而进程则相当于剧本的一次演出,舞台、灯光则相当于进程的运行环境。进程的堆栈每个进程都有自己的堆栈,内核在创建一个新的进程时,在创建进程控制块task_struct的同时,也为进程创建自己堆栈。一个进程 有2个堆栈,用户堆栈和系统堆栈;用户堆栈的空间指向用户地址空间,内核堆栈的空间指向内核地址空间。当进程在用户态运行时,CPU堆栈指针寄存器指向的 用户堆栈地址,使用用户堆栈,当进程运行在内核态时,CPU堆栈指针寄存器指向的是内核栈空间地址,使用的是内核栈;进程用户栈和内核栈之间的切换当进程由于中断或系统调用从用户态转换到内核态时,进程 阅读全文
posted @ 2011-04-12 23:22 yming0221 阅读(218) 评论(0) 推荐(0)

2011年4月10日

摘要: 内核态与用户态intelx86 架构的CPU分Ring0-Ring3三种级别的运行模式,Ring0级别最高,Ring3最低。 针对不同的 级别,有很多的限制,比如说传统的 in ,out 指令,就是端口的输入输出指令,在 Ring0 级下是可以用的,但在 Ring3 级下就不能用,你用就产生陷井,告诉你出错了,当然限制还有很多了,不只是这一点。 操作系统下是利用这个特点,当操作系统自己的代码运行时, CPU 就切成 Ring0 级,当用户的程序运行是就只让它在 Ring3 级运行,这样如果用户的程序想做什么破坏系统的事情的话,也没办法做到。 当然,低级别的程序是没法把自己升到高级别的,也就是说 阅读全文
posted @ 2011-04-10 22:18 yming0221 阅读(218) 评论(0) 推荐(0)
摘要: <!-- @page { margin: 0.79in } P { margin-bottom: 0.08in } --> 汇编语言中也需要通过某些途径来使用操作系统提供的服务,也就是系统调用;系统调用就是通过与操作系统内核通信来完成;系统调用会把用户态程序的调用转换成对系统内核服务的调用;Linux平台下有两种方式来使用系统调用:一种是利用封装后的C库(libc),另一种是通过汇编直接调用;其中,通过汇编语言来直接调用系统调用,是最高效地使用Linux内核服务的方法,因为最终生成的程序不需要与任何库进行连接,而是直接与内核通信;与DOS一样,Linux下的系统调用也是通过中断(i 阅读全文
posted @ 2011-04-10 21:45 yming0221 阅读(316) 评论(0) 推荐(0)

2011年4月8日

摘要: 一 前言 本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mountNFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. 其实在 skyeye 上移植 arm-linux 并非难事,网上也有不少资料, 只是大都遗漏细节, 以致细微之处卡壳,所以本文力求详实清析, 希望能对大家有点用处。二 安装 Skyeye 我们选定 skyeye 的 1.2.4 这个版本, 为了能让它上面运行的 arm-linx 能挂接 NFS,我们需要修改 device/net/dev_net_cs8900a.c (修改后的文件在附件里), 再编译 阅读全文
posted @ 2011-04-08 16:31 yming0221 阅读(481) 评论(0) 推荐(0)

2011年4月7日

摘要: compile & install skyeye1.3.0_rc1. ./configure --prefix=/opt/skyeye2. make(1). apt-get install libx11-dev(2). X11/xpm.h: No such file or directory >sudo apt-get install libxpm-dev(3). error: bfd.h: No such file or directory >sudo apt-get install binutils-dev(4). >cd third-party/opcodes 阅读全文
posted @ 2011-04-07 22:31 yming0221 阅读(193) 评论(0) 推荐(0)

2011年4月6日

摘要: <!-- @page { margin: 0.79in } P { margin-bottom: 0.08in } -->一.搭建arm开发测试环境1.下载arm-elf-tools-20030314.sh从uClinux.org2.执行 $sudo sh arm-elf-tools-20030314.sh 安装arm交叉编译环境,可通过终端下输入 arm-elf-gcc-v 检验是否安装好了3.在源里下载安装skyeyearm的模拟环境 $sudo apt-get install skyeye安装好后,可在终端下输入skyeye,检验是否安装好了二.使用开发工具编写hel... 阅读全文
posted @ 2011-04-06 22:25 yming0221 阅读(499) 评论(0) 推荐(0)

2011年4月5日

摘要: 将ARMADS下的汇编码移植到GCCfor ARM编译器时,有如下规则:1,注释行以"@"或"/*... */"代替";" 2, GET或INCLUDE=> .INCLUDE如:getoption.a => .include "option.a" 3, EQU =>.equTCLK2 EQU PB25 => .equ TCLK2, PB25 SETA ==> .equ SETL ==> .equ BUSWIDTH SETA 16 =>.equ BUSWIDTH, 16 4, 阅读全文
posted @ 2011-04-05 20:51 yming0221 阅读(371) 评论(0) 推荐(0)
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 45 下一页

导航