https://github.com/tboox/tbox GBOX是一个用c语言实现的多平台图形库,支持windows.linux.mac.ios.android以及其他嵌入式系统. 现在这个项目,正处于早期开发阶段,暂不提供使用,仅供参考学习 如果您感兴趣,可以阅读源码 ####已实现的功能 矢量2d渲染,支持矩阵变换,画刷.画笔的设置和渲染 支持复杂矢量路径渲染和填充 支持纯色填充.梯度填充.图像填充(正在重构) 支持全定点或者浮点计算(可配置切换) 实现渲染设备扩展,目前支持gpu加速的…
前提:在虚拟机安装了gitlab服务,并且本机可以访问到虚拟机的gitlab 自己本机项目上传到gitlab 1.先在gitlab上建立项目 拷贝项目地址: http://192.168.1.105/liaoliao/ttms1.0.git 2.在本地文件夹下,使用git bash 1).git init 2)git remote add origin http://192.168.1.105/liaoliao/ttms1.0.git (这个是刚创建的地址) 3)git add . 4)git…
C语言写贪吃蛇本来是打算去年暑假写的,结果因为ACM集训给耽搁了,因此借寒假的两天功夫写了这个贪吃蛇小项目,顺带把C语言重温了一次. 是发表博客的前一天开始写的,一共写了三个版本,第一天写了第一版,第二天写了第二版和第三版. 相信C语言写个小游戏或小项目是大多数计算机相关专业的学生都做的事情,但是作为一个数学专业的学生,我们教研室的老师对C语言的要求也就比较低了,大一没有让我们做个小项目实践一次.至今为止用C/C++做过的三个小项目(大作业),一个是外校同学让我帮忙写的学生信息管理系统(天呐,这…
为了方便打包测试,自己PowerShell写了一个编译和发布的脚本,调用msbuild通过命令行来编译当前解决方案 后来发现一个问题,用VS编译解决方案,我通过 项目属性-Build设置 Release和x86 但是脚本直接调用MSBuild编译,有一个项目的属性死活就是Release和Any Cpu 后来看MSBuild的参数,有一个是可以指定的这两个属性的,就是 /property 缩写 /p MSBuild添加下面的参数 /p:Configuration=Release;Platform=…
一.如何获得软件? 获得这3个软件包的方法很多,目前大多数Linux分发都捆绑了这3个软件包,如RedHat.本文介绍的安装方法是基于从这些软件的官方站点上下载获得的软件包进行的,针对RedHat Linux 6.1,也介绍它们的安装和配置. 这3个软件的官方站点是: 软件 官方网站 当前版本 下载 Apache http://www.apache.org/httpd.html 1.3.9 这里 PHP http://www.php.net/ 3.0.13 这里 MySQL http://www…
C++程序设计 第一章 计算机程序和C++语言简介 1.计算机是一台能够存储并处理数据的电子设备,包含硬件和软件两部分. 2.计算机硬件由: 1)中央处理单元(Central Processing Unit,CPU) 2)内存(主存) 3)外存储设备(磁盘.光盘.磁带) 4)输入输出设备(显示器.键盘.鼠标.打印机) 5)通信设备(调制解调器.网卡) 这些设备通过总线连接起来.数据传输通过总线进行.[总线又分为控制总线.数据总线.地址总线] 3.CPU 1)cpu通常由两部分组成:控制单元(co…
TBOX是一个用c语言实现的跨平台开发库. 针对各个平台,封装了统一的接口,简化了各类开发过程中常用操作,使你在开发过程中,更加关注实际应用的开发,而不是把时间浪费在琐碎的接口兼容性上面,并且充分利用了各个平台独有的一些特性进行优化. 这个项目的目的,是为了使C开发更加的简单高效. * 源码仓库:https://github.com/tboox/tbox * 在线文档:https://tboox.io/#/zh-cn/ ## 内存整体架构 TBOX的内存管理模型,参考了linux kernel的…
项目在ubuntu虚拟机下的部署 一:将war从本地通过Xftp 4 传到虚拟机tomcat目录下的webapps目录下 2:修改tomcat下的server.xml  <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authenticati…
我们讲到了智能车载娱乐系统的5个基本特征: 基本来说, 当今的智能车机基本有以下几个特点: 基于智能操作系统: Android, Yunos, Linux等 基本都是虚拟按键, 较少用实体按键 具备外网连接功能, 即搭载了Tbox盒子 有配套的车联网手机App, 具有手机钥匙及远程车控等功能 具备控制: 空调, 数字液晶仪表, 360度环视摄像头, 其他车身设备(天窗, 车窗, 大灯)的应用程序. 以上涉及的第3点, 第4点都必须有Tbox设备才能实现. 什么是Tbox Tbox实例图: Tbo…
汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指令或操作数的地址.在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令,普遍地说,特定的汇编语言和特定的机器语言指令集是相互对应的,不同平台之间不可直接移植. 该系列笔记,记录了Win32汇编的常用语法规则,有些汇编代码并没有…
简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级.中级.高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情.执着,对IT的憧憬.向往!此时此景,笔者只专注Android.Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景!   Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能.编辑音乐软件的朋友,这款实例会对你有所帮助.Calendar万年历 1个目标文件…
[译]如何使用 Python 创建一个虚拟机解释器? 原文地址:Making a simple VM interpreter in Python 更新:根据大家的评论我对代码做了轻微的改动.感谢 robin-gvx. bs4h 和 Dagur,具体代码见这里 Stack Machine 本身并没有任何的寄存器,它将所需要处理的值全部放入堆栈中而后进行处理.Stack Machine 虽然简单但是却十分强大,这也是为神马 Python,Java,PostScript,Forth 和其他语言都选择它…
Go 语言于 2009 年 11 月正式宣布推出,成为开放源代码项目,发展至今已经具有越来越广泛的影响力,今年更是在 TIOBE 编程语言排行榜中跻身 20 强.很多开发者也逐渐将目光投向这门语言,本文整理了部分比较好的学习和应用 Go 语言的开发项目,希望为没有接触过这门语言的开发者们提供一个学习和了解这门语言的途径. 关于Go语言 Go 是 Google 开发的一种编译型,并发型,并具有垃圾回收功能的编程语言.由于其构建简化了并发运行代码的工作,存在并行编程模式,因此这一语言也被设计用来解决…
Robert Love, Google Software Engineer and Manager on Web Search. Upvoted by Kah Seng Tay, I was the Head TA for a class taught in Java at MIT. I used… Robert has 10+ answers in Google Engineering. Man, I cannot imagine writing let alone maintaining a…
虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的.Java虚拟机有自己完善的硬体架构,如处理器.堆栈.寄存器等,还具有相应的指令系统.JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行.[1] 中文名 java虚拟机 外文名 Java Virtual Machine 目录 1定义 2简介 3特点 4使用主体 5安装方法 6数据类型 7规格描述 体系结构 运行过程 10参数说明…
java程序运行时的内存空间,按照虚拟机规范有下面几项: )程序计数器 指示下条命令执行地址.当然是线程私有,不然线程怎么能并行的起来. 不重要,占内存很小,忽略不计. )方法区 这个名字很让我迷惑.这里面装的其实是程序运行需要的类文件,常量,静态变量等.作用容易明白. 程序运行时,执行代码先得装入内存,当然java好像是在第一次用到时才加载,这样可以避免装入无用的类,节省内存. 在HosSpot上,方法区现今和永久代是同一个区域.我就这么理解了,虽然作者解释说其实这两者根本不是同一个概念. 概…
代码编译的结果从本地机器码转换为字节码,是存储格式发展的一小步,却是编程语言发展的一大步.计算机只认识0和1,所以我们的程序需要经过编译器翻译成由0和1组成的二进制格式才能由计算机执行.经过技术的发展,将编写的程序编译成二进制本地机器码已经不是唯一的选择,越来越多的程序语言选择了与操作系统和机器指令无关.平台中立的格式作为程序编译后的存储格式. 实现语言无关性的基础是虚拟机和字节码存储格式.Java虚拟机不和包括Java在内的任何语言绑定,只与"Class文件"这种特定的二进制文件所关…
代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步. 7.1 概述 上一章我们了解了Class文件存储格式的具体细节,在Class文件中描述的各种信息,最终都需要加载到虚拟机中之后才能运行和使用.而虚拟机如何加载这些Class文件?Class文件中的信息进入到虚拟机后会发生什么变化?这些都是本章将要讲解的内容. 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载…
理论总是作为指导实践的工具,能把这些知识应用到实际工作中才是 我们的最终目的. 给一个系统定位问题的时候,知识.经验是关键基础,数据是依据,工具是运用知识处理数据的手段.这里说的数据包括:运行日志.异常堆栈.GC日志.线程快照( threaddump/javacore文件).堆转储快照(heapdump/hprof文件)等.经常使用适当的虚拟机监控和分析的工具可以加快我们分析数据.定位解决问题的速度,但在学习工具前,也应当意识到工具永远都是知识技能的一层包装,没有什么工具是“秘密武器”,不可能学…
什么是Docker: 1.Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目.它基于 Google 公司推出的 Go 语言实现. 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护. Docker 自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc.Redhat 已经在其 RHEL6.5 中集中支持 Docker:Google 也在其 PaaS…
三 类文件结构 1 Java虚拟机的两种中立特性     · 平台无关性     · 语言无关性     实现平台无关性和语言无关性的基础是虚拟机和字节码存储格式(Class文件).   2 Class类文件的结构     ---Class文件是一组以8位字节为基础单位的二进制流,当遇到需要占用8位字节以上空间的数据项时,则会按照高位在前的方式分割成若干个8位字节进行存储.     ---“高位在前”:即最高位字节在地址最低位.最低位字节在地址最高位.     ---Class文件格式的两种数据…
SVN介绍 Svn(subversion)是近年来崛起的非常优秀的版本管理工具,与CVS管理工具一样,SVN是一个跨平台的开源的版本控制系统.Svn版本管理工具管理着随时间改变的各种数据.这些数据放置在一个中央资料档案库(repository)中,这个档案库很像一个普通的文件服务器或者FTP服务器,但是,与其他服务器不同的是,SVN会备份并记录每个文件每一次的修改更新变动.这样我们就可以把任意一个时间点的档案恢复到想要的某一个旧的版本,当然也可以直接浏览指定文件的更新历史记录. 为什么会有svn…
Java 虚拟机面试题全面解析(干货) JDK 是什么 JRE 是什么 Java历史版本的特性 Java Version SE 50 Java Version SE 6 Java Version SE 7 Java 8 运行时数据区域包括哪些 程序计数器线程私有 Java 虚拟机栈线程私有 本地方法栈线程私有 Java 堆线程共享 方法区线程共享 运行时常量池 Java 中对象访问是如何进行的 如何判断对象是否死去 什么是引用计数法 引用计数法的缺点 什么是根搜索算法 Java 的4种引用方式…
VLC 是一款自由.开源的跨平台多媒体播放器及框架,可播放大多数多媒体文件,以及 DVD.音频 CD.VCD 及各类流媒体协议. Downloading vlc-2.2.4.tar.xz Thanks! Your download will start in few seconds...If not, click here. SHA-256 checksum: 1632e91d2a0087e0ef4c3fb4c95c3c2890f7715a9d1d43ffd46329f428cf53be htt…
先上一个最容易理解的类实例化的内存模型案例截图: 转载自:https://www.zybuluo.com/Yano/note/321063 周志明著的<深入理解 Java 虚拟机>的干货~如有错误,欢迎指出 O(∩_∩)O 转载请保留以上信息. JDK 是什么 JRE 是什么 Java历史版本的特性 Java Version SE 50 Java Version SE 6 Java Version SE 7 Java 8 运行时数据区域包括哪些 程序计数器线程私有 Java 虚拟机栈线程私有…
1.1 - 概述 Java 总述:Java 不仅是一门编程语言,还是一个由一系列 计算机软件 和 规范 形成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用于 嵌入式系统. 移动终端 . 企业服务器 . 大型机等各种场合. 特点:Java 能获得如此广泛的认可,除了它拥有一门 结构严谨.面向对象 的编程语言之外,还有须有不可忽视的有点,主要有如下几点. 它摆脱了硬件平台的束缚,实现了 一次编写,到处运行 的越界问题. 它实现了 热点代码检测 和 运行时编译及优化…
最近在C++项目中碰到了需要使用第三方公司开发的Java jar包的问题,最后使用了JNI来解决. 参考了网络上不少的方法介绍, 大多数介绍JNI的文章讲的的都是Java通过JNI来调C的本地代码,其实这个也可以反过来用就是C的本地代码通过创建Java虚拟机调用java方法.下面贴一下解决实例C2JavaJym.c,注释不是很多. #include <jni.h> #include <stdlib.h> #include <string.h> /*C字符串转JNI字符串…
Jakarta项目是ASF(The Apache Software Foundation)的一部分.ASF是一个非赢利组织,她鼓励基于开放的软件许可下进行合作.注重实效的开发,并提供各个领域的高质量软件,她涉及到Http服务器,编译工具,类库,开发架构,服务器端Java技术,J2EE容器,数据库工具,日志工具,XML解析等等诸多领域.ASF提供的java项目有一部分在Jakarta中,还有一些成为独立的诸如Tomcat的项目,Jakarta项目则提供了多种多样开源的java解决通用方案. 先介绍…
JVM简介 Java虚拟机(JVM)是由Java虚拟机规范定义的,其上运行的是字节码指令集.这种字节码指令集包含一个字节的操作码(opcode),零至多个操作数(oprand),虚拟机规范明确定义了每种字节码指令完成的功能是什么以及需要多少个操作数.Java虚拟机上运行的class文件,这个文件中包含字节码指令流以及类定义的信息,所以Java虚拟机规范还定义了class文件的格式(精确到每个字节).所以实现Java虚拟机的两个要素是字节码指令集和class文件格式,Java虚拟机的实现者只要以正…
apache基金会开源项目简介   项目名称 描述 HTTP Server 互联网上首屈一指的HTTP服务器 Abdera Apache  Abdera项目的目标是建立一个功能完备,高效能的IETF Atom联合格式(RFC4287)和Atom发布协议(RFC5023)规范的实现. Accumulo Apache  Accumulo 是一个可靠的.可伸缩的.高性能的排序分布式的 Key-Value 存储解决方案,基于单元访问控制以及可定制的服务器端处理.使用  Google BigTable 设…