程序员10大境界

周伟明先生是CSDN著名博客,在其博客文章中深入浅出的讲解了诸如负载平衡、锁竞争现像、任务分组竞争模式、OpenMP并行程序设计、多核CPU上的快速排序效率等多核程序设计难题,获得了专家和网友的高度评价。正文如下:自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外。当然现在中国的许多程序员们对此可能有许多不同的意见,有些人认为中国的程序员水平远落后于西方,有些则认为中国的程序员个
阅读本文

一个软件从业人员的技术地图或知识体系(转载)

一晃研究生毕业参加工作也已经8、9年,这些年搞过嵌入式、web开发、移动应用、IT咨询、项目集成,零零种种到如今也不知是好事还是坏事。今天几个项目进度不错,上线的版本问题居然还没有问题反馈,真是XX都笑歪了。抽下午的时间把自己这些年的技术梳理出来,能力有限,只算是罗列一些点吧(当然只要我列出的,多少是我个人在实际项目中接触过的),希望能给不管是新入行,还是试图做转型的从业者带来一些帮助。  大致分
阅读本文

STM32F407时钟树结构

STM32F407基于Cortex M4内核架构,具备完善的时钟树结构。了解时钟树的结构有助于程序的编写和优化。      下列配置图来自软件STM32CubeMX,从配置图可以看出STM32F407所有时钟源,包括外部输入HSE和LSE,以及内部RC时钟HSI和LSI。       对于高速时钟,采用外部8MHz晶振作为时钟输入HSE;经过PLL的倍频,得到系统时钟SYSCLK 16
阅读本文

嵌入式arm210开发板移植Apache的详细步骤

平台:Fedora14   i386            arm210   arm-linux-gcc-4.3.2准备工作:   下载 apache_1.3.39.tar.gz   解压缩apache_1.3.39.tar.gz到两个文件夹(/share/进行本地编译和/mnt/yaffs/进行交叉编译)     #tar   xzvf    apache_1.3.39.tar.gz
阅读本文

块设备驱动

块设备是以数据块为访问单位访问数据的设备,一般每个块的大小为512字节的倍数(一个扇区的大小也是512字节),可以随机访问数据。对应的字符设备是以1个字节为访问最小单位的,只能顺序访问数据! Mapping Layer: 计算出文件文件在磁盘上的实际位置,将对文件的访问转换成对磁盘扇区的访问。Generic Block Layer:Linux内核为块设备
阅读本文

Linux 发展史与vm安装linux centos 6.9

操作系统是一个人与计算机硬件的中介。Linux操作系统开源代码的、自由传播的类Unix操作系系统软件;多用户、多任务、多线程、多CPU的操作系统。 Linux用于领域 服务器端、嵌入式开发、个人pc桌面,服务器领域最重要。Linux发展历史1969年Unix在贝尔实验室诞生。谭宁邦斯托曼发起了自由软件的运动,成立自由软件基金会(FSF),GNU项目。1991年,托瓦兹(芬兰),事件Linux内核
阅读本文

FPGA各大厂商,不可不知

引言:FPGA市场前景诱人,但是门槛之高在芯片行业里无出其右。全球有60多家公司先后斥资数十亿美元,前赴后继地尝试登顶FPGA高地,其中不乏英特尔、IBM、德州仪器、摩托罗拉、飞利浦、东芝、三星这样的行业巨鳄。 近几年,全球半导体行业的关键词就是:收购、兼并、重组,FPGA领域也发生了不小的变化。三大FPGA(Field-Programmable Gate Array)厂商的收购关闭案:Alt
阅读本文

VMware虚拟机给ubuntu添加新网卡

VMware虚拟机给ubuntu添加新网卡目录一、情景描述二、软硬件环境四、将网卡加入到的自己的ubuntu虚拟机中五、在ubuntu系统中,设置网卡静态IP地址六、确认新网卡和ip地址已生效一、情景描述        博主乃云云IT技术宅男只一,最近在家捣腾嵌入式linux系统的时候,想用笔记本电脑通过网络连接目标板板,且目标板只有__有线__网络接口,__但问题是__博主的笔记本电脑也只有一个
阅读本文

2017-10-06-构建之法:现代软件工程-阅读笔记

本人能力的限制和阅读能力的差强人意,仅限于前几章软件=程序+软件工程一个成熟的软件需要各方面的支持工作,保障软件的服务质量,对源代码的管理,对于后续的验证过程软件测试,软件团队要从需求分析开始,把合适的需求梳理迟来,逐步展开后续的工作,如设计,实现,测试到最后的发布软件。软件开发活动(构建管理,源代码管理,软件设计,软件测试,项目管理)相关内容,是软件工程的核心部分。软件企业=软件+商业模式。软件
阅读本文

Linux学习-编译前的任务:认识核心与取得核心原始码

什么是核心 (Kernel)Kernel其实核心就是系统上面的一个文件而已, 这个文件包含了驱动主机各项硬 件的侦测程序与驱动模块。核心文件通常被放置成 /boot/vmlinuz-xxx ,不过也不见得,因为一部主机上面可以拥有多个核 心文件,只是开机的时候仅能选择一个来加载而已。核心模块 (kernel module) 的用途Linux 很早之前就已经开始使用所谓的模块化设定了! 亦即是将一
阅读本文

