标签: system-programming

学习 Linux 系统编程的最佳书籍是什么?

我正在尝试学习 Linux 系统编程,哪本是最好的学习这本书?

books system-programming

27
推荐指数
4
解决办法
5万
查看次数

慢系统调用和快系统调用的区别

慢系统调用和快系统调用有什么区别?我了解到如果进程捕捉到一些信号,慢系统调用会阻塞,因为捕捉到的信号可能会唤醒被阻塞的系统调用,但我不能完全理解这种机制。任何例子将不胜感激。

system-programming system-calls

13
推荐指数
1
解决办法
2万
查看次数

涵盖 Unix/Linux 系统编程的在线课程

我正在寻找一个在线课程,类似于涵盖 Linux 系统编程的伯克利和斯坦福课程。可以使用史蒂文斯(带有一些涵盖 linux 特性的补充材料)作为文本的课程(注意:可以使用不使用)。

目的:我已经通读了史蒂文斯的大部分内容——介于 1/3 和 2/3 之间。本质上,我想尽可能轻松地填补空白。一组视频讲座似乎是最好的方式。但不是一些 youtube dweeb 试图表明他可以系他的 Linux 鞋带。[1]

[1]并非所有的 youtube 条目都是这样,但是您必须费力费力才能找到有价值的条目。除非你运气好。

system-programming

8
推荐指数
1
解决办法
3万
查看次数

是否有文件系统允许我在 O(1) 中的文件中间插入一些块?

假设

  • 我们有巨大的文件F
  • 我们喜欢把“围绕”寻求小号在O的新空(用零填充)块(1)时间(即无需重写所有布雷部分)
  • “around”意味着我们可以将s舍入到最近的文件系统块大小,并且要插入的块也可以是文件系统块大小

是否有允许这样的系统调用/文件系统?

如果没有,使用btrfs_clone此处提到)以及如何模仿这种行为是个好主意吗?

filesystems system-programming

8
推荐指数
1
解决办法
653
查看次数

通过做项目学习 Linux 系统编程

我对 linux 系统编程只有一个非常基本的想法。我没有使用linux系统编程做过任何真正的项目。在我现在的公司,我做系统管理员类型的工作,但我对 Linux 系统编程更感兴趣。我想自己做一些项目,以便在我申请其他公司的工作时可以将这些项目放在我的简历中。请告诉我是否有任何项目可以通过做一些真正的编程来学习更多的 linux 系统编程。

请注意,我只有 C 编程经验,没有 Linux 系统编程经验。但我对 linux 系统编程非常了解。

谢谢。

linux system-programming opensource-projects

7
推荐指数
1
解决办法
7249
查看次数

如何找到定义ac函数的头文件?

有没有一种简单的方法可以找出 C 函数声明在哪个头文件中?cd进入/usr/include并运行 ( grep -E 'system.*\(' *.h -R) 需要一些反复试验,但没有更简单的方法来做到这一点吗?

c system-programming system-calls

6
推荐指数
1
解决办法
1万
查看次数

类 Unix 系统中内存映射的概念

有人可以用一种易于理解的方式解释类 Unix 系统中内存映射的概念(通过 mmap() 系统调用实现)吗?我们什么时候需要这个功能?

system-programming memory architecture

6
推荐指数
1
解决办法
4145
查看次数

用 C 语言实现 Unix shell:日志记录

我目前正在用 C 语言实现我自己的 UNIX shell。shell 的基础正在工作,你可以在这里找到源代码

现在我的下一个任务是为 shell 实现日志记录功能。所以这是我的问题:

什么是 UNIX/Linux 最佳实践来做到这一点?简单的方法是每次打开一个文件并写入它。但我想知道是否有一个函数可以为我解决这个问题,帮助我生成......“更干净”......代码。

预先感谢您的帮助,我对编程很陌生,但我想把事情做好。

PS:如果您对代码的其余部分有任何一般性评论,我们将不胜感激:-)

command-line shell programming c system-programming

5
推荐指数
1
解决办法
2720
查看次数

终端中的光标移动

我正在努力思考贝壳如何移动屏幕光标(移动输入箭头键等)。

我已经做了很多测试,但我没有发现任何允许在终端中移动屏幕光标的系统调用。这是使用特定的终端扩展完成的吗?如果是这样,是否有任何文档说明如何为 xterm 实现这一点?

这让我发疯了,感谢您对此的任何启发。

system-programming terminal

5
推荐指数
1
解决办法
2466
查看次数

系统调用源码

C 库提供了 write()、read()、open() 等函数,我们可以在 C 程序中使用它们来进行系统调用。在哪里可以找到这些函数的源代码?

system-programming system-calls

5
推荐指数
1
解决办法
1万
查看次数