- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在 Linux x86 上使用 NASM
mov ecx,eax
mov edx,ebx
mov eax,3
mov ebx,0
int 80h
ret
EAX 最初有一个mov
'd db 常量,EBX 有缓冲区的长度
这是我用来从控制台读取的代码。它工作正常,除了一个问题......我要求 2 个字符,如果我超过 2 个字符并按 enter,下次我要求输入时,那些“溢出”/额外的字符将立即输入该请求,没有用户交互。如果我再次要求输入失败,这些额外的字符将立即被 shell 解释为命令。
例子:
对该读取例程的 2 次后续调用将产生:
2345
第二个输入请求既不会阻塞也不会提示用户输入任何内容,它只接受任何可能的字符。在这两种情况下,我都要求在一个用零填充的 3 字节缓冲区上准确地输入两个字符。
1 调用读取例程:
2345
$> 45: command not found
关于如何解决这个问题的任何想法?我应该使用不同的系统调用吗?
最佳答案
读取输入后,您需要刷新缓冲区以避免多余的部分传递给下一个输入读取。不过,这不是缓冲区溢出。
我问过同样的问题,但对于 x86-64 Linux,所以它并不完全重复: How to avoid stdin input that does not fit in buffer be sent to the shell in Linux 64-bit Intel (x86-64) assembly
无论如何,遵循 GunnerInc 的优秀教程(适用于 x86 Linux)应该可以解决您的问题: http://www.dreamincode.net/forums/topic/286248-nasm-linux-terminal-inputoutput-wint-80h/
关于linux - 当缓冲区溢出时,sys_read 将是 "spill"个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16092822/
我有一个水平菜单和另一个水平子菜单。我的问题是造型。我试图做到这一点,以便在激活主菜单元素并显示相应的子菜单时,主菜单元素会着色,以覆盖两个菜单之间的空白区域,如下图所示: 只是为了澄清上面的图片是我
我是 C# 的新手,不知道要搜索什么。我正在尝试在另一个字符串列表右侧的“列”中打印一个字符串列表。右侧“列”中的两个字符串具有多个值,每个值都需要自己的一行。但是,当我尝试这样做时,需要自己的行的值
我是 Hadoop 系统的新手,处于学习阶段。 我在 Shuffle 和 Sort 阶段注意到一件事,只要 MapOutputBuffer 达到 80%(我认为这也可以配置),Spill 就会发生。
我尝试将 3 篇文章嵌套到一个部分中。为什么它们会溢出部分的边界? CSS: article{ border-right:solid 1px grey; height:50%; width:30%;
我试图找出如何在 Dragular 服务 ( http://luckylooke.github.io/dragular/#/home ) 中设置选项以获得所需的行为: 假设我们有两个容器,contai
我正在让自己成为一个图书馆,以帮助我更快地制作注册表格。如果我有任何帮助文本,我一直使用的格式是左侧的某个表单字段(在 50% 宽的 div 单元格中),以及右侧的帮助文本(在 50% 宽的 div
在 Linux x86 上使用 NASM mov ecx,eax mov edx,ebx mov eax,3 mov ebx,0 int 80h ret EAX 最初有一个mov'd db 常量,EB
我有以下公式 =COUNTIFS(MachineData!N:N,{"*Arlington*","*RenewNorfolk*"}, MachineData!$X:$X,"Y",MachineData
我目前在业余时间在几个 ASP.Net MVC 项目之间交替,我注意到 Forms 身份验证在它们之间“溢出”。 IE。我做了一些工作来投影 a 并登录以测试某些功能。然后我切换到项目 b,当我启动它
这个问题在这里已经有了答案: D3.js Drawing geojson incorrectly (2 个回答) 1年前关闭。 使用 D3 V6 创建 map ,按县显示教育程度。我有一个 count
我需要以嵌套模式加载扩展面板。每个扩展面板都有一个子面板,而每个扩展面板又可能有类似的子面板。例如: Level-1 Level-2
首先,我知道 Firefox 15 中取消了 -moz-border-image 的前缀,如下所述: http://dbaron.org/log/20120612-border-image .在这方面
我正在使用 Apache Spark 本地模式运行 pyspark 2.2.0 作业并看到以下警告: WARN RowBasedKeyValueBatch: Calling spill() on Ro
为什么 AWS Athena 在将结果转储到目标 S3 位置时需要“溢出桶” WITH ( format = 'Parquet', parquet_compression = 'SNAPPY', ex
为什么 AWS Athena 在将结果转储到目标 S3 位置时需要“溢出桶” WITH ( format = 'Parquet', parquet_compression = 'SNAPPY', ex
有人可以帮助我了解Spark作业日志中以下几行的可能原因是什么。 2018-06-11T05:35:46,181 - INFO [Executor task launch worker for tas
我有一个 T-SQL 查询 (SQL Server 2012) 可以完成这项工作,但是当我查看执行计划时,我看到一个带有警告的排序运算符:“运算符在执行期间使用 tempdb 溢出数据泄漏级别为 1。
我有一个 T-SQL 查询 (SQL Server 2012) 可以完成这项工作,但是当我查看执行计划时,我看到一个带有警告的排序运算符:“运算符在执行期间使用 tempdb 溢出数据泄漏级别为 1。
我有一个页面,其中只包含一张垂直和水平居中的卡片。该卡片包含一个表格和一些内部文本。用户将提交表单并返回一个列表。有时列表会很长,卡片会在顶部被截断,无法滚动。无论如何让它达到顶峰而不溢出?我试过使用
我正在使用 Bootstrap 为生物医学工程 session 设计一个网站,但在针对移动设备进行配置时遇到了一些问题。 具体来说,在标题为 cochairs.html 的页面上,折叠的导航栏与其下方
我是一名优秀的程序员,十分优秀!