<html lang="en">
<head>
<title>File-I/O Examples - Debugging with GDB</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Debugging with GDB">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="File_002dI_002fO-Remote-Protocol-Extension.html#File_002dI_002fO-Remote-Protocol-Extension" title="File-I/O Remote Protocol Extension">
<link rel="prev" href="Constants.html#Constants" title="Constants">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software'' and ``Free Software Needs
Free Documentation'', with the Front-Cover Texts being ``A GNU Manual,''
and with the Back-Cover Texts as in (a) below.

(a) The FSF's Back-Cover Text is: ``You are free to copy and modify
this GNU Manual.  Buying copies from GNU Press supports the FSF in
developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="File-I%2fO-Examples"></a>
<a name="File_002dI_002fO-Examples"></a>
<p>
Previous:&nbsp;<a rel="previous" accesskey="p" href="Constants.html#Constants">Constants</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="File_002dI_002fO-Remote-Protocol-Extension.html#File_002dI_002fO-Remote-Protocol-Extension">File-I/O Remote Protocol Extension</a>
<hr>
</div>

<h4 class="subsection">D.14.10 File-I/O Examples</h4>

<p><a name="index-file_002di_002fo-examples-2530"></a>
Example sequence of a write call, file descriptor 3, buffer is at target
address 0x1234, 6 bytes should be written:

<pre class="smallexample">     &lt;- <code>Fwrite,3,1234,6</code>
     <em>request memory read from target</em>
     -&gt; <code>m1234,6</code>
     &lt;- XXXXXX
     <em>return "6 bytes written"</em>
     -&gt; <code>F6</code>
</pre>
   <p>Example sequence of a read call, file descriptor 3, buffer is at target
address 0x1234, 6 bytes should be read:

<pre class="smallexample">     &lt;- <code>Fread,3,1234,6</code>
     <em>request memory write to target</em>
     -&gt; <code>X1234,6:XXXXXX</code>
     <em>return "6 bytes read"</em>
     -&gt; <code>F6</code>
</pre>
   <p>Example sequence of a read call, call fails on the host due to invalid
file descriptor (<code>EBADF</code>):

<pre class="smallexample">     &lt;- <code>Fread,3,1234,6</code>
     -&gt; <code>F-1,9</code>
</pre>
   <p>Example sequence of a read call, user presses <kbd>Ctrl-c</kbd> before syscall on
host is called:

<pre class="smallexample">     &lt;- <code>Fread,3,1234,6</code>
     -&gt; <code>F-1,4,C</code>
     &lt;- <code>T02</code>
</pre>
   <p>Example sequence of a read call, user presses <kbd>Ctrl-c</kbd> after syscall on
host is called:

<pre class="smallexample">     &lt;- <code>Fread,3,1234,6</code>
     -&gt; <code>X1234,6:XXXXXX</code>
     &lt;- <code>T02</code>
</pre>
   </body></html>

