JP2015524591A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2015524591A5 JP2015524591A5 JP2015524457A JP2015524457A JP2015524591A5 JP 2015524591 A5 JP2015524591 A5 JP 2015524591A5 JP 2015524457 A JP2015524457 A JP 2015524457A JP 2015524457 A JP2015524457 A JP 2015524457A JP 2015524591 A5 JP2015524591 A5 JP 2015524591A5
- Authority
- JP
- Japan
- Prior art keywords
- opcode
- memory
- computer
- writing
- long
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004590 computer program Methods 0.000 claims 1
Claims (10)
- コンピュータにより実施される方法であって、
複数のオプコードを含む命令を受信する受信ステップであって、各オプコードは、1バイト以上のデータを含む、受信ステップと、
前記命令を別々のオプコードに逆アセンブルするステップと、
各オプコード間の境界を識別するテーブルを作成するステップと、
メモリの完全な標準ブロックを作成するために、デバッグ・ブレークポイント・オプコードをオプコードに付加するステップと、
メモリの標準ブロックをアトミックに書き込むことにより、各オプコードをオプコードごとの形式でメモリに書き込むステップと、
を含む、コンピュータにより実施される方法。 - 前記メモリを初期化するために、デバッグ・ブレークポイント・オプコードを全てのメモリ位置に書き込むステップ
をさらに含む、請求項1記載のコンピュータにより実施される方法。 - メモリの前記標準ブロックは、32ビット長又は64ビット長である、請求項1記載のコンピュータにより実施される方法。
- 長いオプコードがメモリの2以上の標準ブロックをまたがる場合を識別するステップと、
前記長いオプコードの第2の部分を第2のメモリ・ブロックに書き込むステップと、
前記長いオプコードの第1の部分を第1のメモリ・ブロックに書き込むステップと、
をさらに含む、請求項1記載のコンピュータにより実施される方法。 - メモリの完全な標準ブロックを作成するために、デバッグ・ブレークポイント・オプコードを前記長いオプコードの前記第2の部分に付加するステップ
をさらに含む、請求項4記載のコンピュータにより実施される方法。 - 前のオプコード、及び前記長いオプコードの前記第1の部分を前記第1のメモリ・ブロックに書き込むステップ
をさらに含む、請求項5記載のコンピュータにより実施される方法。 - コンピュータ・システムであって、
プロセッサと、
システム・メモリと、
コンピュータ実行可能命令を記憶した1以上のコンピュータ読み取り可能記憶媒体であって、前記コンピュータ実行可能命令が前記プロセッサにより実行されたとき、前記コンピュータ実行可能命令は、前記プロセッサに、実行可能コードのストリーミングのための方法を実行させ、前記プロセッサは、
複数のオプコードを含む命令を受信する受信ステップであって、各オプコードは、1バイト以上のデータを含む、受信ステップと、
前記命令を別々のオプコードに逆アセンブルするステップと、
各オプコード間の境界を識別するテーブルを作成するステップと、
メモリの標準ブロックをアトミックに書き込むことにより、各オプコードをオプコードごとの形式でメモリに書き込むステップと、
メモリの完全な標準ブロックを作成するために、デバッグ・ブレークポイント・オプコードをオプコードに付加するステップと、
を実行するよう動作する、1以上のコンピュータ読み取り可能記憶媒体と、
を備えた、コンピュータ・システム。 - 前記プロセッサは、
前記メモリを初期化するために、デバッグ・ブレークポイント・オプコードを全てのメモリ位置に書き込むステップ
をさらに実行するよう動作する、請求項7記載のコンピュータ・システム。 - 前記プロセッサは、
長いオプコードがメモリの2以上の標準ブロックをまたがる場合を識別するステップと、
前記長いオプコードの第2の部分を第2のメモリ・ブロックに書き込むステップと、
前記長いオプコードの第1の部分を第1のメモリ・ブロックに書き込むステップと、
をさらに実行するよう動作する、請求項7記載のコンピュータ・システム。 - 実行可能コードデータをストリーミングするための方法をプロセッサに実行させるコンピュータ・プログラムであって、前記方法は、
データ・ページが利用可能でないことを示すフォールトを受信するステップと、
前記データ・ページを含む命令をリクエストするステップと、
リモート・ソースから前記命令を受信する受信ステップであって、前記命令は、複数のオプコードを含み、各オプコードは、1バイト以上のデータを含む、受信ステップと、
前記命令を別々のオプコードに逆アセンブルするステップと、
各オプコード間の境界を識別するテーブルを作成するステップと、
長いオプコードがメモリの2以上の標準ブロックをまたがる場合を識別するステップと、
メモリの標準ブロックをアトミックに書き込むことにより、各オプコードをオプコードごとの形式でメモリに書き込むステップと、
前記長いオプコードの第2の部分を第2のメモリ・ブロックに書き込むステップと、
前記長いオプコードの第1の部分を第1のメモリ・ブロックに書き込むステップと、
を含む、コンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/560,216 US9436474B2 (en) | 2012-07-27 | 2012-07-27 | Lock free streaming of executable code data |
US13/560,216 | 2012-07-27 | ||
PCT/US2013/052153 WO2014018812A1 (en) | 2012-07-27 | 2013-07-26 | Lock free streaming of executable code data |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015524591A JP2015524591A (ja) | 2015-08-24 |
JP2015524591A5 true JP2015524591A5 (ja) | 2016-08-18 |
JP6328632B2 JP6328632B2 (ja) | 2018-05-23 |
Family
ID=48985821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015524457A Active JP6328632B2 (ja) | 2012-07-27 | 2013-07-26 | 実行可能コード・データのロック・フリー・ストリーミング |
Country Status (11)
Country | Link |
---|---|
US (2) | US9436474B2 (ja) |
EP (1) | EP2877918B1 (ja) |
JP (1) | JP6328632B2 (ja) |
KR (1) | KR102042304B1 (ja) |
CN (1) | CN104508626B (ja) |
AU (2) | AU2013295686B2 (ja) |
BR (1) | BR112015001476B1 (ja) |
CA (1) | CA2878558C (ja) |
MX (1) | MX347111B (ja) |
RU (1) | RU2639235C2 (ja) |
WO (1) | WO2014018812A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747189B2 (en) | 2015-11-12 | 2017-08-29 | International Business Machines Corporation | Breakpoint for predicted tuple processing time in a streaming environment |
CN107797821B (zh) * | 2016-09-05 | 2021-10-08 | 上海宝存信息科技有限公司 | 重试读取方法以及使用该方法的装置 |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768575A (en) * | 1989-02-24 | 1998-06-16 | Advanced Micro Devices, Inc. | Semi-Autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for sepculative and out-of-order execution of complex instructions |
JPH0395629A (ja) | 1989-09-08 | 1991-04-22 | Fujitsu Ltd | データ処理装置 |
JPH03216734A (ja) * | 1990-01-22 | 1991-09-24 | Hitachi Micro Comput Eng Ltd | データ処理方法及び中央処理装置 |
JPH05312838A (ja) * | 1992-05-12 | 1993-11-26 | Iwatsu Electric Co Ltd | ロジック・アナライザ |
US6009508A (en) * | 1994-06-21 | 1999-12-28 | Sgs-Thomson Microelectronics Limited | System and method for addressing plurality of data values with a single address in a multi-value store on FIFO basis |
GB9412434D0 (en) * | 1994-06-21 | 1994-08-10 | Inmos Ltd | Computer instruction compression |
WO1996017291A1 (en) * | 1994-12-02 | 1996-06-06 | Intel Corporation | Microprocessor with packing operation of composite operands |
US6212574B1 (en) | 1997-04-04 | 2001-04-03 | Microsoft Corporation | User mode proxy of kernel mode operations in a computer operating system |
US5946484A (en) * | 1997-05-08 | 1999-08-31 | The Source Recovery Company, Llc | Method of recovering source code from object code |
US6061772A (en) * | 1997-06-30 | 2000-05-09 | Sun Microsystems, Inc. | Split write data processing mechanism for memory controllers utilizing inactive periods during write data processing for other transactions |
US6282698B1 (en) * | 1998-02-09 | 2001-08-28 | Lucent Technologies Inc. | Detecting similarities in Java sources from bytecodes |
US6119115A (en) | 1998-03-12 | 2000-09-12 | Microsoft Corporation | Method and computer program product for reducing lock contention in a multiple instruction execution stream processing environment |
EP0955578A1 (en) * | 1998-05-04 | 1999-11-10 | International Business Machines Corporation | Method and device for carrying out a function assigned to an instruction code |
US6077312A (en) * | 1998-05-06 | 2000-06-20 | International Business Machines Corporation | Apparatus, program product and method of debugging utilizing a context sensitive breakpoint |
US6253309B1 (en) | 1998-09-21 | 2001-06-26 | Advanced Micro Devices, Inc. | Forcing regularity into a CISC instruction set by padding instructions |
US6397273B2 (en) | 1998-12-18 | 2002-05-28 | Emc Corporation | System having an enhanced parity mechanism in a data assembler/disassembler for use in a pipeline of a host-storage system interface to global memory |
US6408382B1 (en) * | 1999-10-21 | 2002-06-18 | Bops, Inc. | Methods and apparatus for abbreviated instruction sets adaptable to configurable processor architecture |
US20030023960A1 (en) * | 2001-07-25 | 2003-01-30 | Shoab Khan | Microprocessor instruction format using combination opcodes and destination prefixes |
US7444500B1 (en) | 2000-08-14 | 2008-10-28 | General Software, Inc. | Method for executing a 32-bit flat address program during a system management mode interrupt |
US6708326B1 (en) * | 2000-11-10 | 2004-03-16 | International Business Machines Corporation | Method, system and program product comprising breakpoint handling mechanism for debugging and/or monitoring a computer instruction sequence |
US20040059641A1 (en) * | 2002-06-25 | 2004-03-25 | Lucas Brown | System and method for creating user selected customized digital data compilations |
US7917734B2 (en) * | 2003-06-30 | 2011-03-29 | Intel Corporation | Determining length of instruction with multiple byte escape code based on information from other than opcode byte |
US7581082B2 (en) | 2005-05-13 | 2009-08-25 | Texas Instruments Incorporated | Software source transfer selects instruction word sizes |
US7506206B2 (en) | 2005-06-07 | 2009-03-17 | Atmel Corporation | Mechanism for providing program breakpoints in a microcontroller with flash program memory |
US20070006189A1 (en) * | 2005-06-30 | 2007-01-04 | Intel Corporation | Apparatus, system, and method of detecting modification in a self modifying code |
US7761864B2 (en) * | 2005-08-09 | 2010-07-20 | Intermec Ip Corp. | Method, apparatus and article to load new instructions on processor based devices, for example, automatic data collection devices |
US20070079177A1 (en) * | 2005-09-30 | 2007-04-05 | Charles Spirakis | Process monitoring and diagnosis apparatus, systems, and methods |
US7703088B2 (en) * | 2005-09-30 | 2010-04-20 | Intel Corporation | Compressing “warm” code in a dynamic binary translation environment |
US20070168736A1 (en) * | 2005-12-19 | 2007-07-19 | Ottavi Robert P | Breakpoint groups |
US8584109B2 (en) * | 2006-10-27 | 2013-11-12 | Microsoft Corporation | Virtualization for diversified tamper resistance |
US8037459B2 (en) * | 2007-07-31 | 2011-10-11 | International Business Machines Corporation | Recovery from nested exceptions in an instrumentation routine |
US8185783B2 (en) | 2007-11-22 | 2012-05-22 | Microsoft Corporation | Split user-mode/kernel-mode device driver architecture |
CN102077195A (zh) * | 2008-05-08 | 2011-05-25 | Mips技术公司 | 具有紧凑指令集架构的微处理器 |
US8423961B2 (en) | 2008-06-06 | 2013-04-16 | Microsoft Corporation | Simulating operations through out-of-process execution |
US8103912B2 (en) * | 2008-09-07 | 2012-01-24 | EADS North America, Inc. | Sequencer and test system including the sequencer |
KR101581001B1 (ko) * | 2009-03-30 | 2015-12-30 | 삼성전자주식회사 | 프로그램의 동적 분석 방법 및 그 장치 |
US9274796B2 (en) * | 2009-05-11 | 2016-03-01 | Arm Finance Overseas Limited | Variable register and immediate field encoding in an instruction set architecture |
CN101853148B (zh) | 2009-05-19 | 2014-04-23 | 威盛电子股份有限公司 | 适用于微处理器的装置及方法 |
US20120079459A1 (en) * | 2010-09-29 | 2012-03-29 | International Business Machines Corporation | Tracing multiple threads via breakpoints |
US9176738B2 (en) * | 2011-01-12 | 2015-11-03 | Advanced Micro Devices, Inc. | Method and apparatus for fast decoding and enhancing execution speed of an instruction |
US9053233B2 (en) * | 2011-08-15 | 2015-06-09 | Freescale Semiconductor, Inc. | Method and device for controlling debug event resources |
GB2501299A (en) * | 2012-04-19 | 2013-10-23 | Ibm | Analysing computer program instructions to determine if an instruction can be replaced with a trap or break point. |
US8990627B2 (en) * | 2012-05-23 | 2015-03-24 | Red Hat, Inc. | Leveraging page fault and page reclaim capabilities in debugging |
US9342284B2 (en) * | 2013-09-27 | 2016-05-17 | Intel Corporation | Optimization of instructions to reduce memory access violations |
US9619346B2 (en) * | 2013-10-31 | 2017-04-11 | Assured Information Security, Inc. | Virtual machine introspection facilities |
-
2012
- 2012-07-27 US US13/560,216 patent/US9436474B2/en active Active
-
2013
- 2013-07-26 AU AU2013295686A patent/AU2013295686B2/en active Active
- 2013-07-26 BR BR112015001476-3A patent/BR112015001476B1/pt active IP Right Grant
- 2013-07-26 CN CN201380039991.8A patent/CN104508626B/zh active Active
- 2013-07-26 WO PCT/US2013/052153 patent/WO2014018812A1/en active Application Filing
- 2013-07-26 MX MX2015001127A patent/MX347111B/es active IP Right Grant
- 2013-07-26 CA CA2878558A patent/CA2878558C/en active Active
- 2013-07-26 RU RU2015102341A patent/RU2639235C2/ru active
- 2013-07-26 KR KR1020157002060A patent/KR102042304B1/ko active IP Right Grant
- 2013-07-26 EP EP13748402.8A patent/EP2877918B1/en active Active
- 2013-07-26 JP JP2015524457A patent/JP6328632B2/ja active Active
-
2016
- 2016-09-06 US US15/257,794 patent/US9841976B2/en active Active
-
2018
- 2018-07-13 AU AU2018205196A patent/AU2018205196B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FI4099168T3 (fi) | Laskentaoptimoinnit alhaisen tarkkuuden koneoppimistoimintoja varten | |
JP2014525623A5 (ja) | ||
BR112015030122A2 (pt) | aparelho e método para acelerar operações de compressão e descompressão | |
WO2015015225A3 (en) | Software development tool | |
WO2016094840A3 (en) | System, method & computer readable medium for software protection via composable process-level virtual machines | |
GB201211274D0 (en) | Method and system method for pipelining out-of-order instructions | |
EP2660715A3 (en) | Optimizing register initialization operations | |
GB2508533A (en) | Instruction and logic to provide vector scatter-op and gather-op functionality | |
JP2014502396A5 (ja) | ||
JP2015503799A5 (ja) | ||
BR112015030158A2 (pt) | preempção de armazenamento temporário de comando intermediário para cargas de trabalho gráficas | |
WO2014139466A3 (en) | Data cache system and method | |
BR112017011104A2 (pt) | sistemas, aparelhos e métodos para execução de especulação de dados | |
WO2015020900A3 (en) | Method and device for error correcting code (ecc) error handling | |
WO2017116265A8 (en) | Hardware apparatus and methods for converting encoding formats | |
JP2017538996A5 (ja) | ||
JP2018523235A5 (ja) | ||
JP2015133134A5 (ja) | ||
JP2016534430A5 (ja) | ||
JP2018502425A5 (ja) | ||
EP2889755A3 (en) | Systems, apparatuses, and methods for expand and compress | |
JP2015524591A5 (ja) | ||
BR112016023745A2 (pt) | método e aparelho para reduzir a largura de banda e energia em uma memória temporária utilizando leitura com invalidação | |
BR112014028947A2 (pt) | método de configuração de um processador, dispositivo para configuração de um processador, processador, e produto de programa de computador | |
JP2014030977A5 (ja) |