- 博客(28)
- 收藏
- 关注
原创 软件工程(C编码实践篇)学习总结
张瑜 《软件工程(C编码实践篇)》MOOC课程http://mooc.study.163.com/course/USTC-1000002006软件工程的线上课程是围绕着一个menu程序展开的,在逐步实施该项目的过程中,老师顺带着讲了软件工程的一些关键的概念和其他相关的知识。整个课程围绕了7个实验展开 ,一开始讲解linux简单命令行以及vim的使用,以及用它编写了一个helloworld程
2017-06-13 15:19:51 435
转载 svm核函数的理解和选择
特征空间的隐式映射:核函数咱们首先给出核函数的来头:对于非线性的情况,SVM 的处理方法是选择一个核函数 κ(⋅,⋅) ,通过将数据映射到高维空间,来解决在原始空间中线性不可分的问题。此外,因为训练样例一般是不会独立出现的,它们总是以成对样例的内积形式出现,而用对偶形式表示学习器的优势在为在该表示中可调参数的个数不依赖输入属性的个数,通过使用恰当的核函数来替代内积,可以隐式得将非线性的训练数据映射到
2017-06-13 15:05:57 2617
转载 超平面
什么是超平面 我们最常见的平面概念是在三维空间中定义的:Ax+By+Cz+D=0 它由两个性质定义: 方程是线性的: 是空间点的各分量的线性组合 方程数量为1 若抛却维度等于3的限制, 就得到了超平面的定义. 方程数量为1, 它的本质其实是自由度比空间维度d小一.自由度的概念可以简单的理解为至少要给定多少个分量的值才能确定一个点. 例如, 三维空间里的(超)平面只要给定了(x,y,z)
2017-06-12 22:40:07 677
原创 Linux内核学习总结
张瑜原创作品转载请注明出处《Linux内核分析》MOOC课 http://mooc.study.163.com/course/USTC-1000029000 自从上学期学了孟宁老师的网络程序设计的课程,觉得老师翻转课堂,注重实践与理论相结合的教学方式特别棒,这学期又看见孟宁老师的Linux内核课程,毫不犹豫的选了。线上视频课程与实验楼的在线实验,还有线下老师的手把手教学辅导,让我受益匪浅。此课
2017-04-21 21:28:26 448
转载 神经网络实现手写字符识别系统
一:内容介绍1.1 课程来源本项目核心部分来自《500 lines or less》项目,作者是来自 Mozilla 的工程师 Marina Samuel,这是她的个人主页:http://www.marinasamuel.com/ 。项目代码使用 MIT 协议,项目文档使用 http://creativecommons.org/licenses/by/3.0/legalcode 协议。 内容在原文
2017-04-20 00:07:13 2207
原创 Linux内核分析——进程的切换和系统的一般执行过程
张瑜《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000一、理解Linux系统中进程调度的时机:中断处理过程(包括时钟中断、I/O中断、系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用schedule();内核线程可以直接调用schedule()进行进程切换,也可以
2017-04-15 23:09:56 832
原创 Linux内核分析——Linux内核如何装载和启动一个可执行程序
当我们在用户空间调用execve(),使用一个软件中断调用系统调用的过程。你提出一个软件中断通过INT instruc-tion (在X86架构中),那么CPU咨询另一个IDT结构(中断描述符表),去查询它需要调用的例程。INT指令采取的唯一的操作数是一个索引表。这意味着执行的int 0X80 h时,CPU咨询IDT与并执行存储在索引0x80哪里的函数。在Linux系统中,系统调用处理程序存储在索引
2017-04-07 22:01:08 329
原创 Linux内核分析——分析Linux内核创建一个新进程的过程
张瑜原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000理论知识进程描述符(task_struct) 用来描述进程的数据结构,可以理解为进程的属性。比如进程的状态、进程的标识(PID)等,都被封装在了进程描述符这个数据结构中,该数据结构被定义为task_struct进程控制块(PCB)
2017-03-31 11:22:12 335
原创 Linux内核分析——扒开系统调用的三层皮(下)
张瑜《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000一、实验内容1. 通过内核的方式使用系统调用上周是从用户态来看系统调用,这周是从内核方面来看这个问题用到的命令:rm menu -rf //强制删除当前menugit clone http://github.com/mengning/menu.git //重新克
2017-03-24 19:48:18 603
原创 LeetCode No.154 Find Minimum in Rotated Sorted Array II
/**Follow up for "Find Minimum in Rotated Sorted Array":What if duplicates are allowed?Would this affect the run-time complexity? How and why?Suppose an array sorted in ascending order is rotated at
2017-03-18 21:47:56 198
原创 Linux内核分析——扒开系统调用的三层皮(上)
张瑜原创作品转载请注明出处 《Linux内核分析》(http://mooc.study.163.com/course/USTC-1000029000%20MOOC%E8%AF%BE%E7%A8%8B)一、原理总结 本周内容主要包括用户态、内核态和中断,系统调用概述,以及使用库函数API获取系统当前时间。 系统调用是操作系统为用户态进程与硬件设备进行交互提供的一组接口,也是一种特殊的中断,
2017-03-17 18:16:25 557
原创 LeetCode No.153 Find Minimum in Rotated Sorted Array
/**Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).Find the minimum element.You may assume no duplicate e
2017-03-17 15:13:35 391
原创 windows下pip install 出现报asciii码错误的问题
环境:系统版本:win10 x64 Python版本:2.7.13 pip版本:9.0.1错误:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 7: ordinal not in range(128)错误原因:pip安装python包会加载我的用户目录,我的用户目录恰好是中文的,ascii不能编码。解决办法
2017-03-16 21:17:14 352
原创 Linux内核分析——跟踪分析Linux内核的启动过程
张瑜 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、实验过程:实验内容为使用gdb跟踪调试内核从start_kernel到init进程启动1.根据实验指导按照过程,在实验楼环境下打开shell:cd LinuxKernel/qemu -kernel linux-3.18.6/arch/x86/boot/bz
2017-03-11 20:22:12 350
原创 Linux内核分析——操作系统的工作原理
一、实验过程:实验内容为完成一个简单的时间片轮转多道程序内核代码1.根据老师指导按照实验步骤,在实验楼环境下打开shell:cd LinuxKernel/linux-3.9.4rm -rf mykernelpatch -p1 < ../mykernel_for_linux3.9.4sc.patchmake allnoconfigmake qemu -kernel arch/x86/boot/bzI
2017-03-08 19:45:47 4628
原创 Linux内核分析——简单分析汇编代码
一、实验过程:实验内容为通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的。1.进入linux实验环境,打开一个终端。 2.打开Code文件下的shiyanlou_cs195文件夹,vi mian.c文件。 3.输入命令gcc -S -o main.c mian.s -m32得到main.s文件。 4.删除以点开头的行,得到最终的main.s。 二、分析汇编代码的工作工
2017-03-08 19:26:54 455
转载 关于QR二维码
一:什么是二维码二维码 (2-dimensional bar code)是用某种特定的几何图形按一定规律在平面(二维方向上) 分布的黑白相间的图形记录数据符号信息的。 在许多种类的二维条码中,常用的码制有:Data Matrix, Maxi Code, Aztec, QR Code, Vericode, PDF417, Ultracode, Code 49, Code 16K等。 1.堆叠式/行排
2017-02-19 17:32:01 9336 1
转载 Python中的生成器与迭代器
生成器是一种迭代器,是一种特殊的函数,使用yield操作将函数构造成迭代器。普通的函数有一个入口,有一个返回值;当函数被调用时,从入口开始执行,结束时返回相应的返回值。生成器定义的函数,有多个入口和多个返回值;对生成器执行next()操作,进行生成器的入口开始执行代码,yield操作向调用者返回一个值,并将函数挂起;挂起时,函数执行的环境和参数被保存下来;对生成器执行另一个next()操作时,参数从
2017-02-15 11:12:29 174
转载 为什么引入“端口(port)”
首先说一下什么是端口。端口是TCP/IP协议簇中,应用层进程与传输层协议实体间的通信接口。端口是操作系统可分配的一种资源;应用程序通过系统调用与某端口绑定后,传输层传给改端口的数据都被相应进程接收,相应进程发给传输层的数据都通过端口输出。 为什么需要端口这个概念呢?在网络通信过程中,需要唯一识别通信两端的端点,就是使用端口识别运行于某主机中的应用程序。如果没有引入端口,则只能通过 进程号进行
2017-01-08 19:38:16 1448
原创 2016秋季网络程序设计学习总结
USTC-NP2016秋季网络程序设计这门课的第一堂,老师说要“玩个大的”,因为自己基础不太好,便打了退堂鼓,但是由于一直以来接受的都是传统的“灌输式”教学方法,孟宁老师这种类似团队做项目,让同学们自己来学习分享的教学方法十分吸引我,于是选择了这门课,果然受益匪浅。
2017-01-04 22:11:58 383 1
转载 Dijkstra(迪杰斯特拉)算法
1.定义概览Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法是很有代表性的最短路径算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论,运筹学等等。注意该算法要求图中不存在负权边。问题描述:在无向图 G=(V,E) 中,假设每条边 E[i] 的长度为 w[
2016-12-28 20:42:08 489
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-12-15 15:13:30 148
转载 什么是P问题、NP问题和NPC问题
什么是P问题、NP问题和NPC问题这或许是众多OIer最大的误区之一。你会经常看到网上出现“这怎么做,这不是NP问题吗”、“这个只有搜了,这已经被证明是NP问题了”之类的话。你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。他们没有搞清楚NP问题和NPC问题的概念。NP问题并不是那种“只有搜才行”的问题,NPC问题才是。好,行了,基本上这个误解已经被澄清了。下面的内容都是在讲什么是P问题
2016-12-13 21:24:23 279
原创 eclipse中的web项目部署路径
添加了server之后,需要对tomcat的部署路径做一下更改,eclipse默认的部署路径是 .metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps(根据自己的workspace决定的)如果添加了项目到tomcat下那么按照下面的步骤进行配置1、找到Server面板,右击当前的那个Tomcat,先remove掉其中所有的工程。2
2016-12-10 15:42:05 12093
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人