摘要: 一、Linux系统模型 其中最重要的部分是内核,向上为系统调用和应用程序提供支持,向下对硬件资源和驱动程序进行管理。 二、传统I/O操作读写流程 1.用户进程向 CPU 发起 read 系统调用读取数据,由用户态切换为内核态,然后一直阻塞等待数据的返回。 2.CPU 在接收到指令以后对 DMA 磁盘 阅读全文
posted @ 2020-07-09 14:43 baozhw 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 一、以fork和execve系统调用为例分析中断上下文的切换 1.fork具体流程如下: fork系统调用定义是依赖于体系结构的, 因为在用户空间和内核空间之间传递参数的方法因体系结构而异,但他们都调用体系结构无关的_do_fork(或者早期的do_fork)函数, 负责进程的复制。 _do_for 阅读全文
posted @ 2020-06-15 11:25 baozhw 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 一、实验内容 1使用94号系统调用 2.通过汇编指令触发系统调用 3.通过gdb跟踪该系统调用的内核处理过程 4.阅读分析系统调用入口的保存现场、恢复现场和系统调用返回,以及关注系统调用过程中内核堆栈状态的变化 二、环境搭建 1、安装开发工具 1 sudo apt install build-ess 阅读全文
posted @ 2020-05-27 13:51 baozhw 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 一、按照https://github.com/mengning/mykernel 的说明配置mykernel 2.0,熟悉Linux内核的编译 实验环境 Ubantu16.04 运行于VMware15.1上 依次执行以下命令 wget https://raw.github.com/mengning/ 阅读全文
posted @ 2020-05-12 14:38 baozhw 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 一、软件工程师的软件工程知识技能水平高低主要体现在哪些方面 1.操作系统知识。操作系统知识是软件工程师必须具备的重要内容,Web开发领域可能会使用到Windows系列操作系统,大数据和物联网方向要使用到Linux系列操作系统,掌握操作系统的体系结构是进行软件研发的重要基础。 主要内容包括资源管理、任 阅读全文
posted @ 2020-01-04 10:46 baozhw 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 一、如何对需求不确定的创新产品进行分析和设计? 1.在需求不明确的情况下,需要预测需求并明确方向。任何事物的产生都不会无迹可寻,任何创新产品都或多或少有着前任的影子。 首先我们要通过确定产品的设计方向,提出一系列的预案,同时还可以参照同类的产品。 2.之后可以按照需求调研的正常步骤,利用访谈法或者问 阅读全文
posted @ 2019-12-15 10:59 baozhw 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 一、工厂模式的特点 工厂模式核心是封装对象的创建接口,将new对象的操作封装起来,方便创建使用、管理对象。 工厂模式实现了解耦、降低代码重复、减少错误的作用。 解耦:把对象的创建和使用的过程分开。就是Class A 想调用Class B,那么只是调用B的方法,而至于B的实例化,就交给工厂类。 降低代 阅读全文
posted @ 2019-12-08 12:10 baozhw 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 一、领域模型 显示最重要的业务概念和它们之间关系,是真实世界各个事物的表示(现实世界的可视化抽象字典)而不是软件中各构件的表示。(类:表示业务概念,通常只包含重要属性,少甚至不包含操作;关联、泛化:表达概念之间的关系), 总而言之:领域模型是描述业务领域(业务实体)的静态结构。 理论派认为,领域模型 阅读全文
posted @ 2019-11-21 21:03 baozhw 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 一、什么是用例 用例(Use Case)是一种描述系统需求的方法,使用用例的方法来描述系统需求的过程就是用例建模。用例方法最早是由Iva Jackboson博士提出的,后来被综合到UML规范之中,成为一种标准化的需求表述体系。用例的使用在RUP中被推崇备至,整个RUP流程都被称作是"用例驱动"(Us 阅读全文
posted @ 2019-11-03 09:38 baozhw 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 总结同类编程语言或项目在代码规范和风格的一般要求 我做的项目是基于语音识别的人工智能问答系统,在GitHub上找了一套代码 源代码分析: 目录结构 命名合理,格式规范。 代码分析 选取其中一个函数分析。可以看到在变量命名、函数命名方面符合规范要求,仅有部分运算符号两侧未全部加空格。最后的return 阅读全文
posted @ 2019-10-12 10:13 baozhw 阅读(163) 评论(0) 推荐(0) 编辑