摘要:
一个不错的外企面试Linux开发职位,面试官出了一个如下的题目: 给出如下C程序,在linux下使用gcc编译: 已知从这个程序执行到这个程序的所有进程结束这个时间段内,没有其它新进程执行。 明显这道题的目的是考察linux下fork的执行机制。下面我们通过分析这个题目,谈谈Linux下fork的运 阅读全文
摘要:
嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,我认为大概分3个阶段: 1、嵌入式linux上层应用,包括QT的GUI开发2、嵌入式linux系统开发3、嵌入式linux驱动开发 嵌入式目前主要面向的几个操作系统是,LINUX,W 阅读全文
摘要:
虽然溢出在程序开发过程中不可完全避免,但溢出对系统的威胁是巨大的,由于系统的特殊性,溢出发生时攻击者可以利用其漏洞来获取系统的高级权限root,因此本文将详细介绍堆栈溢出技术…… 在您开始了解堆栈溢出前,首先你应该了解win32汇编语言,熟悉寄存器的组成和功能。你必须有堆栈和存储分配方面的基础知识, 阅读全文
摘要:
内存这个大话题 key:心里一定要有内存的逻辑图。 程序是什么? 程序 = 代码 + 数据 代码放在Flash中代码段,可变的数据(全局变量、局部变量)放在内存中。 运行程序的目的是什么? 得到运行结果; 关注运行过程;既要结果又要过程; 为什么需要内存? 程序中有可变数据(全局变量、局部变量),这 阅读全文
摘要:
简单整理下固件、烧写的定义以及烧写过程的几种方式。 一、什么是烧写(下载)和固件 嵌入式系统需要预先将程序写入ROM/FLASH中,在启动时载入运行这些程序,将已经生成的程序写入ROM/FLASH的过程叫做烧写。这样固化在存储介质上的文件叫固件(firmware)。那么烧写即为更新固件的过程。 二、 阅读全文
摘要:
线程与进程的比较 概述: 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器 阅读全文
摘要:
进程与线程的区别,早已经成为了经典问题。自线程概念诞生起,关于这个问题的讨论就没有停止过。无论是初级程序员,还是资深专家,都应该考虑过这个问题,只是层次角度不同罢了。一般程序员而言,搞清楚二者的概念,在工作实际中去运用成为了焦点。而资深工程师则在考虑系统层面如何实现两种技术及其各自的性能和实现代价。 阅读全文
摘要:
随着物联网, 可穿戴设备, 开源硬件等的兴起, 越来越多的软硬件结合的嵌入式设备开始接入互联网。 我们正在身处一个联网设备爆炸式增长的时代。 然而, 嵌入式系统潜在的严重安全隐患却并没有引起足够的重视。 可以说, 嵌入式安全是目前网络安全领域的“盲区”和“雷区”。 嵌入式系统的安全现状和上世纪90年 阅读全文
摘要:
1. 获取序列号: adb get-serialno 2. 查看连接计算机的设备: adb devices 3. 重启机器: adb reboot 4. 重启到bootloader,即刷机模式: adb reboot bootloader 5. 重启到recovery,即恢复模式: adb rebo 阅读全文
摘要:
物联网和嵌入式安全 有效降低风险并解决物联网系统和嵌入式设备的网络安全威胁 概述 物联网是所有行业领域数字化转型的基石,它已经开始改变制造业、农业、城市基础设施、零售和汽车行业。这次最新的工业革命依赖于从传感器到数据中心的所有组成部分,并结合了无懈可击的互联防御措施来应对网络威胁和恶意攻击。 安全设 阅读全文