上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页
摘要: 第一部分:1. ubuntu下配置环境anroid变量:在终端执行sudo gedit /etc/profile 打开文本编辑器,在最后追加#set android environment2. 运行Eclipse,还需要配置JAVA环境变量#set java environmentJAVA_HOME=/home/loginname/jdk目录名JRE_HOME=/home/loginname/jdk目录名/jreexport PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib: 阅读全文
posted @ 2012-10-10 14:53 __Shadow 阅读(8200) 评论(0) 推荐(0) 编辑
摘要: 一 Socket Socket最初用在基于TCP/IP网络间进程通信中,以客户端/服务器模式进行通信。实现异步操作,共享资源集中处理,提高客户端响应能力。Tcp通信基本流程: 服务器端 客户端 1.创建socket1.创建socket 2.bind() 3.listen() 4.accecp() ----等待客户端连接---- 2.connect() 5.读数据(recv)3.写数据(send) 6.写数据(send)4.读数据(recv) 7.关闭socket(closesocket()) 5.关... 阅读全文
posted @ 2012-10-09 16:55 __Shadow 阅读(61769) 评论(0) 推荐(5) 编辑
摘要: 一 块I/O基本概念字符设备:按照字符流的方式被有序访问的设备。如串口、键盘等。块设备:系统中不能随机(不需要按顺序)访问固定大小的数据片(chunk 块)的设备。 如:硬盘、软盘、CD-ROM驱动器、闪存等。都是通过以安装文件系统的方式使用。块设备的组成: 扇区:是块设备中最小的可寻址单元(常见大小512字节);是块设备的基本寻址和操作单元。 块:是文件系统最小逻辑可寻址单元,文件系统的抽象,只能通过块访问文件系统。通常包含多个扇区。 当一个块被调入内存时(读入后或等待写出时),它要存储在一个缓冲区中;每个缓冲区与一个块对应,缓冲区相当于是磁盘块在内存中的表示;块大小不超过一个页面,... 阅读全文
posted @ 2012-09-27 09:36 __Shadow 阅读(2041) 评论(0) 推荐(0) 编辑
摘要: Linux下常见命令 原文地址:http://www.cnblogs.com/Gaojiecai/archive/2011/11/03/2234888.html=============安装和登陆命令========================================Mount:挂载命令。把存储介质指定成系统中的某个目录,比如挂载光驱mount /dev/cdrom把CDROM挂载,可在目录/mnt/cdrom下查看内容。umount:卸载命令,比如umount /dev/cdromexit:退出终端命令。shutdown:关闭linux系统,后面可加参数,比如shut do... 阅读全文
posted @ 2012-09-26 19:21 __Shadow 阅读(2108) 评论(0) 推荐(0) 编辑
摘要: 虚拟文件系统虚拟文件系统:内核子系统VFS,VFS是内核中文件系统的抽象层,为用户空间提供文件系统相关接口;通过虚拟文件系统,程序可以利用标准Linux文件系统调用在不同的文件系统中进行交互和操作。VFS作为抽象层: 文件系统被安装在一个特定的安装点上,该安装点在全局层次结构中被称作命名空间,所有的已安装文件系统都作为根文件系统树的枝叶出现在系统中。 文件系统主要的对象:超级块对象:代表一个已安装文件系统;struct super_block {}索引节点对象:代表一个文件;struct inode {}目录项对象:代表一个目录项,路径的一个组成部分;struct dentr... 阅读全文
posted @ 2012-09-26 16:09 __Shadow 阅读(1435) 评论(0) 推荐(0) 编辑
摘要: 一 页 内核把物理页作为内存管理的基本单位;内存管理单元(MMU)把虚拟地址转换为物理地址,通常以页为单位进行处理。MMU以页大小为单位来管理系统中的也表。 32位系统:页大小4KB 64位系统:页大小8KB内核用相应的数据结构表示系统中的每个物理页: <linux/mm_types.h> struct page {}内核通过这样的数据结构管理系统中所有的页,因此内核判断一个页是否空闲,谁有拥有这个页,拥有者可能是:用户空间进程、动态分配的内核数据、静态内核代码、页高速缓存……系统中每一个物理页都要分配这样一个结构体,进行内存管理。二 区 Linux内存寻址存在问题:一些硬件只能用 阅读全文
posted @ 2012-09-21 19:16 __Shadow 阅读(12432) 评论(0) 推荐(0) 编辑
摘要: 一 内核中的时间观念 内核在硬件的帮助下计算和管理时间。硬件为内核提供一个系统定时器用以计算流逝的时间。系统定时器以某种频率自行触发,产生时钟中断,进入内核时钟中断处理程序中进行处理。 墙上时间和系统运行时间根据时钟间隔来计算。利用时间中断周期执行的工作: 更新系统运行时间; 更新实际时间; 在smp系统上,均衡调度程序中各处理器上运行队列; 检查当前进程是否用尽了时间片,重新进行调度; 运行超时的动态定时器; 更新资源消耗和处理器时间的统计值;二 节拍率 系统定时器的频率;通过静态预处理定义的——HZ;系统启动按照HZ值对硬件进行设置。体系结构不同,HZ值也不同;HZ可变的。 //内核... 阅读全文
posted @ 2012-09-21 09:39 __Shadow 阅读(11004) 评论(0) 推荐(0) 编辑
摘要: 一 原子操作 指令以原子的方式执行——执行过程不被打断。1 原子整数操作 原子操作函数接收的操作数类型——atomic_t//定义atomic_t v;//初始化atomic_t u = ATOMIC_INIT(0);//操作atomic_set(&v,4); // v = 4atomic_add(2,&v); // v = v + 2 = 6atomic_inc(&v); // v = v + 1 = 7//实现原子操作函数实现static inline void atomic_add(int i, atomic_t *v){ unsigned lon... 阅读全文
posted @ 2012-09-20 09:38 __Shadow 阅读(4985) 评论(0) 推荐(0) 编辑
摘要: 一 临界区和竞争条件 临界区:访问和操作共享数据的代码段。 竞争条件:多个执行线程处于同一个临界区中。 处于竞争条件:造成访问的数据或者资源不一致状态:对资源i的访问:ProcessA和B访问后得到正确的结果应该是9: 进程是并发执行,有可能得到的结果是:8 防止这种情况的发生:保证对资源的访问原子操作。二 加锁 锁:采用原子操作实现,原子操作不存在竞争。 造成并发原因: l 中断:随时可以打断当前执行的进程代码; l 软中断和tasklet:任何时刻能唤醒调度软中断和tasklet,打断当前正在执行的代码; l 内核抢占:当前任务被抢占; l 进程睡眠:唤醒调度... 阅读全文
posted @ 2012-09-19 20:12 __Shadow 阅读(2187) 评论(0) 推荐(0) 编辑
摘要: 一 中断 硬件通过中断与操作系统进行通信,通过对硬件驱动程序处注册中断处理程序,快速响应硬件的中断。硬件中断优先级很高,打断当前正在执行的程序。有两种情况: 硬件中断在中断处理程序中处理 硬件中断延后再进行处理 这个具体硬件相关,在中断处理程序中处理,打断了当前正在执行的程序;所有中断都将被屏蔽;如果占用时间太长不合适,造成系统交互性,反应能力都会受到影响。 需要在其中判断平衡: 如果一个任务对时间非常敏感,将其放在中断处理程序中执行; 如果一个人和和硬件相关,将其放在中断处理程序中执行; 如果一个任务要保证不被其他中断打断,将其放在中断处理程序中执行; 其余情况考虑延后机制中执行——下... 阅读全文
posted @ 2012-09-13 17:46 __Shadow 阅读(2124) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页