Articles of 克隆

什么时候clone()和fork比pthread更好?

我是这方面的初学者。 我已经学习了fork() , vfork() , clone()和pthreads。 我已经注意到, pthread_create()将创build一个线程,这比用fork()创build一个新的进程fork()less。 此外,线程将与父进程共享文件描述符,内存等。 但是什么时候fork()和clone()比pthread更好呢? 你可以给我解释给我的真实世界的例子吗? 提前致谢。

如何在Ubuntu操作系统上使用cron作业每日运行一个php脚本

命令来运行我正在使用Ubuntu 12和灯服务器。 我想每1小时运行一次php脚本。 我已经创build一个crontab来执行此操作,如果我检查我的cron列表与命令crontab -l它显示像这样 # Edit this file to introduce tasks to be run by cron. 0 * * * * /usr/bin/php5 -q /var/www/cronjobs/cron1.php # Each task to run has to be defined through a single line # indicating with different fields when the task will be run # and what command to run […]

Linux – 理解挂载名称空间和克隆CLONE_NEWNS标志

我正在阅读装载 & 克隆手册页。 我想澄清CLONE_NEWNS如何影响subprocess的文件系统视图。 (文件层次结构) 让我们考虑这棵树是目录层次结构。 让我们说5和6是父进程中的挂载点。 我在另一个问题上澄清了高点。 所以我的理解是:5&6是挂载点意味着mount命令以前用于'挂载'在5&6(这意味着必须有5和6下的目录树)的文件系统(目录层次)。 从mount手册页: A mount namespace is the set of filesystem mounts that are visible to a process. 从clone手册页: Every process lives in a mount namespace. The namespace of a process is the data (the set of mounts) describing the file hierarchy as seen by that process. After […]

如何在Linux上对clone()系统调用进行mmap映射?

Linux上的clone()系统调用需要一个指向堆栈的参数,供新创build的线程使用。 做到这一点的显而易见的方法是简单地malloc一些空间,并通过它,但是你必须确保你已经malloc'd尽可能多的堆栈空间,因为该线程将使用(很难预测)。 我记得使用pthreads时,我不必这样做,所以我很好奇它做了什么。 我遇到这个网站 ,它解释说:“Linux pthreads实现使用的最好的解决scheme是使用mmap分配内存,标记指定了使用时分配的内存区域,这样内存分配给如果系统不能分配额外的内存,则会发生分段违规。 我曾经听过mmap用过的唯一的上下文是将文件映射到内存中,并且确实读取了mmap手册页,它使用文件描述符。 这怎么可以用来分配一个dynamic长度的堆栈给clone()? 这个网站是疯了吗? ;) 无论哪种情况,内核都不需要知道如何为新的堆栈find一堆免费的内存,因为这是用户启动新进程时必须要做的事情。 为什么一个堆栈指针甚至需要首先指定,如果内核已经可以解决这个问题呢?

使用Cron运行Python脚本?

我有一个python脚本,我想添加到cron。 该脚本拥有+ x的权限。 我应该如何将它添加到crontab? (比如说,我希望它每分钟运行一次)。 重要:当我(使用shell)导航到脚本的文件夹时,我无法使用“./script_name.py”运行它。 它不工作。 然而,当我使用“Python script_name.py”运行它时,一切正常。

如何git从局域网内的其他电脑的窗口克隆回购协议?

我有我的主要PC这个git回购“c:/ xampp / htdocs / * *”,它的IP地址是192.168.0.6。 现在我想从我的主PC上的Vmware播放器上运行的ubuntu-server中克隆这个repo。 我做了 git clone \\192.168.0.6\c:\xampp\htdocs\**** 和 git clone //192.168.0.6/c:/xampp/htdocs/**** 从Ubuntu的服务器,都没有工作。 fatal: could not create work tree dir '****'.: Permission denied 我错了什么? 我该怎么办?

在Windows上使用Hudson的Git插件克隆/获取存储库问题

在任何人为此拍摄我之前 – 我已经检查了每一个适当的线程,仍然没有find解决我的问题。 我有Hudson与安装在Windows服务器上的git插件(不是我的select)和哈德森作为服务运行。 Git/bin在path上。 但是我无法克隆存储库。 以下是控制台输出的缩略显示: Started by user anonymous Checkout:workspace / C:\.hudson\jobs\sdf\workspace – hudson.remoting.LocalChannel@65394b Last Built Revision: Revision 74200b32314231a5efdadd87bf36b42ec145c720 (origin/master) Checkout:workspace / C:\.hudson\jobs\sdf\workspace – hudson.remoting.LocalChannel@65394b Fetching changes from the remote Git repository Fetching upstream changes from ssh://git.mccannlondon.co.uk/git/mccann_admin [workspace] $ "C:\Program Files\Git\bin\git.exe" fetch -t ssh://git.mccannlondon.co.uk/git/mccann_admin +refs/heads/*:refs/remotes/origin/* The server's host key is not cached in […]