Hola José Luis:<div><br></div><div>Me comentas que la copia mediante dd tarda 6 horas. Esto me hace pensar que o la máquina es muy lenta o estás utilizando dd de manera que el bloque es muy pequeño. Intenta aumentar el tamaño del bloque (no leas carácter a carácter) y observa el tiempo empleado. </div>
<div><br></div><div>Hace mucho que no utilizo cartuchos de cinta pero no recuerdo haber tenido procesos tan largos.</div><div><br></div><div>En cualquier caso, si has escrito el proceso que actúa sobre el fichero de disco, ¿no puedes utilizar como fichero de entrada la unidad de cinta, es decir el <b>/dev/rmt/bmt1 </b>o similar?</div>
<div><br></div><div>Saludos</div><div>José Luis Torre</div><div><br></div><div><br><div class="gmail_quote">El 20 de octubre de 2012 18:14, José Luis <span dir="ltr"><<a href="mailto:anonymous.mx@gmail.com" target="_blank">anonymous.mx@gmail.com</a>></span> escribió:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Hola nuevamente José Luis,</div><div> </div><div>Fui muy escueto en mi explicación.</div><div> </div><div>La información que leo es en formato SEGY en un archivo consta de:</div>
<div> </div><div>1.- 3200 bytes que son letras en code EBDIC  </div>
<div> </div><div>Este dato lo grabo en un archivo texto de salida.</div><div> </div><div>2.- 400 bytes que corresponde al Binary header</div><div> </div><div>Este encabezado me indica cuantos byte es por cada muestra y el numero de muestras que debo leer.</div>

<div> </div><div>Algunos dato de este encabezado lo grabo adicionalmente en el archivo de salida.</div><div> </div><div>3.- A partir del byte 3601 tengo 240 bytes que corresponden al trace header, son valores enteros de 2 o 4 bytes. adicionalmente aqui me dice lo largo de la traza despues de los 240 bytes que estoy leyendo (datos que no me interesan leer).</div>

<div> </div><div>En estos 240 bytes estan los datos de los que quiero obtener su minimo y maximo y lo grabo adicionalmente en el archivo de salida por ejemplo:</div><div>Las coordenadas X y Y de la fuente</div><div>Las coordenadas X y Y del receptor</div>

<div>Las coordenadas X y Y del CMP</div><div>El valor del INLINE</div><div>El valor del CROSSLINE</div><div>etc..etc..etc..</div><div> </div><div>En memoria tengo una matriz de 3 columnas, la primera tiene el nombre de la palabra, la segunda corresponde al valor minimo y la tercera corresponde al valor maximo, en donde voy haciendo los comparativos.</div>

<div> </div><div>Me brinco lo largo de la traza que corresponde por ejemplo a 1450 muestras de 4 bytes, me brinco 5800 bytes</div><div> </div><div>Despues vuelvo a leer 240 bytes que corresponden al trace header de la siguiente traza y asi sucesivamente hasta el final del archivo.</div>

<div> </div><div>Al final imprimo mi datos con sus minimos y maximos.</div><div> </div><div>Eso es lo que hago con el archivo en disco duro.</div><div> </div><div>Sobre el comentario de borrar el archivo me refiero a:</div>

<div>Primero bajo de la cartuchera a disco el archivo segy que voy a leer con el comando dd o tapecopy. (800 gb 6 horas)</div><div>Despues leo el archivo segy y obtengo mis maximos y minimos necesarios.  (800gb mas o menos 1 hora)</div>

<div>Al final borro el archivo que baje a disco porque ya no lo necesito, solo lo queria leer.</div><div> </div><div>Me gustaria que en lugar de usar 7 horas para descargar el dato de la cartuchera y leerlo en disco duro, pudiera reducir el tiempo aunque sea a unas 3 horas pero leyendo la cinta en el "aire" y solamente grabar en un archivo los datos que requiero.</div>

