- 博客(65)
- 收藏
- 关注
原创 Exynos 4412-MMU
0x20x0# define MMU_SECTION_DESC 0x2 # define MMU_DEVICE_MEM 0x0 @ MAIR0索引 0 # define MMU_NORMAL_MEM 0x1 @ MAIR0索引 1 typedef struct {@ L1页表( 4096 项) } mmu_l1_table;00x1。
2025-04-09 22:04:23
353
原创 Exynos 4412多个核开发
Exynos 4412 是基于 ARM Cortex-A9 的四核处理器,其多核编程需要结合 ARM 的 SMP(对称多处理)架构和芯片特定的启动机制。Exynos 4412 的启动分为以下步骤:•:默认从0x00000000启动,负责初始化系统和唤醒其他核。•:上电后处于WFE(等待事件)状态,需主核配置其入口地址并触发唤醒。
2025-04-09 21:49:28
253
原创 Exynos 4412介绍
支持对称多处理(SMP)和异步多处理(AMP),单核性能约2000 DMIPS,四核性能显著提升多任务处理能力。:Mali-400 MP4(四核),支持OpenGL ES 2.0/1.1和OpenVG 1.1。:MIPI DSI(支持双屏显示)、HDMI 1.4(通过外部转换芯片实现1080p输出)。:4核Cortex-A9,支持ARMv7指令集,主频1.4-1.6 GHz(可动态调节)。:支持Android、Linux(如Ubuntu)、Tizen及实时操作系统(RTOS)。
2025-04-09 21:23:27
313
原创 n个计算机术语
bug、debug、循环、递归、服务器、客户端、前端、后端、API、编译、测试、文档、咖啡、熬夜、键盘、鼠标、二进制、十六进制、变量、函数、算法、栈溢出、Git、commit、合并冲突、IDE、语法错误、逻辑错误、404、500错误、云服务器、数据库、SQL注入、备份、版本控制、敏捷开发、瀑布模型、闭包、哈希表、机器学习、AI、机器人、API密钥、SSL证书、Docker、容器、虚拟机、Linux、sudo、管理员权限、二进制炸弹、死锁、竞态条件、缓存、Cookie、区块链、比特币、验证码、验证、认证、授权
2025-04-08 21:37:51
225
原创 安卓开发工程师-bundle
通过Parcelable或接口实现对象序列化。// Parcelable 实现(省略部分代码)@Override@Override// 在 Bundle 中传递Bundle 是 Android 开发中数据传递的核心工具,适用于:• 组件间简单数据传递• 临时状态保存与恢复• 配合 Parcelable/Serializable 传递对象避免滥用 Bundle 传递大数据或复杂结构,合理选择数据持久化方案。
2025-04-08 21:19:49
314
原创 Python反直觉
Python的类型提示(Type Hints)仅供静态检查工具(如mypy)使用,不影响运行时。:元组的“不可变性”仅保证其直接元素的引用不变,若元素是可变对象(如列表),其内容可变。在Python中为真,因此它们的哈希值相同,导致键冲突,后插入的键值会覆盖前者。:元类在类创建时生效,而类装饰器在类创建后修改,装饰器的改动可能覆盖元类行为。:导入模块时,其顶层代码仅在首次导入时执行,后续导入直接使用缓存。在访问不存在的方法时触发,可用于动态方法生成,但影响代码可读性。
2025-04-08 21:10:57
577
原创 黑客最喜欢的30个工具和30个技术
•:渗透测试/漏洞利用•:开发、测试和执行漏洞利用代码,生成Payload(如反向Shell)。•:利用未修补的漏洞(如永恒之蓝)获取目标系统权限。•:网络扫描•:探测主机、端口和服务,支持脚本扩展(如漏洞检测)。•:扫描目标网络拓扑,识别开放端口(如•:流量分析•:抓包并解析网络协议,分析数据流。•:捕获HTTP明文密码或检测ARP欺骗攻击。•:密码破解•:暴力破解或字典攻击哈希/加密密码。•:破解Linux系统的文件哈希。•:无线攻击•。
2025-04-08 21:00:42
360
原创 Java骚操作
利用匿名内部类的初始化块快速填充集合(注意内存泄漏风险)。简化可变数量参数的传递。自动管理实现了的资源。用简化 Lambda 表达式。最简洁的单例实现方式。通过返回this实现链式调用。直接使用静态常量无需类名。省略右侧泛型类型声明。快速实现接口或抽象类。简化if-else逻辑。提高计算效率。Java 7+ 支持字符串作为switch条件。简化函数式接口的实现。优雅处理可能为null的值。链式操作集合数据。在接口中提供默认实现。保留原始异常信息。简化同类异常处理逻辑。基本类型与包装类型自动转换。
2025-04-08 20:52:22
542
原创 安卓开发工程师-安卓里面相似的概念
明确指定目标组件(如 Activity 或 Service),用于应用内部跳转。:通过动作(Action)、数据类型(Data)等描述操作,由系统匹配处理组件。:Android 组件,用于在后台执行长时间任务,无 UI,默认在主线程运行。:在进程被系统杀死后恢复数据(如返回栈中的 Activity)。:按优先级顺序发送,可被中途拦截或修改(如短信广播)。:强制访问控制(MAC)系统,限制进程和文件的权限。:关系型数据库,适合结构化数据存储(如用户订单)。:直接读写应用私有文件或公共存储(如 SD 卡)。
2025-04-08 20:46:29
569
原创 Java与kotlin比较
Kotlin 支持 Lambda、方法引用等,无需关心 Android 版本。Kotlin 在 GitHub 的 Star 数远超 Java 新项目。Kotlin 语法简洁,例如 Lambda 表达式、单表达式函数。使用 Kotlin 开发 iOS、Web 和后端,共享业务逻辑。如 Ktor、Exposed 等框架原生支持 Kotlin。IntelliJ 深度优化 Kotlin 的 IDE 体验。Kotlin 可直接调用 Java 代码,反之亦然。Kotlin 设计目标是为开发者提供愉悦的编码体验。
2025-04-08 20:43:38
440
原创 100+个历史上黑客大事件以及其背后的技术
•:罗伯特·莫里斯(康奈尔大学学生)•:早期互联网(ARPANET)•:利用UNIX系统漏洞(Sendmail和Finger服务)进行传播,通过缓冲区溢出和弱密码字典攻击入侵主机。由于代码缺少传播限制机制,导致蠕虫自我复制失控,感染约6000台计算机。•:首个引发广泛关注的蠕虫病毒,直接推动了计算机应急响应小组(CERT)的成立。•:凯文·米特尼克(著名黑客)•:多家公司(包括摩托罗拉、Nokia)•。
2025-04-08 20:40:16
490
原创 c语言学的好吗?来看看你直觉
编译器可能进行尾递归优化(TCO),将递归转换为循环。:编译器可能将全局变量缓存在寄存器中,导致信号处理程序的修改不可见。字符串字面量存储在只读内存段,修改会导致段错误(但某些嵌入式系统可能允许)。(逗号表达式返回最后一个值),但第二行语法错误(逗号被解析为分隔变量声明)。结构体赋值按成员复制,但填充字节的值是未定义的(可能是原值或随机值)。函数返回后栈帧失效,但编译器未擦除数据,导致“暂时可用”的幻觉。(浮点数除零在IEEE 754中定义),而整数除零直接导致UB。此行为属于UB,可能导致程序崩溃。
2025-04-07 12:45:40
874
原创 进来试试能坚持到哪-硬件电路面试
LDO在短路时进入限流模式,功耗 ( P = (V_{in} - V_{out}) \times I_{limit} ),若 ( V_{out} \approx 0 ),功耗 ( P = V_{in} \times I_{limit} );:实际运放的电流噪声占主导,噪声公式变为 ( V_n = \sqrt{(4kTR + I_n^2 R^2)B} ),当 ( I_n^2 R \gg 4kT ),增大R会导致 ( I_n^2 R^2 ) 项主导,但若同时降低带宽B(如增加电容),可能整体噪声下降。
2025-04-07 12:40:25
452
原创 openscad-简单教程
注释:基本形状:变换操作:布尔运算:4. 模块和函数定义模块:函数定义:5. 高级功能条件语句:循环语句:6. 调试和渲染预览:点击“预览”按钮(F5)查看实时预览。渲染:点击“渲染”按钮(F6)生成最终模型。7. 导出模型STL 文件:点击“文件”菜单,选择“导出”>“导出为 STL”来保存模型为 STL 文件格式,以便打印或使用其他软件。在 OpenSCAD 中,几何体的绘制函数包括创建基本的三维形状和二维形状。以下是这些函数
2025-04-07 12:29:02
606
原创 c/ c++面试简单一过
进程间通信:由于进程间不共享内存,常用管道、消息队列、共享内存和套接字等方法,适合在不同进程间进行数据传输和事件通知。线程间通信:线程间共享内存,因此互斥锁、条件变量、读写锁等同步机制用于保证数据一致性。每种通信方式都有适用的场景,选择时需根据应用需求、数据量和实时性等因素综合考虑。空对象指针(null pointer)指向的是地址为0的内存位置,在一般情况下,这种指针是不应该被访问或调用的,因为它不指向有效的对象。然而,在C++中,可以使用空对象指针调用某些成员函数,特别是非虚成员函数。
2025-04-07 12:26:36
605
原创 c++面试题-年轻人你知道说精通c++的代价吗
设计一个同时满足C++的RAII、Rust的borrow checker、Python的GC的跨语言对象模型,要求支持。间隔,在glibc的ptmalloc2中构造出连续5个0x20字节的unsorted bin”“设计一个在NUMA架构下,仅当L3缓存命中率低于5%时才触发的概率性死锁”“某AVX-512代码在Intel 11代CPU崩溃,但在12代正常。“编写一个在多核CPU上既可能返回42也可能段错误的无锁代码,且结果不可用。“某concept约束的模板在MSVC通过却在Clang报错,原因为。
2025-04-07 12:20:22
813
原创 python面试-听说你精通Python
is==*args**kwargs__init____new____slots__asyncioyield from21. 字典的底层结构?如何解决哈希冲突?22. 如何实现一个LRU缓存?解释的原理。23. 合并两个有序列表的最优时间复杂度?手写代码。24. 如何判断链表有环?手写Floyd算法。25. 手写快速排序,并分析时间复杂度。26. 解释堆(heap)的结构,手写堆排序。27. 二叉树的前序、中序、后序遍历的非递归实现。28. 如何用两个栈实现队列?
2025-04-07 12:14:33
934
原创 300个fpga练手项目推荐
• 按键设置BPM,LED和蜂鸣器同步打拍(支持4/4、3/4拍)• 例:先实现DDR3控制器(基础),再构建视频处理流水线(集成)◦ 驱动小型e-Paper显示日期/时间(SPI接口,静态刷新)◦ 音频输入经FFT后,用LED柱状显示频率能量(8频段简化)◦ 通过HC-05模块接收手机指令,控制电机方向(前进/后退)• 随机点亮LED,用按钮响应,数码管显示反应时间(毫秒级)• 8个LED旋转闪烁,按钮停止后显示中奖编号(带减速动画)• 用4方向按键输入手势(如→→←↑),正确后点亮绿色LED。
2025-04-07 12:06:52
775
原创 榨干stm32f103-项目推荐
基于矢量控制的BLDC电机控制器(使用高级定时器的PWM,编码器接口,ADC电流采样,CAN通信)实时音频效果处理器(ADC输入,DSP处理,DAC输出,使用I2S或SPI连接编解码器)全功能数控电源(PID控制,ADC反馈,PWM输出,LCD显示,USB配置)无人机飞控(六轴传感器SPI/I2C,PWM电机控制,无线模块,气压计)电子负载(电流精确控制,ADC,MOSFET驱动,USB记录)自动灌溉系统(土壤湿度传感器,定时器,水泵控制,蓝牙配置)机器视觉引导小车(摄像头模块SPI,图像处理,电机控制)
2025-04-07 12:02:54
228
原创 安卓开发工程师-HTTP 与 HTTPS 原理
客户端在后续的请求中会携带该Cookie,服务器通过解析Cookie中的Session ID来识别用户的身份,从而实现用户登录状态的持续保持。每次客户端发起一个HTTP请求时,服务器都会将其视为一个独立的请求,不会根据之前的请求来处理当前请求。例如,当用户在浏览器中访问一个网页时,浏览器向服务器发送一个HTTP请求,服务器返回网页内容后,就不再保存与该请求相关的任何信息。在Android开发中,可以通过使用支持HTTP/2协议的网络请求库(如OkHttp)来实现HTTP/2的支持。表示HTTP/2)。
2025-04-06 14:45:00
686
原创 安卓开发工程师常见面试题
如何创建一个简单的自定义 View?自定义 View 的测量(onMeasure)过程是如何工作的?如何在自定义 View 中绘制图形和文本?如何处理自定义 View 的触摸事件?如何实现自定义 View 的动画效果?如何优化自定义 View 的性能,避免过度绘制?如何在自定义 View 中使用属性动画?如何实现自定义 View 的布局参数(LayoutParams)?如何通过自定义 View 实现复杂的交互逻辑?如何调试自定义 View 的问题?
2025-04-06 10:32:30
718
原创 安卓开发工程师-电量优化
如果应用中不需要动画效果,可以完全移除动画资源,减少不必要的电量消耗。:如果应用中的网络请求数据量较大,可以在 Wi-Fi 环境下执行,避免使用移动网络消耗电量。当请求的数据在缓存中存在时,可以直接从缓存中获取,避免再次发起网络请求,从而减少电量消耗。:对于一些非实时性要求较高的网络请求,可以在设备充电时执行,避免在电量低时消耗电量。通过合理设置任务的执行条件,可以避免在电量低或网络不佳时执行任务,从而减少电量消耗。:对于一些不经常变化的数据,可以使用缓存机制,减少不必要的网络请求。
2025-04-06 10:31:16
634
原创 安卓开发工程师-单元测试与自动化测试
JUnit 是一个用于 Java 的单元测试框架,广泛用于 Android 项目中进行单元测试。Mock 对象用于模拟复杂的依赖关系,使测试更加独立。常用的库有 Mockito。Espresso 是一个用于 Android UI 测试的框架,可以模拟用户操作。编写测试用例时,需要考虑各种输入和边界情况,确保覆盖所有功能场景。UI Automator 可以用于跨应用的自动化测试。
2025-04-06 10:28:08
547
原创 安卓开发工程师-数据加密与解密
可以通过继承CipherSpi类来自定义加解密算法。@Override@Override// 自定义加密逻辑i++) {然后在代码中注册自定义的CipherSpi。
2025-04-06 10:22:21
958
原创 安卓开发工程师-内存管理与优化
它可以自动管理缓存的大小,当缓存超过指定的大小时,会自动移除最久未使用的缓存项。通过使用内存池,可以减少频繁的内存分配和回收,从而提高内存分配的效率。通过使用对象池,可以减少对象的频繁创建和销毁,从而减少内存碎片的产生。在分配内存时,应该尽量使用大块的内存分配,避免频繁的小块内存分配。例如,在加载图片时,可以通过设置 inSampleSize 来减小图片的尺寸,从而减少内存分配的次数。同时,要避免内存碎片的产生,尽量使用大块的内存分配。通过对比优化前后的内存使用情况,可以评估内存优化的效果。
2025-04-06 10:01:17
666
原创 安卓开发工程师-数据解析(JSON、XML)
在解析 JSON 或 XML 数据时,可能会出现各种异常,如格式错误、数据缺失、类型不匹配等。为了保证程序的健壮性,需要对这些异常进行合理的处理。在解析 JSON 或 XML 数据时,可以将解析后的数据缓存起来,以便下次使用时可以直接从缓存中获取,而无需重新解析。在 Android 中,可以使用 DOM(Document Object Model)解析器来解析 XML 数据。动态解析是指在不知道 JSON 或 XML 数据的具体结构的情况下,能够灵活地解析和处理数据。包来解析 JSON 数据。
2025-04-06 09:54:29
618
原创 安卓开发工程师-网络请求框架(如 OkHttp)
OkHttp 内部已经实现了高效的连接池,但可以通过自定义来调整连接池的行为。自定义连接池示例.connectionPool(new ConnectionPool(5, 10, TimeUnit.MINUTES)) // 设置连接池的最大连接数为 5,空闲连接的存活时间为 10 分钟.build();在中通过方法设置自定义的连接池。的构造函数参数分别为最大连接数和空闲连接的存活时间。
2025-04-06 09:49:40
745
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人