ml_liumangtu
码龄16年
求更新 关注
提问 私信
  • 博客:10,176
    10,176
    总访问量
  • 7
    原创
  • 17
    粉丝
  • 16
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:重庆市
加入CSDN时间: 2010-10-31

个人简介:专注于基于 arm 的 linux内核研究与驱动开发,正在学习流媒体和算法!

博客简介:

ml_liumangtu的专栏

查看详细资料
个人成就
  • 获得2次点赞
  • 内容获得0次评论
  • 获得3次收藏
  • 博客总排名827,629名
创作历程
  • 4篇
    2011年
  • 6篇
    2010年
TA的专栏
  • BSP
    1篇
  • C/C++
    5篇
  • kernel
    3篇
  • linux Driver
  • webkit
  • zigbee研究
  • 协议分析
    1篇
  • 工作&生活--感想

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

创作活动更多

「谁说嵌入式只是调包和焊板子?」—— 2026嵌入式全栈技术征锋令

谁说嵌入式只会“Ctrl+C 调包”和“拿电烙铁焊板子”?2026嵌入式全栈技术征锋令正式启幕! 本次活动专为硬核硬件/软件开发者打造,无论你是刚玩转裸机外设的萌新,还是精通RTOS调度、死磕底层驱动的行业老手,亦或是执掌系统架构的大神,这里都是你证明实力的舞台! 拒绝表面功夫,每一行代码,都有撬动硬件的力量!晒出你的硬核工程实战,为嵌入式开发者的全栈硬实力正名!

210人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

linux进程状态浅析


众所周知,现在的分时操作系统能够在一个CPU上运行多个程序,让这些程序表面上看起来是在同时运行的。linux就是这样的一个操作系统。在linux系统中,每个被运行的程序实例对应一个或多个进程。linux内核需要对这些进程进行管理,以使它们在系统中“同时”运行。linux内核对进程的这种管理分两个方面:进程状态管理,和进程调度。本文主要介绍进程状态管理,进程调度见《linux进程调度浅析 》。

进程状态

在linux下,通过ps命令我们能够查看到系
原创
博文更新于 2011.03.17 ·
389 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

linux进程调度浅析


      操作系统要实现多进程,进程调度必不可少。有人说,进程调度是操作系统中最为重要的一个部分。我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高XX倍"一样,脱离了实际环境,这些结论是比较片面的。

      而进程调度究竟有多重要呢? 首先,我们需要明确一点:进程调度是对TASK_RUNNING状态的进程进行调度 (参见《linux进程状态浅析 》)。如果进程不可执行(正在睡眠或其他),那么它跟进程调度没多大关系。所以,如果你的
原创
博文更新于 2011.03.16 ·
655 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux内核的同步机制


一、引言

        在现代操作系统里,同一时间可能有多个内核执行流在执行,因此内核其实象多进程多线程编程一样也需要一些同步机制来同步各执行单元对共享数据的访问。尤其是在多处理器系统上,更需要一些同步机制来同步不同处理器上的执行单元对共享的数据的访问。 

        在主流的Linux内核中包含了几乎所有现代的操作系统具有的同步机制,这些同步机制包括:原子操作、信号量(semaphore)、读写信号量(rw_semaphore)、s
原创
博文更新于 2011.02.24 ·
428 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[转]ARM程序设计优化策略与技术


    
     [原文地址]:  http://ikongzi.edu.sina.com/News/2009-5-26/22693.shtml
     程序优化是指软件编程结束后,利用软件开发工具对程序进行调整和改进,让程序充分利用资源, 提高运行效率, 缩减代码尺寸的过程。按照优化的侧重点不同, 程序优化可分为运行速度优化和代码尺寸优化。运行速度优化是指在充分掌握软硬件特性的基础上, 通过应用程序结构调整等手段来降低完成指定任务所需执行的指令数。在同一个处理
转载
博文更新于 2011.02.22 ·
459 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

TCP 握手/挥手分析


 1、建立连接 (三次握手)
(1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。
(2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。
(3) 客户必须再次回应服务段一个ACK报文,这是报文段3。
 2、连接终止协议(四次挥手)
   由于TCP连接是全双工的,因
原创
博文更新于 2010.12.23 ·
471 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

arm-linux-gcc arm-elf-gcc 区别


      在基于ARM的嵌入式系统开发中,常常用到交叉编译的GCC工具链有两种:arm-linux-*和 arm-elf-*,两者区别主要在于使用不同的C库文件。arm-linux-*使用GNU的Glibc,而arm-elf-*一般使用 uClibc/uC-libc或者使用REDHAT专门为嵌入式系统的开发的C库newlib.Glibc、uClibc/uC-libc以及 newlib都是C语言库文件,只是所应用的领域不同而已,Glibc是针对PC开发的,uClibc/uC-libc是与Glib
转载
博文更新于 2010.12.23 ·
450 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

9161启动机制研究

1.  存储器映射与重映射 
对于任意类型的存储器, 必须首先为它分配一个地址空间才能对其进行访问,这样就在地址空间和存储器之间建立了某种对应关系,称为存储器映射。不管是微处理器内置的片内存储器,还 是扩展的外部存储器,在电路板制作完成之后,它的存储器映射也就自然的固定下来,这个特定的地址空间也称为它的固有地址空间。例如对于 AT91SAM9261来说,地址空间 0x30,0000-0x40,0000映射到片内 SRAM,即片内 SRAM的固有地址空间为 0x30,0000-0x4
原创
博文更新于 2010.12.18 ·
529 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

内存的堆分配和栈分配 & 字符数组,字符指针


堆和栈的区别

一个由C/C++ 编译的程序占用的内存 分为以下几个部分
1、栈区(stack)— 由编译器自动分配 释放 ,存放函数的参数值,局部变量的值等。其
操作方式类似于数据结构中的栈。
2、堆区(heap) — 一般由程序员分配 释放, 若程序员不释放,程序结束时可能由OS回
收 。注意它与数据结构中的堆是两回事,分配 方式倒是类似于链表,呵呵。
3、全局区(静态区)(static)—,全局变量和静态变量的
原创
博文更新于 2010.12.16 ·
747 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

防止缓冲区溢出


【注:】本文为转帖,原帖地址为:http://blog.csdn.net/blpluto/archive/2010/09/03/5861791.aspx


      本文讨论 Linux/UNIX 系统中最常见的缺陷:缓冲区溢出。本文首先解释什么是缓冲区溢出,以及它们为何如此常见和如此危险。然后讨论广泛用于解决缓冲区溢出的新 Linux 和 UNIX 方法 ―― 以及为什么这些方法还不足够。随后将展示 C/C++ 程序中防止缓冲区溢出的各种方法,同时
转载
博文更新于 2010.12.16 ·
4951 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

大、小端模式

一、大、小端模式的定义       在计算机系统中,我们是以字节为单位进行读、写的,每个地址单元都对应着一个字节,一个字节为 8bit。但是在C语言中除了8bit的char之外,还有16bit的short型,32bit的int/long型(要看具体的编译器)。另外,对于位数大于 8位的处理器,例如16位或者32位的处理器,由于寄存器宽度大于一个字节,那么必然存在着一个数据分布于多个字节德问题。因此就导致了大端存储模式和小 端存储模式。很多的ARM,DSP都为小端模式。有些ARM处理器还可
原创
博文更新于 2010.12.15 ·
1097 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