首页 \ 问答 \ Google Dataflow vs Apache Storm(Google Dataflow vs Apache Storm)

Google Dataflow vs Apache Storm(Google Dataflow vs Apache Storm)

阅读Google的Dataflow API,我的印象是它与Apache Storm非常相似。 通过流水线实时数据处理。 除非我完全错过了这里的观点,而不是在如何执行相互写入的管道之间建立桥梁,我期望与谷歌有所不同,而不是重新发明轮子。 Apache Storm已经处于良好的状态,可以使用任何编程语言。 做这种事情的真正价值是什么?


Reading Google's Dataflow API, I have the impression that it is very similar to what Apache Storm does. Realtime data processing through pipelining flow. Unless I completely miss the point here, instead of building bridges on how to execute pipelines written against each other, I'd expect something different from Google and not reinventing the wheel. Apache Storm is already well-placed and usable with any programming language. What is the real value for doing something like that?


原文:https://stackoverflow.com/questions/28502787
更新时间:2024-02-16 08:02

最满意答案

假设32位x86,请使用以下函数:

get_eip: mov eax, [esp]
         ret

然后,为了在EAX中获得EIP的价值,简单地说:

call get_eip

Assuming 32-bit x86, use the following function:

get_eip: mov eax, [esp]
         ret

Then, to get the value of EIP in EAX, simply:

call get_eip

相关问答

更多
  • 假设32位x86,请使用以下函数: get_eip: mov eax, [esp] ret 然后,为了在EAX中获得EIP的价值,简单地说: call get_eip Assuming 32-bit x86, use the following function: get_eip: mov eax, [esp] ret Then, to get the value of EIP in EAX, simply: call get_eip
  • 好吧,汇编不一定是理解正在发生的事情的方式。 我会说这是一种感染。 用户进程看不到真正的内存或ioports,它只看到内核显示的内容。 例如,您的并行端口由内核处理,因此使用它涉及使用系统调用。 使用程序集不会让你跨越内核障碍。 我想了解发生了什么,可能你应该问问自己你真正想知道的是什么? 如果您不知道自己在寻找什么,那么我建议您从高级方法入手,然后继续下去: 写一个C程序做你想要的。 检查它,发现它,发现它是如何进行系统调用的! 从这里你可以自己做系统调用,或者在内核空间中进入系统调用屏障的另一端。 但那 ...
  • 每次检索并解码指令以执行时, EIP由CPU本身中的微码(固件)更新。 我不相信你甚至可以通常访问它。 但是它可以使用jmp指令进行修改,这在功能上(不包括管道问题等)与mov %eip,address 。 它还会在条件跳转, call和ret指令上进行更新。 将程序加载到内存后(在此过程中,您可以将程序视为与任何其他文件一样的简单数据),OS(或其他某些加载程序)会在程序启动时执行jmp 。 当然,您作为示例代码显示的代码是程序的真正开始,但只是main call ed的函数。 EIP is update ...
  • 下面是用于在mac os x(MacOS)上附加文件的更正后的汇编语言代码版本(AT&T样式)。 使用'as'和'ld'命令在Mac终端中编译'myfile.s'程序集文件: as -m32 -o myfile.o myfile.s ld -e _main -o myfile myfile.o .data filename: .asciz "cpuid.txt" output: .asciz "The processor Vendor ID is 'xxxxxxxxxxxx'\n" .bss .lcomm ...
  • while条件正式相当于: while ( a -- != 0 ) (省略比较是合法的混淆。) 编译器生成代码以将a与0进行比较,将结果保存在寄存器al ,然后递减a ,然后测试保存的结果。 The while condition is formally the equivalent of: while ( a -- != 0 ) (Omitting the comparison is a legal obfuscation.) The compiler is generating code to co ...
  • 为了使用int 21h , ah=0ah从键盘捕获字符串,您需要声明一个包含三个部分的变量:第一个字节指定允许的最大字符数(最大长度),中断将存储的第二个字节用户输入的字符数和字符数组,此数组的长度必须与允许的最大字符数相加 , 加一 ,因为用户将使用ENTER键完成(char 0dh = 13),此键也存储。 捕获输入后,必须将用户字符串(变量a )与字符数组(输入变量的第三部分)进行比较。 下一个代码有评论可以帮助您理解: .model small .stack 100h .data a db "H ...
  • 是的,其实这是可能的 。 俗话说, 任何事情都是可能的,如果你把它放在心上。 一段时间以来颇受欢迎的游戏, RollerCoaster Tycoon几乎全部采用x86汇编语言编写,尽管使用了几个C函数来与操作系统和DirectX进行交互。 但是,正如你可能想象的那样,这可能是非常痛苦的。 存在更高级别的语言使事情变得更容易。 我最喜欢的, C通常用于接近金属的应用程序,被认为是相当低的水平。 下面是一个从简单C函数(冒泡排序,其中最简单的一个)直接转换为x64汇编的示例: C( 罗塞塔码 ): void b ...
  • 不,这在x86-32中是不可能的。 EIP仅通过call指令或中断/陷阱从CPU泄漏。 所有这些方法都会以这种或那种方式使用堆栈。 (相比之下,x86-64允许你相对于rip lea 。) Nope, it's impossible in x86-32. EIP is only leaked from the CPU through the call instruction or on interrupts/traps. All of these methods will use the stack in ...
  • mov ax, 3 mov ah, 0 mov al, 3 这些说明应该做什么? 我猜你忘了写int 10h来设置80x25文本视频模式? 程序中的基本错误(所有内容在Ped7g的评论中都包含在内 )是您只将CL寄存器初始化为循环计数器,其中loop指令取决于整个CX寄存器,而且您错误地修改了它,因此您可以使用CX第二个目的。 ...从(0,0)打印'l'到(0,10)...... 为了获得一个有效的程序,你可以在循环之外放置尽可能多的指令。 CX的重复次数, BH的显示页面, BL的显示属性以及DL中的 ...
  • loop指令不符合您的期望! cmp esi,edi ;Have we reached the middle? loop L1 当您对这些指针进行比较时,您会从CPU获得某些标志,以便您解释比较结果。 通过使用loop指令,你忽略了这一点! 只要ESI指针小于EDI指针,您需要的是条件跳转到循环的顶部。 由于地址是未签名的,我们使用下面的条件。 cmp esi, edi ;Have we reached the middle? jb L1 ...