eclipse配置 嵌入式-基于linux

Eclipse可以安装在各种操作系统。这里是安装到Ubuntu 10.10上。有两种方法实现安装,一是采用Ubuntu的软件源;二是从官方下载后解压。1、  通过Ubuntu软件源安装$ sudo apt-get install build-essential$ sudo apt-get install eclipse$ sudo apt-get install eclipse-pde$ sudo
阅读本文

【转载】ARM与单片机的区别

前几天在博客园的博问模块上面发布了一个博问,可能是我问题描述有些问题,被一个园友指出,ARM与单片机是不同的。所以我特地查了一下ARM与单片机的区别,之前一直以为ARM就是加强版的单片机,stm32无非就是比普通的8位16位单片机频率高一点,flash大一点,ROM大一点。现在才知道之前的认识是多么的肤浅。电子发烧友上面有一篇很好的文章,传送门:http://bbs.elecfans.com/ji
阅读本文

阶梯T-SQL:超越基础2级:编写子查询

此系列从他的楼梯到T-SQL DML,Gregory Larsen涵盖了更多的高级方面的T-SQL语言,如子查询。在您开始创建超出基本Transact-SQL语句的更复杂的SQL代码时,您可能会发现需要使用其他SELECT语句的结果来限制查询。 当在父Transact-SQL语句中嵌入SELECT语句时,这些嵌入式SELECT语句被称为子查询或相关子查询。 在“超越基础”楼梯的这个层次上,我将讨论
阅读本文

正确使用Qt多线程

摘要: run()是线程的入口,就像main()对于应用程序的作用。QThread中对run()的默认实现调用了exec(),从而创建一个QEventLoop对象,由其处理该线程事件队列(每一个线程都有一个属于自己的事件队列)中的事件。 QThread的常见特性: run()是线程的入口,就像main()对于应用程序的作用。QThread中对run()的默认实现调用了exec(),从而创建一个Q
阅读本文

交叉开发

PC 嵌入式开发板 宿主机 目标机 交叉开发软件下载方式 常用的下载方式有 串口、USB、SD卡 JTAG、和网络的方式 网络的方式 PC端的Linux系统配置TFTP/NFS服务器 安装tftp服务器 配置tftp服务器 /etc/xinetd.d/tftp 使能 主服务目录 重启tftp服务 /etc/init.d/xinetd restart 测试tftp服务
阅读本文

高级软件工程团队第一次作业

本博客随笔主要目的是介绍本团队的基本信息,成员介绍和项目内容等。队员姓名和学号队长:黄腾达170320074 队员:张合胜170327078 队员:林洋洋170320076队名 : Oh!A团队项目描述给实验室提供的OA,可以加比较多功能,比如加入知乎的询问回答功能,通知活动,请假功能,采购报销,参赛课设组队功能,日报周报等,博客分享等等之类。队员风采张合胜:灵魂程序员 ,擅长嵌入式编程 一句话宣
阅读本文

当前的开源SLAM方案

【1】2007---MonoSLAM   单目    扩展卡尔曼滤波为后端,追踪前端非常稀疏的特征点。意义:之前的SLAM系统基本不能在线运行,只能靠机器人携带相机采集数据,再离线的定位和建图。现在看来,应用场景窄,已经停止对其开发。【2】2007---PTAM (Parallel Tracking and Mapping) 单目 意义:实现了跟踪与建图过程的并行化;第一个使用非线性优化,而不是
阅读本文

驱动调试常见问题_Camera

在嵌入式系统,如手机等平台上使用的Camera sensor通常是由类似I2C这样的总线进行寄存器控制,由CPU端的Controller提供所需的驱动时序,通常支持YUV和RGB等数据格式。有的Sensor需要由CPU进行图像处理工作,有的Sensor自己会集成图像处理芯片,完成一些基础的图像处理工作,还有些高像素的Sensor甚至自己完成JPEG的编码工作。因为硬件的多样性,我所遇到的问题可能和
阅读本文

Linux内核的整体架构简介

1. 前言 2. Linux内核的核心功能 如下图所示,Linux内核只是Linux操作系统一部分。对下,它管理系统的所有硬件设备;对上,它通过系统调用,向Library Routine(例如C库)或者其它应用程序提供接口。 因此,其核心功能就是:管理硬件设备,供应用程序使用。而现代计算机(无论是PC还是嵌入式系统)的标准组成,就是CPU、Memory(内存和外存)、输入输出设备、网
阅读本文

AliOS Things云端物联网操作系统

alios物联网操作系统下载 https://github.com/search?utf8=%E2%9C%93&q=alios&type= AliOS Things   AliOS家族旗下面向IoT领域的轻量级物联网嵌入式操作系统AliOS Things将致力于搭建云端一体化IoT基础设施,具备极致性能、极简开发、云端一体、丰富组件、安全防护等关键能力,并支持终端设备连接到阿里云Link,可
阅读本文