Tag: linux

在家里学习内核黑客和embedded式开发?

我一直被内核入侵和embedded式系统所吸引。 有没有人得到很好的教程(+易于使用的硬件)开始混淆这样的东西? 有些东西就像用于编写驱动程序的工具包一样,它们具有良好的文档并且价格合理。 谢谢!

为什么我们需要在Linux的交换任务?

空闲任务(又称交换任务)被select为在任务调度点运行队列中没有更多可运行任务时运行。 但是这个特殊任务的用法是什么? 另一个问题是为什么我找不到这个线程/进程在用户空间的“ps aux”输出(PID = 0)?

你用什么来开发在Linux上的应用程序?

我是一名经验丰富的.NET开发人员(c#/ vb.net)(自testing版以来),我想开始检查如何开发Linux应用程序。 我也做了一些Java编程。 我有Ubuntu 8.10 Linux,想知道大家用什么工具来开发应用程序(对于任何Linux风格) – Java是最好的方法吗? 我是Ubuntu的新手,从Redhat使用terminal的那段时间开始就没有在Linux上工作过,所以我还是很新的。 以下是一些基于回复的反馈: 我希望能够更有效地使用Linux(即使只是用于O / S),并通过学习不同的语言(如Java)来利用我的开发技能(过去我已经构build了非常简单的Java应用程序…非常简单) – 无论如何,我想考虑一些能够扩展我的技能的东西。 我已经build立了许多窗口和Web应用程序与.NET(一些非常大),我非常了解c#和VB.NET语言和.NET框架。 我已经build立了许多项目使用: .net远程处理,web服务,wcf(许多最近的wcf应用程序),windows应用程序,windows服务,web应用程序 – 我在开发asp.net时使用JavaScript,我也知道VBScript&vb6。 我知道要用另一种语言有效地开发应用程序需要很多年的时间,但是我认为这会让我变得更加圆润的开发者 – 如果Google购买了微软并且使用Windows来非法,那么我仍然有一个后备scheme :-)

nohup:忽略input并将输出追加到“nohup.out”

我想通过nohup.php启动我的服务器,但命令没有运行,并显示以下错误 nohup:忽略input并将输出追加到“nohup.out” 我通过putty使用ssh,这就是我正在做的事情 nohup php server1.php

每小时使用logrotate旋转文件?

我试图设置位于/ tmp / hr_logs /的日志文件的日志轮转。 为了设置,我在linux中使用了logrotate,并且可以在/etc/logrotate.conf中使用以下configuration每天进行轮换 /tmp/hr_logs { daily rotate 4 使用此configuration,文件将每天旋转,系统将保留日志文件的4个副本附加date[格式:-YYYYMMDD] 现在,我试图设置一个不同的日志文件,我需要每小时旋转一次,为此,我已经在logrotate.conf中完成了configuration: /tmp/last_logs { hourly rotate 4 但是这根本不起作用? 任何人都可以请指导我这个?

一种确定进程的“真实”内存使用情况的方法,即私人脏RSS?

诸如“ps”和“top”之类的工具报告各种内存使用情况,例如VM大小和驻留集大小。 但是,这些都不是“真正”的内存使用情况: 程序代码在同一程序的多个实例之间共享。 共享库程序代码在使用该库的所有进程之间共享。 一些应用程序分离进程并与他们共享内存(例如通过共享内存段)。 虚拟内存系统使VM大小报告几乎没有用处。 当一个进程被换出时RSS是0,使得它不是很有用。 等等 我发现Linux报告的私人脏RSS是最接近“真实”内存使用情况的。 这可以通过将/proc/somepid/smaps所有Private_Dirty值相加来获得。 但是,其他操作系统是否提供了类似的function? 如果不是,还有什么select? 特别是,我对FreeBSD和OS X感兴趣。

UNIX域STREAM和DATAGRAM套接字之间的区别?

这个问题不适用于STREAMtypes和DATAGRAMtypesINTERNET套接字之间的区别。 我知道STREAM套接字使用TCP,数据报套接字使用UDP和所有的TCP,UDP的东西,数据包到达顺序,ACK,NACK等。我明白这些在互联网上的重要性。 Q1)当我创build一个本地套接字的UNIX域套接字时,如果套接字是STREAM套接字或DATAGRAM套接字,会有什么关系。 这种types的套接字会将数据写入套接字文件,在这种情况下协议是否很重要,因为我不通过networking传输数据? 如果我使用基于UNIX的DATAGRAM套接字,在这种情况下是否有数据丢失的机会? Q2)UNIX DATAGRAM套接字是否比UNIX STREAM套接字提供更好的性能? Q3)如何决定一个STREAM / DATAGRAM基于UNIX的套接字在我的应用程序? 谢谢

如何在Docker容器中设置静态IP地址?

我对docker默认给我的IP范围非常满意(176.17.xx),所以我不需要创build一个新的桥,我只是想给我的容器在这个范围内的静态地址,所以我可以点客户端浏览器直接。 我试过使用 RUN echo "auto eth0" >> /etc/network/interfaces RUN echo "iface eth0 inet static" >> /etc/network/interfaces RUN echo "address 176.17.0.250" >> /etc/network/interfaces RUN echo "netmask 255.255.0.0" >> /etc/network/interfaces RUN ifdown eth0 RUN ifup eth0 从一个Dockerfile,并正确地填充接口文件,但接口本身并没有改变。 实际上,在容器中运行ifup eth0会得到这个错误: RTNETLINK答案:操作不允许 无法启动eth0

全屏部件

我怎样才能让我的部件全屏? 我试过这样的事情: void MainWindow::SetFullScreen() { // Make our window without panels this->setWindowFlags( Qt::FramelessWindowHint | Qt::Tool | Qt::WindowStaysOnTopHint ); // Resize refer to desktop this->resize( QApplication::desktop()->size() ); this->setFocusPolicy( Qt::StrongFocus ); this->setAttribute(Qt::WA_QuitOnClose, true); qApp->processEvents(); show(); this->setFocus(); } 但小部件不在系统面板。 任何其他的想法? 操作系统:Linux

如何重新编译一个单一的内核模块?

通常内核源码存放在/usr/src/linux-2.6.x/ 。 为了避免重新编译整个内核,如果我修改模块的源代码,我该如何重新编译模块?