首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ARM9开发之学习过程总结

想起第一次在串口打出一个字符的时候,那种心情,简直激动得快要爆了,这里先将我学习ARM中的整个过程简单总结一下,以后再详细的针对每个知识点写写东西。...9,学习ARM汇编与C语言的混合编程,GCC内联汇编,掌握参数传递方式和ARM过程调用标准(APCS)即可。...13,当第12步完成后,你可以尝试用你的bootloader从PC的TFTP服务器下载Linux内核镜像到开发板,然后启动Linux。...(但是最主要的就是,获取Linux内核镜像,初始化硬件环境,运行Linux)。...虽然刚毕业几个月,工作中也没有接触ARM9,但是我有时间就会坚持学习ARM9这款CPU,希望有朝一日,在接触新的ARM处理器时,也能快速入手。

76610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linux小白学习入门过程

    这是看到有很多人都是在用虚拟机做网站之后找到的部分linux小白入门,希望大家能多多了解一下linux的相关技术,对于优化服务器有着很好的帮助。 说到linux,本人也只是小白级别的。...但是本人并不认为小白就不能写点学习过程。 每个人吧,都有各自的学习方式。有些人想学啥新东西的时候喜欢买几本书,然后啃啃啃。...1、网上搜索,先百度一下linux常用命令。 2、寻找视频教程,看一下老师是如何学习如何使用linux的。这个过程中就会安装各种软件了。这个过程也是非常非常重要的。...接下来我们要买几本书,系统的学习linux。这就把更深层次的原理搞清楚了,在看书的过程中,就把上面三个过程中遇到的各种“莫名其妙”的问题都搞清楚原理了。...下面我也贴一下这个学习过程中用到的东西吧: 1、linux常用命令: 文件和目录 cd /home 进入 '/ home' 目录' cd .. 返回上一级目录 cd ../..

    81110

    Nginx安装过程Linux

    Nginx安装过程Linux) 1、 在安装nginx之前,要安装其他的一些相关软件,包括gcc、openssl、pcre和zlib,这里分别来解释一下这些都是什么东西: 1.1 GCC...是一个用于linux系统下编程的编译器,是一个用于编程开发的自由编译器。...上用命令下载) 3、 解压 tar -zxvf nginx-1.5.9.tar.gz 4、 make 编译 (make的过程是把各种语言写的源码文件,变成可执行文件和各种库文件) make install...安装 (make install是把这些编译出来的可执行文件和库文件复制到合适的地方) 5、 安装后在linux下启动和关闭nginx: 5.1 /root/prog/nginx /sbin/nginx...(/root/prog/nginx/sbin/nginx -t 查看配置信息是否正确) 5.2 停止操作 停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文 章)来进行的 步骤1:查询

    1.3K40

    Linux 程序编译过程详解

    linux中静态库是以.a为后缀的文件,共享库是以.so为后缀的文件。静态库和动态库的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。...共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。在Linux系统中,可以用ldd命令查看一个可执行程序依赖的共享库。...准备工作由于GCC工具链主要是在Linux环境中进行使用,因此本文也将以Linux系统作为工作环境。...\n"); return ;}编译过程1.预处理预处理的过程主要包括以下过程:将所有的#define删除,并且展开所有的宏定义,并且处理所有的条件预编译指令,比如#if #ifdef #elif #else...在Linux系统中,可以用ldd命令查看一个可执行程序依赖的共享库。

    1.9K30

    Linux系统调用过程

    2 系统调用过程 http://www.linuxidc.com/Linux/2015-04/116546.htm 系统调用是操作系统提供给用户(应用程序)的一组接口,每个系统调用都有一个对应的系统调用函数来完成相应的工作...  CALL(sys_rt_tgsigqueueinfo)   CALL(sys_perf_event_open)   CALL(sys_pk)    #我自己加的系统调用  了解了一个系统调用的执行过程就可以试着添加一个自己的系统调用了...声明自己的系统调用函数 在include/linux/syscall.h添加asmlinkage long sys_pk() 用户空间:       void pk()   {     __asm__...3 添加自己的系统调用 了解了一个系统调用的执行过程就可以试着添加一个自己的系统调用了: 内核: 1....声明自己的系统调用函数 在include/linux/syscall.h添加asmlinkage long sys_pk() 用户空间:       void pk() { __asm__( "

    4.8K70

    Linux内核编译过程详解

    前言 Linux内核是Linux操作系统的核心,也是整个Linux功能体现的核心,就如同发动机 在汽车中的重要性。内核主要功能包括进程管理、内存管理、文件管理、设备管理、网络管理等。...Linux内核是单内核设计,但却采用了微内核的模块化设计, 支持内核线程以及动态装载内核模块的能力。 Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。...如果用户想要使用这些新特性,或想根据自己的系统定制一个更高效,更稳定的内核,就需要手动编译Linux内核。那么如 何编译内核呢?本文将讲解Linux内核编译的详细程。...to/dir只编译一个模块:make path/to/dir/MOD_NAME.ko将编译生成的文件保存至别处:make O=/path/to/somewhere The end 好了,内核编译的过程就是这样了...以上仅为个人总结,如有错漏,大神勿喷~~~ 来源:

    9.6K100

    Linux删除文件过程解析

    概述 ---- 当我们执行rm命令删除一个文件的时候,在操作系统底层究竟会发生些什么事情呢,带着这个疑问,我们在Linux-3.10.104内核下对ext4文件系统下的rm操作进行分析。...源码分析 ---- rm命令是GNU coreutils里的一个命令,在对一个文件进行删除时,它实际上调用了Linux的unlink系统调用,unlink系统调用在内核中的定义如下: SYSCALL_DEFINE1...the inode here */ ... } 为了便于理解,这里简要介绍一下索引节点inode、目录项dentry以及目录项缓存dcache这几个重要概念,更具体的内容可参考Linux...内核分析的相关书籍,如Robert Love的《Linux内核设计与实现》一书。...参考文献 [1] https://www.ibm.com/developerworks/cn/linux/l-cn-usagecounter/ [2] https://digital-forensics.sans.org

    14.5K22

    Linux学习笔记之Linux启动引导过程

    尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行必要的简化。 让我们先从高级的视角来查看 Linux 引导过程,这样就可以看到整个过程的全貌了。...这就是 Linux 引导的整个过程。现在让我们深入挖掘一下这个过程,并深入研究一下 Linux 引导过程的一些详细信息。 系统启动 系统启动阶段依赖于引导 Linux 系统上的硬件。...除了可以存储并引导 Linux 映像之外,这些引导监视器还执行一定级别的系统测试和硬件初始化过程。在嵌入式平台中,这些引导监视器通常会涉及第一阶段和第二阶段的引导加载程序。...然后该例程会调用内核,并开始启动内核引导的过程。 当 bzImage(用于 i386 映像)被调用时,我们从 ....结束语 与 Linux 本身非常类似,Linux 的引导过程也非常灵活,可以支持众多的处理器和硬件平台。最初,加载引导加载程序提供了一种简单的方法,不用任何花架子就可以引导 Linux

    10.4K41

    详细讲解 移植Uboot到ARM9开发系统上

    (注意:你要安装了交叉编译器才行哦) 修改uboot目录下的Makefile,将 ifeq ($(ARCH),arm) CROSS_COMPILE = arm-Linux- endif 修改成 ifeq...7. kgo:启动没有压缩的linux内核,kgo 0x800000 8. bootm:启动通过UBOOT TOOLS—— mkimage制作的压缩LINUX内核, bootm 3200000; 9 flinfo...所以最好不要在NTFS文件系统上构建内核,或者把内核编译过程中生成的zImage拷贝到非NTFS文件系统上,再调用mkimage处理。...if_changed,uimage) @echo ‘ Image $@ is ready’ 3 EABI 使用AT91SAM9260EK的缺省配置编译内核,制作根文件系统,下载到AT9260单板,启动过程中出现...原因在于:编译内核和busybox使用的编译器是arm-linux-gcc 4.3.2,而这个编译器默认是打开“EABI选项”的,这样编译出来的busybox就是EABI的。

    2.4K20
    领券