热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于如何继续深入学习arm+linux

关于如何继续深入学习arm+linux--Linux通用技术-Linux编程与内核信息,下面是详情阅读。
嵌入式(ARM+Linux(uClinux))分为两个部分:硬件和软件。(就这两个方面而言,这两者有何侧重点吗?研发时需要注意哪些方面呢?)

一. 软件

1. bootloader
1)能够基于ADS和GCC来编写,编译等。(这两者除了在使用汇编和编译器上有所不同之外,更有什么不同呢?哪个是侧重点呢?)

2)在引导进入C语言的main()函数的时候,上面两个方面有何不同?其中ads是通过他的库函数来实现的,那用gcc研发呢?

3)编写bootloader的时候主要是要符合初始化的顺序,那除了这一点,其他还需要注意些什么?在写bootloader的时候应该把重点放在哪里(还是初始化的过程,还是一些驱动的修改)?

4)对于arm处理器的各种模式,我应该如何去理解?怎么样才能在实战中使用呢?就比如arm处理器提供了fiq模式,在uClinux内核中就根本没有去利用到这种模式,那他究竟有什么用途,我们如何去使用呢,难道是了解一下,就能够了?

2. 交叉编译器
1)就arm平台而言,arm7(一般不带MMU)和arm9(基本上都带MMU)两种,随之而来就会有了两种编译器arm-elf和arm-linux,其中arm-elf是线程的有编译好的,而arm-linux是需要自己编译的,那对于一个软件研发人员而言,这个方面我们应该达到什么需要呢?

3. 内核相关
1)2.4和2.6内核的区别(主要是内核的使用和驱动的研发上有何区别?)

2)内核的移植,主要是针对于arm处理器的板级移植,芯片级移植,这方面有哪些工作需要做呢?在移植的过程中需要注意什么呢?

3)内核编译,在内核编译中看到那么多选项,我如何是好呢?对于编译过程中产生的错误,我应该通过何种途径去解决呢?

4)内核研发,当应用时,可能需要去修改内核来实现自己的应用,那修改内核有没有一个什么准则?哪些方面是突破点呢(从哪里入手,从里到外?从外到内?)?

4. 驱动
1)正如上面提到的,在2.4和2.6的内核下研发驱动有和不同?在arm7和arm9上研发驱动有何不同(在arm9上似乎需要用内存映射访问?)?

2)在研发驱动的时候,各个外围设备是否有相同的地方和不同的地方?当您学会一种设备的驱动的时候,再写其他设备的驱动需要注意什么呢?哪些方面是和处理器相关的呢?

5. 应用程式
1)应用程式的研发,应用程式能够自己重新编写,对于网上已有的,还能够下载下来重新编译生成,在这两者的研发时,需要注意些什么呢?就比如,从网上下载源代码后,需要通过配置,编译就能够了吗(其他呢)?

2)应用程式的移植编译,对于其他平台的软件要移植到Linux平台上,应该如何研发呢?就比如windows平台上用vc编写的软件,如何快速地移植到Linux平台上呢?

6. 其他
1)各种软件研发工具的使用,推荐

二. 硬件
1. 硬件选型
1)处理器的选型,就比如arm处理器如何选型呢

2) 外围设备选型

2. 原理图设计
1)原理图设计的步骤,注意事项(比如功率是否够,电流是否够?哪些地方需要加上拉电阻等等)

2)设计原理图时,哪些方面是要先测试验证的呢?

3. PCB设计
1) PCB设计的步骤,注意事项(如何减少串扰,反射等等)

2) 对于高速PCB设计有何不同?

3)哪些基础知识是必须的(比如各种封装的使用等等)

4. EMC
1) 如何减少电磁干扰等等

5. 其他
1)各种硬件研发工具的使用,推荐。
推荐阅读
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 本文介绍了在Windows系统上使用C语言命令行参数启动程序并传递参数的方法,包括接收参数程序的代码和bat文件的编写方法,同时给出了程序运行的结果。 ... [详细]
  • 本文介绍了使用Python解析C语言结构体的方法,包括定义基本类型和结构体类型的字典,并提供了一个示例代码,展示了如何解析C语言结构体。 ... [详细]
  • 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
    本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
author-avatar
张炜26_807
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有