evelio.blog();

Posts Tagged ‘disquete

No es un hombre gordo o sí?

….

FatMan

Es el proyecto de Arquitectura de Computadores para entender y trabajar -a nivel bajo- con el sistema de archivos FAT12 (fácilito 😉 ) ya que la fecha de entrega es mañana, libero el código fuente ya sabrás tú para que…

para más información mira la página FatMan

Actualización

Me fue muy bien con el gordito 😛

Un 5 me va muy bien 😉

Aunque me desperté a las 8:30 AM y la sustentación era a las 8:00 AM!!! WTF!!

Llegue a la sala a las 9:00 AM y afortunadamente Amezquita me dejo presentarlo 🙂

La sustentación simplemente fue implementar que el programa dijera en que

Sector, Pista y Cara estaba determinado archivo… pues como el archivo se divide en clusters lo implemente en el Reader.java para cuando leia los datos del cluster como tal 😉

muy fácil el código:


public byte[] readDataCluster(int dataSectionOffset, int cluster, int clusterSize) throws IOException
{
int byteoff=dataSectionOffset+((cluster-Constants.UNUSED_FAT_ENTRIES)*clusterSize);

Manager.getInstance().log(“El offset dentro del disquete es de “+Integer.toString(byteoff)+” bytes”);
int bps=Manager.getInstance().getFat12().getBootSector().getNumberOfBytesPerSector();
int spt=Manager.getInstance().getFat12().getBootSector().getNumberOfSectorsPerTrack();
int sector = (int)byteoff/bps;
int track = (int)sector/spt;
int head = (track%2==0) ? 0 : 1;
Manager.getInstance().log(“El cluster esta en la Cabeza “+head);
Manager.getInstance().log(“El cluster esta en la Pista “+track);
Manager.getInstance().log(“El cluster esta en el Sector “+sector);

raf.seek(byteoff);

byte[] dataCluster=new byte[clusterSize];
raf.read(dataCluster);

return dataCluster;
}
en negrita estan los cambios frente al que libere ayer 😉

Ahora a ver el estado del teclado en assembler y portarlo a Java mediante JNI 🙂

Anuncios
Etiquetas: , , ,

Trabajando en lo de arquitectura noté que todos (son 3 xD) los disquetes estaban dañados, y no tenia un imán a mano :S

que hago? sera que compro otro disquete??… No!!!

crearé uno… este esta loco??!!… no simplemente creemos una imagen y nos ahorramos la ida a la papelería (2 cuadras xD) y el costo del disquete (si todavía los venden :P)…

primero crearemos la imagen vacía:
~$ dd if=/dev/zero of=floppy.img bs=512 count=2880

preparamos la imagen para ser montada como si fuera un dispositivo.
~$ sudo losetup /dev/loop0 floppy.img

le formateamos como un disquete:

Para FAT12:

~$ sudo mkdosfs /dev/loop0

Para VFAT (soporte LFN en FAT12):

~$ sudo mkfs.vfat /dev/loop0

y la montamos para escribirle como una unidad cualquiera n_n:
~$ mkdir /media/midisquetera
~$ sudo mount -t vfat /dev/loop0 /media/midisquetera

y listo ya le tenemos trabajando 🙂

Vía El Demonio Negro

Actualizado:

viendo las estadísticas del blog me he encontrado que llegan a este articulo con preguntas a Google como las siguientes

generar .ima de disquete
crear una imagen de disquete en linux

es tan fácil como hacer un dd:

~$ dd if=/dev/fd0 of=floppy.img bs=512 count=2880

donde /dev/fd0 es la unidad de disquete  y floppy.img es el nombre de la imagen del disquete le podemos colocar midisqueticoquerido.ima ó copiadeseguidaddemidisqueticoquerido.imagen o lo que queramos 😛

respecto a las otras:

costos de disquetes 2008

mmm si se refiere al precio me imagino que no han bajado deben estar por los 1000 COL$ aunque toca mirar la bolsa haber como van las acciones de los disquetes 😛

que son los disquete

WTF! nominada a frase del día!!! 😀

aunque siendo colaborativo aquí esta la respuesta

Por aquel trabajo de Arquitectura, me puse a buscar las diferentes formas de hacerlo y encontré dos específicas, pero no en Java 😦

en Assembler I

en Assembler II

en Assembler con Pascal


en C++ I

en C++ II

Todas buenas soluciones particularmente la C++ I…

pero…. Yo lo quiero hacer en Java n_n

si bien, no he conseguido una forma tan directa como las anteriores, y Jnode no le he revisado bien… tengo la opción de hacer la conversión de esos códigos a Java y usar cosas que no pueda portar con JNI, muy seguramente habrá una forma menos engorrosa en Java 😉

Recién ayer para Arquitectura de Computadores, algunos hacíamos un repaso de Sistemas Operativos (quienes la vimos con él) del dichoso debug, leer la pista cero de un disquete (con dd en Linux n_n)… etc…

Al final de clase Amezquita dejó la labor de hacer un “programita” que leyera los archivos desde un disquete cualquiera, asignamos la fecha de entrega para el 14 de marzo… pff pan comido…

Si como no, pero la cosa es que debe leer la dichosa pista cero, luego la estruendosa FAT (File Allocation Table) y de ella los archivos y directorios…

Luego como nos da un referencia al primer “pedazo” obtenemos los demás pedazos del archivo y lo armamos…

Muy Simple 🙂 yo lo quiero hacer en Java y además bien visual 😀

Actualizado

En unos días subiré el código fuente con la explicación de lo mismo en la página FatMan (aún no publicada)

Ya está disponible FatMan 😉

Etiquetas: , ,

Me fui

para

http://evelio.info/


te espero allá :)

Software Libre Rulez!

a

noviembre 2017
L M X J V S D
« Dic    
 12345
6789101112
13141516171819
20212223242526
27282930