一般我们写的程序都是以单个进程的方式来运行的,比较少涉及到多进程.特别是在windows下,因为Windows是按照线程来分配CPU时间片的,线程是最小的调度单位,所以在Windows下更多的用到多线程,在同一个进程里创建多个线程来执行不同的任务,达到充分利用CPU的目的.线程之间可以共享进程的资源,比如内存.变量,但是多线程有一个不好的地方,由于这些线程是在同一个进程空间里执行,所以只要一个线程崩溃,整个进程也就崩溃了,程序就退出了.多进程由于是在不同的进程空间里,一个进程崩溃,不会影响到其它…
浅析Linux下进程间通信:共享内存 共享内存允许两个或多个进程共享一给定的存储区.因为数据不需要在客户进程和服务器进程之间复制,所以它是最快的一种IPC.使用共享内存要注意的是,多个进程之间对一给定存储区的同步访问. 主要用到的函数有:shmget(),shmctl(),shmat(),shmdt(),下面一一介绍: 一.shmget()函数 函数原型如下: #include <sys/ipc.h> #include <sys/shm.h> int shmget(key_t ke…
Windows 和Linux 下 禁止ping的方法 目的: 禁止网络上的其他主机或服务器ping自己的服务器 运行环境: Windows 03.08  linux 方法: Windows 03下: 1.添加IP筛选器第1步,依次单击"开始/管理工具/本地安全策略",打开"本地安全设置"窗口.右键单击左窗格的"IP安全策略,在本地计算机"选项,执行"管理IP筛选器表和筛选器操作"快捷命令.在"管理IP筛选器列表&qu…
一.需求分析: 随着渲染业务的不断进行,数据传输渐渐成为影响业务时间最大的因素.究其原因就是因为数据传输耗费较长的时间.于是,依托于渲染业务的网盘开发逐渐成为迫切需要解决的需求.该网盘的实现和当前市场上网盘实现有一些的不同,主要在客户端与服务器端的操作需要双向进行,即:用户在客户端的操作需要及时同步到服务器端:在服务器端作业渲染生成的文件要及时同步到客户端.即:用户不在需要单独的下载数据,而是在作业运行的同时,渲染就过就会自动同步到客户端,大大缩短了等待时间.当然,无论是在客户端还是在服务端都面…
目前,Linux在国内受到了越来越多的业内人士和用户的青睐.相信在不久的将来,在国内为Linux开发 的应用软件将会有很大的增加(这不,金山正在招兵买马移植WPS呢).由于未来将会是Windows和Linux两强鼎立的格局,怎样能够使得开发的软件保持最大的可移植性就成了一个很重要的问题.小弟经过一段时间的摸索,找到了这个问题的圆满解答. 在Linux下,所有的开发工具和库都属于自由软件,可以免费获得并且功能强大.如果这些工具和库都有相应的Windows版,那么我们就能够在Windows和Linu…
原文:socket在windows下和linux下的区别 1)头文件 windows下winsock.h/winsock2.h linux下sys/socket.h    错误处理:errno.h 2)初始化 windows下需要用WSAStartup WSADATA wsaData; err = WSAStartup(0x202,&wsaData); if ( err != 0 ) { return 0; } else if ( LOBYTE( wsaData.wVersion ) != 2…
windows和linux下解决Tomcat进程 windows下启动Tomcat报错,8080端口号被占用,报错信息如下 两种解决方法,一种是关闭了这个端口号,另外一种是修改Tomcat下的server.xml中的port为其他的,让端口号不再冲突 首先来看windows下如何关闭Tomcat进程 打开cmd执行这个命令 netstat -ano | findstr 8080 此时会出现8080端口的进程号,如图: 上图中的2704就是8080的进程号(进程号不一定相同),我们关闭了就行了,命…
花了好几天,搭建好windows和linux下连接HDP集群的调试环境,在此记录一下 hadoop2.2.0的版本比hadoop0.x和hadoop1.x结构变化很大,没有eclipse-hadoop插件支持,在网上找了好久才找到,自己编译的比较麻烦,而且不成功,还好最后找到了. 环境及配置: 1.eclipse版本及hadoop插件下载地址:http://download.csdn.net/detail/kangdakangdaa/7880519 如果要用myeclipse开发方便的朋友,采用…
linux下进程间通信的几种主要手段:        1.管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信:        2.信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件生,除了用于进程间通信外,进程还可以发送信号给进程本身:linux除了支持Unix早期 信号语义函数sigal外,还支持语义符合Posix.1标准的信号函数sig…
前言: 最近公司做了一个工具,要将这个工具打包成一个可运行的程序,编写start.bat和start.sh在windows和linux下都可以运行. 在网上找了很多资料,最后终于找到一个可靠的资料,记录下来,分享给大家,也算是自己的一个总结. 吃水不忘挖井人,感谢这位老哥的文章:https://blog.csdn.net/u011752272/article/details/78560715 不多bb直接开始干活! 一.项目的结构 由于只是测试,里面的东西不复杂,可以用很简单来说明,创建的是ma…
对于多线程开发,Linux下有pthread线程库,使用起来比较方便,而Windows没有,对于涉及到多线程的跨平台代码开发,会带来不便.这里参考网络上的一些文章,整理了在Windows和Linux下通用的线程接口.经过测试,在Windows和Linux下均可正常使用. Windows和Linux下对应的线程函数列表如下: Windows和Linux线程通用接口如下: #ifndef FBC_MESSY_TEST_THREAD_HPP_ #define FBC_MESSY_TEST_THREAD…
windows和linux下解决Tomcat进程 windows下启动Tomcat报错,8080端口号被占用,报错信息如下 两种解决方法,一种是关闭了这个端口号,另外一种是修改Tomcat下的server.xml中的port为其他的,让端口号不再冲突 首先来看windows下如何关闭Tomcat进程 打开cmd执行这个命令 netstat -ano | findstr 8080 此时会出现8080端口的进程号,如图: 上图中的2704就是8080的进程号(进程号不一定相同),我们关闭了就行了,命…
windows和linux下目录分隔符兼容 DIRECTORY_SEPARATOR 换行回车兼容 PHP_EOF…
目录 windows和linux下 Python2,Python3 的环境及安装 window下安装 一. 手动安装 二. pip安装 linux下 安装 更新Python 笔者有话 windows和linux下 Python2,Python3 的环境及安装 window下安装 1.下载安装包 https://www.python.org/downloads/ 2.安装 默认安装路径:C:\python27 3.配置环境变量 [右键计算机]-->[属性]-->[高级系统设置]-->[高级…
php windows与linux下的路径区别windows用的是"\",linux用的是"/"这一点要特别清楚,, ps:在PHP windows也可以用/表示路径 所以PHP/ windows和linux是通用的 ps:还有python表示路径的时候就是在写路径时用"\\"才表示一个"\" 因为要转义…
windows和linux下的docker运行时的网络结构是有区别的 a.windows下,默认使用Hyper-v创建一个linux虚拟机,承载docker.所以从外向内的路径为: windows -> linux系统的docker(hyper-v中) -> docker内的容器(应用) 其中docker desktop会默认创建一个网络DockerNAT,windows宿主分配IP:10.0.75.1 linux虚拟机会分配IP:10.0.75.2,并且还另外会分配内部网段IP:172.17…
YOLOv4:目标检测(windows和Linux下Darknet 版本)实施 YOLOv4 - Neural Networks for Object Detection (Windows and Linux version of Darknet ) YOLOv4论文链接:https://arxiv.org/abs/2004.10934 链接地址:https://github.com/AlexeyAB/darknet darknet链接地址:http://pjreddie.com/darknet…
catalog . 引言 . Linux平台上涉及的File IO操作 . Windows平台上涉及的File IO操作 0. 引言 本文试图讨论在windows.linux操作系统上基于C库进行文件IO操作时,可能遇到的错误,及其解决方法,主机安全攻防产品除了需要将安全攻防上的领域知识固化到程序实现上之外,还极度依赖关联系统本身.编程语言库的特性,原则上,并不是所有的安全需求都能100%地落实到程序设计中,这需要我们对操作系统.编程语言本身具有较深的理解 Relevant Link: http…
Redis 是一个高性能的key-value数据库, 使用内存作为主存储,数据访问速度非常快,当然它也提供了两种机制支持数据持久化存储.比较遗憾的是,Redis项目不直接支持Windows,Windows版项目是由微软开放技术团队建立和维护一个实验性项目(支持32,64位),所以并不适用生产环境,但可在Windows环境下用于开发测试. 有2个windows版本可以下载,https://github.com/dmajkic/redis/ 或https://github.com/MSOpenTec…
写在前面的话:磁盘分区在windows下面比较好理解,在linux下会有挂载的概念,理解起来比较难,但是可以通过与windows对比,以一种通俗的方式将他们梳理清楚. ====正文开始==== 我们的电脑磁盘出厂经过初始化后,要想使用,就要对其进行分区,由于受MBR分区表的限制,最多分成4个主分区,如果想要更多的分区,那么可以分成3个主分区和1个扩展分区,其中的扩展分区进而分成多个逻辑分区. 接下来,如果windows系统和linux系统将要对磁盘的分区进行访问,那么就需要进行下面的工作: 1.…
GraphicsMagick介绍及安装 Im4Java包为: im4java-1.2.0.jar 直接在lib下引用即可 GraphicsMagick的安装如下: windows下: 安装:GraphicsMagick-1.3.12-Q16.zip 并配置GraphicsMagick的安装路径: PMS_File_service里etc下的FileConfig.properties里设置GRAPHICS_MAGICK_PATH =C:\\Program Files\\GraphicsMagick…
一.在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入"cmd"后点击确定按钮,进入DOS窗口,接下来分别运行以下命令: >netstat -aon | findstr "80" Proto Local Address Foreign Address State PID ==== ============ =========…
在win下,当你要include多个路径的话,你要用“:”隔开,但在linux下就使用":"隔开的.. if (substr(php_uname(), 0, 7) == "Windows") ini_set ( "include_path" , '.;..\..\common;..\..\include' ) ; else ini_set ( "include_path" , ".:../../common:../.…
今天在虚拟机里搭建项目环境,偷了下懒,直接把本机数据库中的表用sqlyog复制给虚拟机中的数据库,然后开始部署项目,项目一启动提示: Table 'sdmqrt.QRTZ_LOCKS' doesn't exist 我一看,找不到表,奇怪啊,我本机的数据库不可能少表啊,检查一遍虚拟机中的表也的确存在..这问题巧就巧在是qrtz_locks表,也就是调度任务表,spring quartz恰巧有那么一个bug,然后我整个人就掉进那个bug里面去了,不清楚这个bug的可以直接百度. 按照那个bug的处理…
在 Windows 下: 开始->运行->cmd启动:net start mysql停止:net stop mysql 无重启,必须先停止再启动!!! 在LINUX 下: 启动:/etc/rc.d/init.d/mysqld start停止:/etc/rc.d/init.d/mysqld stop重启:/etc/rc.d/init.d/mysqld restart或启动:/etc/init.d/mysqld start停止:/etc/init.d/mysqld stop重启:/etc/init…
Windows要引入的头文件是<Windows.h> 主要是两个函数FindFirstFile.FindNextFile MSDN里是这么说的: FindFirstFile function Searches a directory for a file or subdirectory with a name that matches a specific name (or partial name if wildcards are used). 这个函数是用来在给定目录下搜索某个文件用的(比…
如无其它说明,本文所指Linux均表示2.6内核Linux,GCC编译器,Windows均表示Windows XP系统,Visual Studio 2005 sp1编译环境. 下面大概分几个方面进行罗列: Linux要包含 [cpp] #include <sys/socket.h>   #include <netinet/in.h>   #include <netdb.h>   #include <arpa/inet.h>  等头文件,而windows下则是…
MySQL在windows下是不区分大小写的,将script文件导入MySQL后表名也会自动转化为小写,结果再想要将数据库导出放到linux服务 器中使用时就出错了.因为在linux下表名区分大小写而找不到表,查了很多都是说在linux下更改MySQL的设置使其也不区分大小写,但是有没有办 法反过来让windows 下大小写敏感呢.其实方法是一样的,相应的更改windows中MySQL的设置就行了.     具体操作:         在MySQL的配置文件my.ini中增加一行:       …
如无其它说明,本文所指Linux均表示2.6内核Linux,GCC编译器,Windows均表示Windows XP系统,Visual Studio 2005 sp1编译环境. 下面大概分几个方面进行罗列: Linux要包含 [cpp]  #include <sys/socket.h>    #include <netinet/in.h>    #include <netdb.h>    #include <arpa/inet.h>   等头文件,而windo…
主要难点在于设置recv()与send()的超时时间,具体要注意的事项,请看代码注释部分,下面是代码: #include <stdio.h> #include <sys/types.h> #include <stdlib.h> #include <string.h> #include <errno.h> #include <string.h> #ifdef _WIN32   ///包含win socket相关头文件 #include …