相关文章

更多

最新问答

更多
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • 电脑高中毕业学习去哪里培训
  • 电脑系统专业就业状况如何啊?
  • IEnumerable linq表达式(IEnumerable linq expressions)
  • 如何在Spring测试中连接依赖关系(How to wire dependencies in Spring tests)
  • Solr可以在没有Lucene的情况下运行吗?(Can Solr run without Lucene?)
  • 如何保证Task在当前线程上同步运行?(How to guarantee that a Task runs synchronously on the current thread?)
  • 在保持每列的类的同时向数据框添加行(Adding row to data frame while maintaining the class of each column)
  • 的?(The ? marks in emacs/haskell and ghc mode)
  • 一个线程可以调用SuspendThread传递自己的线程ID吗?(Can a thread call SuspendThread passing its own thread ID?)
  • 延迟socket.io响应,并“警告 - websocket连接无效”(Delayed socket.io response, and “warn - websocket connection invalid”)
  • 悬停时的图像转换(Image transition on hover)
  • IIS 7.5仅显示homecontroller(IIS 7.5 only shows homecontroller)
  • 没有JavaScript的复选框“关闭”值(Checkbox 'off' value without JavaScript)
  • java分布式框架有哪些
  • Python:填写表单并点击按钮确认[关闭](Python: fill out a form and confirm with a button click [closed])
  • PHP将文件链接到根文件目录(PHP Linking Files to Root File Directory)
  • 我如何删除ListView中的项目?(How I can remove a item in my ListView?)
  • 您是否必须为TFS(云)中的每个BUG创建一个TASK以跟踪时间?(Do you have to create a TASK for every BUG in TFS (Cloud) to track time?)
  • typoscript TMENU ATagParams小写(typoscript TMENU ATagParams lowercase)
  • 武陟会计培训类的学校哪个好点?
  • 从链接中删除文本修饰(Remove text decoration from links)