<div><br>Espero no haberme hecho bolas con la explicación.</div><div> </div><div>Saludos cordiales desde Villahermosa, Tabasco, México.</div><div>Jose Luis</div><div class="HOEnZb"><div class="h5"><div><br> </div><div class="gmail_quote">
2012/10/20 José Luis Torre <span dir="ltr"><<a href="mailto:joseluistorrehernandez@gmail.com" target="_blank">joseluistorrehernandez@gmail.com</a>></span><br>
<blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">Hola José Luis, paso a contestar entre líneas:<div><br><br>

<div class="gmail_quote">El 20 de octubre de 2012 00:34, José Luis <span dir="ltr"><<a href="mailto:anonymous.mx@gmail.com" target="_blank">anonymous.mx@gmail.com</a>></span> escribió:<div><br>
<blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote"><div>Holas a todos,</div><div> </div><div>Antes que nada reciban un cordial saludo desde Villahermosa, Tabasco.</div>

<div>
 </div><div>Podrían orientarme como podria leer desde una cartuchera la información grabada en formato un formato que consta de la siguiente manera sin que se utilice el disco duro.</div>
<div> </div><div>El asunto es el siquiente:</div><div> </div><div>Cuando leo una cinta 3592 con un archivo de mas de 800 Gigabytes, es necesario bajarla a disco.</div></blockquote><div><br></div></div><div>Normalmente no es necesario leer toda la cinta en disco, puedes leer los elementos que necesitas de forma secuencial; por ejemplo de 10 enteros de una vez.</div>


<div>Al ser el fichero tan grande, lo normal es que hagas un tratamiento secuencial y almacenes los resultados en otro fichero.</div><div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">


<div> </div><div>Para bajar el dato utilizo el comando dd en linux pero tarda mas o menos unos 130 GB por hora al grabar en disco.</div></blockquote><div><br></div></div><div>En vez de utilizar el dd que lee el fichero entero, debes utilizar un programa para leer los datos que te interesan de forma secuencial.</div>

<div>
<div> </div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">
<div> </div><div>Leo el dato del disco en mas o menos 1 hora, obtengo los maximos y minimos que deseo obtener y borro el dato.</div></blockquote><div><br></div></div><div>Para la obtención de los máximos y mínimos puedes utilizar una lectura secuencial. Pero ¿ qué dato tienes que borrar ? ¿En el archivo original? </div>

<div>
<blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote"><div> </div><div>¿Existe alguna forma en que al leer un bloque con determinado tamaño en memoria yo analice el dato, y pase al siguiente bloque y así sucesivamente hasta llegar al final de la cinta sin que utilice el disco duro?</div>


</blockquote><div><br></div></div><div>Existen varias formas de leer pero depende de cómo esté almacenada la información en la cinta (en modo texto o binario)</div><div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">



<div> </div><div>No está demas comentar que para ello lo voy a desarrollar en LINUX con C o C++</div></blockquote><div><br></div></div><div>Para esto no necesitas C++ es suficiente hacerlo en C.</div><div><div>
 </div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">
<div> </div><div>Gracias por su atención y disculpen mi atrevimiento.</div><div> </div><div> </div><div>Reciban un cordial saludo</div><span><font color="#888888">
<div> </div><div>José Luis</div><div> </div></font></span></blockquote><div><br></div></div><div>Saludos</div><div>José Luis Torre </div><div><a href="http://www.ehu.es" target="_blank">www.ehu.es</a></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">


<span><font color="#888888">
</font></span><br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net" target="_blank">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><span><font color="#888888"><br></font></span></blockquote>
</div><span><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div>José Luis Torre</div>

<div><a href="http://ww.ehu.es/" target="_blank">ww.ehu.es</a></div>
<div> </div><br>
</font></span></div>
<br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net" target="_blank">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br>
</div></div><br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div>José Luis Torre</div>

<div><a href="http://ww.ehu.es/" target="_blank">ww.ehu.es</a></div>
<div> </div><br>
</div>