Ver la versión completa : Sobre el apagado de la consola
hola compis este es mi primer post ya que gracias a los tutoriales y demas faqs de esta web he conseguido hacerme con el manejo de la gp2x sin problemas meterle emuladores,utilidades ,juegos y hacerlos correr a la perfeccion. El caso es que soy un linuxero y estoy acostumbrqado a apagar la consola mediante un comando que apague el ordenador y viendo que la gp2x esta basado en linux(por eso la compre) siento horror cuando para apagar la consola lo tengo que hacer directamente desde el boton del power. Decidme, la consola se apaga de otra forma? mediante alguna opcion o script? o directamente del boton?. Yo la pongo en el menu y le doy al power off pero algo me dice que no es bueno para el sistema.
Supongo que no se podrá ya que el boton power de la GP2X es posicional, no como el de los ordenadores que simplemente envia un impulso.
Pasa tambien con muchos aparatos electricos, como televisiones que tienen dos formas de apagado, una el boton de toda la vida y otro el Standby, que se queda la tipica lucecita roja encendida, es decir que sigue consumiendo energia aunque muy poca, es decir no está apagada del todo.
En la gp2x este sería el único modo de apagar la consola por software algo tipo el standby.
Un saludo.
chemaris
07/08/2006, 22:12
no se si se puede hacer lo que dices, pero por apagarla del boton no pasa nada, a no ser que seas un bestia y lo rompas
no todos los ordenadores han sido con pulsadores, antes estavan las fuentes AT k llevavan boton en vez de pulsador y para cerrar el pc te tenias k esperar hasya k saliese "Ya puede cerrar el ekipo" (win98) :D
Aunk para k se estropee algo en la gp2x tendria k estar escriviendo en la nand, o si estas escriviendo en la sd, le metes un format y otra vez a rular.
Si cierras desde el menu, creo k no hay ningun tipo de peligro ;)
A mi tambien me llama mucho la atencion que no pase nada apagando la consola asi, por las bravas, sabiendo lo picajoso que es linux cuando lo apagas de golpe sin seguir el ritual de matar todos los demonios y desmontar el sistema de archivos, pero la verdad es que seria la coña marinera que la consola se quejase al encenderla de nuevo como el jodido topo del animal crossing, xD
¿ Os imaginais un tux neurotico dando la brasa cada vez que enciendes la consola ?
Saludos.
A mi tambien me llama mucho la atencion que no pase nada apagando la consola asi, por las bravas, sabiendo lo picajoso que es linux cuando lo apagas de golpe sin seguir el ritual de matar todos los demonios y desmontar el sistema de archivos, pero la verdad es que seria la coña marinera que la consola se quejase al encenderla de nuevo como el jodido topo del animal crossing, xD
¿ Os imaginais un tux neurotico dando la brasa cada vez que enciendes la consola ?
Saludos.Yo prefiero no imaginarlo xDDD
Supongo que el que la GP2X se pueda apagar tan tranquilamente se debe esencialmente al sistema de archivos que se usa en la NAND para almacenar todo el sistema basado en kernel Linux que la GP2X lleva, en las primeras versiones del firmware era el sistema de archivos JFFS2 (http://es.wikipedia.org/wiki/JFFS2) y ahora, desde el firmware 2.0 usa el sistema de archivos YAFFS (http://es.wikipedia.org/wiki/YAFFS).
Estos sistemas de archivos fueron creados para usarse en dispositivos y sistemas embebidos (como moviles, consolas portatiles o PMPs) para usarse en memorias NAND Flash, así que es posible que se diseñaran teniendo en cuenta el que se pueda apagar "a pelo" el dispositivo o por falta de corriente (como cuando se acaban las pilas/baterías) sin perdida o corrupción de la información contenida en el sistema de archivos, a parte de esto, supongo que serán algo distintos de los sistemas de archivos "clásicos" en los sistemas basados en Linux como son ext2 o ext3, basados en i-nodes (nodos de información, para localizar mediante apuntadores cada dato almacenado en el sistema de archivos de una partición concreta), en que es importante el montaje y desmontaje de los dispositivos/particiones para que no haya incoherencias en el sistema de archivos al volver a montarlo (aunque los sistemas modernos con journaling como ext3, reiserfs o xfs esto es mucho más improbable).
Por cierto, para que no se diga que Linux es el único que necesita verificar los sistemas de archivos al iniciar si se desmonta mal, esto de la verificación de la integridad del sistema de archivos no es exclusiva de Linux y de sistemas como ext2, ext3 o reiserfs, si existía en MS-DOS ya el scandisk y el chkdsk, cuando usaba FAT12/FAT16 y en Windows 95/98/ME con VFAT/FAT32, sería por algo, aunque en MS-DOS el ordenador se apagara "a pelo" como por ejemplo, cuando se apagaba mal el sistema o había un corte de la corriente eléctrica y aparecían ciertos fallos en "C:" (despues de todo, los cambios a priori están en RAM y luego se escriben en disco, pero si no da tiempo de escribir los cambios por un corte de corriente inesperado...) :p
The_Punisher
08/08/2006, 05:20
Ahora me pica la curiosidad, ¿porque sabes tantas cosas :S?
Ahora me pica la curiosidad, ¿porque sabes tantas cosas :S?Pura y simple experiencia, unida a lo que aprendí de mis estudios (aunque me va más ser un autodidacta) y a la curiosidad y gusto por la informática desde hace bastantes años, además uso Linux desde el 96 (antes de que se pusiera de "moda" xD) y me crie con PCs que no tenían sistemas operativos con "ventanas? xDD
No es algo que solamente yo sepa, cualquiera que haya tenido un PC o cualquier otro ordenador personal y lo haya usado para algo más que jugar (muchos de este foro al hablar demuestran que saben de lo que hablan, así que no debemos ser pocos) durante unos años (sobre todo si ha usado mucho PC-DOS en un PC IBM o MS-DOS) sabe lo mismo o más que yo, es solo eso, algo de experiencia en esto :)
The_Punisher
08/08/2006, 05:38
Pero en serio es que cunado hablas pareces una enciclopedia ;9 así da gusto muchas gracias :D siempre quise decirte algo jaja :brindis:
Pero en serio es que cunado hablas pareces una enciclopedia ;9 así da gusto muchas gracias :D siempre quise decirte algo jaja :brindis:Hablo así porque no doy casi nada por supuesto, me gusta ser lo más explicativo posible, es una actitud de reveldía fruto de cuando en su dia no tenía ni pajolera idea de casi nada y quería aprender todo cuanto pudiera, como en mi etapa de cuando empezé a usar Linux, los tiempos del "RTFM" (Read The Fucking Manual) que te soltaban los que "supuestamente" sabian... :rolleyes:
Me fastidia bastante que al preguntar o a la hora de tener que aprender algo (sobre todo si se trata de tus estudios) te den explicaciones cortas o "memorizadas de carrerilla", esas que te sueltan sin razonar o que no te permiten cuestionar (seguro que más de uno conoce a muchos profesores que hacen esto xD), presuponiendo conocimientos que no saben si tienes o no, así que yo prefiero hablar de la forma más llana y simple que pueda pero sin quedarme corto en las explicaciones, así si alguien me escucha o me lee, puede que algo de lo que diga le ayude a aclarar alguna duda. Solo soy consecuente conmigo mismo, ya que es que lo que me gustaría a mi que los demás hiciesen, así a mi también me resultaría más facil aprender cosas nuevas :)
P.D: Aunque hoy dia no te sueltan tantos RTFM, si te envian a la Wikipedia o al Google (se ve que ni John Doe sabía tanto con Google xD), la misma actitud, diferentes formas o como diria Morfeo "hay cosas que cambian... hay otras que no" :rolleyes:
Y nadie se ha parado a pensar que la gp2x es un sistema con un hardware fijo, que no necesita escribir en la nand mas que los cambios que hagas en las opciones del mismo menu de la consola, porque en teoria no se deberia tocar nada mas.
Asi que apagar la consola "a saco" no tiene por que perjudicarla en nada, porque lo que hacemos, lo hacemos en la SD, y la consola cada vez que arranca, lo hace como la primera vez, porque simplemente, la nand no cambia, es como si fuera un sistema con rom, pero nosotros tenemos una memoria flash.
Y no es solo el caso de la gp2x, hay muchas mas cosas que usan linux y funcionan en este caso de la misma manera.
Simplemente, no es que pase o deje de pasar, es que se la sopla, ni se entera.
EDIT: Por cierto, lo del sistema de archivos que se comentaba antes, tambien forma parte del porque se puede apagar la consola sin miedo, lo mas que se escribe son archivos que nada tienen que ver con el sistema, asi que no le afecta, la consola vuelve a arrancar "de nuevo" cada vez.
< - >
Me ha salido un tipico post de las 3 y media de la noche, con sueño y tal, pero paso de corregirlo y hacerlo legible, se entiende la idea que quiero explicar.
Y nadie se ha parado a pensar que la gp2x es un sistema con un hardware fijo, que no necesita escribir en la nand mas que los cambios que hagas en las opciones del mismo menu de la consola, porque en teoria no se deberia tocar nada mas.
Asi que apagar la consola "a saco" no tiene por que perjudicarla en nada, porque lo que hacemos, lo hacemos en la SD, y la consola cada vez que arranca, lo hace como la primera vez, porque simplemente, la nand no cambia, es como si fuera un sistema con rom, pero nosotros tenemos una memoria flash.
Y no es solo el caso de la gp2x, hay muchas mas cosas que usan linux y funcionan en este caso de la misma manera.
Simplemente, no es que pase o deje de pasar, es que se la sopla, ni se entera.
Pues si, estoy de acuerdo, esa tiene que ser otra razón, practicamente no hay cambios en el sistema de archivos mientras la GP2X está encendida, cuando se escribe algo, normalmente es en la SD, incluso la NAND está dividida en dos puntos de montaje, uno para la raiz, el sistema en si y otro para los datos de usuario (en /mnt/nand) que es a la que se puede acceder desde el menu de GP2X (a la del sistema solo desde telnet o samba por ejemplo), así que practicamente no se escribe nada en la NAND.
EDIT: Por cierto, lo del sistema de archivos que se comentaba antes, tambien forma parte del porque se puede apagar la consola sin miedo, lo mas que se escribe son archivos que nada tienen que ver con el sistema, asi que no le afecta, la consola vuelve a arrancar "de nuevo" cada vez.De hecho según creo todos los cambios en Settings que se hagan desde el menu de GP2X se guardan en un archivo INI, así que es de lo poco que se toca en la zona del sistema en la NAND, lo que unido al sistema de archivos especializado para este tipo de dispositivos embebidos debe hacer que la perdida de datos sea bastante dificil, a menos que algunas celdas de la memoria NAND Flash en si estén defectuosas.
Parece que ya han respondido a por qué se puede apagar de un botonazo sin estropear la consola.
Si a alguien le preocupa que se pueda dañar su tarjeta, pues podria escribirse un script sencillo como por ejemplo.
apagar.gpu
#!/bin/sh
umount /mnt/sd //desmonta la tarjeta sd
poweroff //apaga ls gp2x, aun asi, hay que mover el interruptor
Tamien se podria añadir una linea para guardar la fecha y hora, y así al encender de nuevo, se recuperaria esa hora (en el caso de que añadieras una linea a los scripts de arranque para que la recupere. De esta manera cada vez que la enciendes no pensaria que estas a 1 de enero de 1970
< - >
De hecho según creo todos los cambios en Settings que se hagan desde el menu de GP2X se guardan en un archivo INI, así que es de lo poco que se toca en la zona del sistema en la NAND, lo que unido al sistema de archivos especializado para este tipo de dispositivos embebidos debe hacer que la perdida de datos sea bastante dificil, a menos que algunas celdas de la memoria NAND Flash en si estén defectuosas.
No he visto nada del menu SYSTEM que no esté ne el .ini
Y por favor, procurad no decir sistemas embebidos, se dice empotrados (que es lo que quiere hacer mi madre con mi GP2X, a la que llama maquina dabólica). Embebidos viene del ingles embebbed. Es como lo de decir encriptar, del ingles encrypt, cuando lo que queremos decir es cifrar, a menos que queramos meterlo en una cripta, en cuyo caso lo hebremos dicho bien.
Y por favor, procurad no decir sistemas embebidos, se dice empotrados (que es lo que quiere hacer mi madre con mi GP2X, a la que llama maquina dabólica). Embebidos viene del ingles embebbed. Es como lo de decir encriptar, del ingles encrypt, cuando lo que queremos decir es cifrar, a menos que queramos meterlo en una cripta, en cuyo caso lo hebremos dicho bien.No se cual es el termino más correcto (aunque en lo de criptografía te doy la razon por completo) pero entre embebido y empotrado, me quedo con el más parecido a su traducción original de "embedded system", sistema embebido (http://buscon.rae.es/draeI/SrvltGUIBusUsual?TIPO_HTML=2&LEMA=embeber) ("contener, encerrar dentro de sí a otra", en este caso en un sistema integrado, me resulta más facil, como el código PHP en HTML xD), por algún motivo me suena fatal eso de empotrado (http://buscon.rae.es/draeI/SrvltGUIBusUsual?TIPO_HTML=2&LEMA=empotrar) parece insinuar que es un sistema "incrustado" a lo bestia y se me hace dificil de asimilar :D
Y estando de acuerdo con uncanny en lo de embebido, me pongo en el caso de encriptar, puesto que la encriptacion se refiere a la criptografia (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=criptograf%C3%ADa&TIPO_HTML=2&FORMATO=ampliado), por la cual convertimos digamos por ejemplo una cadena de caracteres inteligibles en un lenguaje criptico (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=cr%C3%ADptico&TIPO_HTML=2&FORMATO=ampliado) que no se puede entender sin antes descifrarlo, esto es, desencriptarlo.
EDIT: en todo caso, lo que no parece tener sentido es lo de cifrar, pensadlo un poco.
Y nadie se ha parado a pensar que la gp2x es un sistema con un hardware fijo, que no necesita escribir en la nand mas que los cambios que hagas en las opciones del mismo menu de la consola, porque en teoria no se deberia tocar nada mas.
Asi que apagar la consola "a saco" no tiene por que perjudicarla en nada, porque lo que hacemos, lo hacemos en la SD, y la consola cada vez que arranca, lo hace como la primera vez, porque simplemente, la nand no cambia, es como si fuera un sistema con rom, pero nosotros tenemos una memoria flash.
Y no es solo el caso de la gp2x, hay muchas mas cosas que usan linux y funcionan en este caso de la misma manera.
Simplemente, no es que pase o deje de pasar, es que se la sopla, ni se entera.
Tienes razón, pero para mí, tan importante como el sistema son mis datos. No me gustaría quedarme con archivos corruptos en la SD (que además lleva FAT :rolleyes:) por un mal apagado de la consola. Ya me pasó una vez con una partida guardada del Nethack.
Puck2099
08/08/2006, 20:58
Y estando de acuerdo con uncanny en lo de embebido, me pongo en el caso de encriptar, puesto que la encriptacion se refiere a la criptografia (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=criptograf%C3%ADa&TIPO_HTML=2&FORMATO=ampliado), por la cual convertimos digamos por ejemplo una cadena de caracteres inteligibles en un lenguaje criptico (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=cr%C3%ADptico&TIPO_HTML=2&FORMATO=ampliado) que no se puede entender sin antes descifrarlo, esto es, desencriptarlo.
EDIT: en todo caso, lo que no parece tener sentido es lo de cifrar, pensadlo un poco.
No, K-teto, dardo tiene razón, encriptar es una deformación del lenguaje, pero no es correcto emplear ese término sino cifrar.
Mi profesor de criptografía ya lo comentó una vez en clase y además no viene ese término en el diccionario.
Si te fijas, siempre se emplean los términos "algoritmos de cifrado", "códigos de cifrado" y no de "encriptado".
Saludos
Lo que es la palabra encriptar en si, no existe, pero es que se te ocurre otra mejor?
Lo que es la palabra encriptar en si, no existe, pero es que se te ocurre otra mejor?Es lo que tiene estas palabrejas K-teto, sabemos que "cripto" es oculto, "grafia" es escribir, uno si puede decir que un mensaje puede ser algo críptico (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=cr%C3%ADptico&TIPO_HTML=2&FORMATO=ampliado) cuando es dificil o imposible de entender y lo dice correctamente, pero el verbo encriptar como acción de ocultar a parte de que no exista en el diccionario de la RAE suena raro (cualquier podría decir que tiene que ver con "cripta (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=cripta&TIPO_HTML=2&FORMATO=ampliado)").
La alternativa, de hecho la correcta, como dice Puck es el verbo "cifrar (http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=cifrar&TIPO_HTML=2&FORMATO=ampliado)", porque al menos ese verbo si existe, pero vamos, comprendo que opines así, nos hemos acostumbrado a leerlo y oirlo tanto que damos por valido lo de encriptar o desencriptar, aunque este último no me negarás que si que suena mal xD, en Barrapunto por ejemplo se ha discutido bastante con opiniones para todos los gustos...
Sinceramente, creo que la aceptacion de esa palabra por la RAE es necesaria, lo digo en serio XD
jorgexander
28/08/2006, 12:22
Y ya para no darle vueltas al asunto: ¿entonces se puede apagar sin preocupaciones con el botonazo ó no?, y en todo caso, ¿cuando no se deberia de apagar asi?
Y ya para no darle vueltas al asunto: ¿entonces se puede apagar sin preocupaciones con el botonazo ó no?, y en todo caso, ¿cuando no se deberia de apagar asi?
Cuando este escribindo a saco en la SD o en la NAND, o sea, cuando estas guardando un archivo, o cpienado, es decir, en mitad de una actualizacion de firmware, cambiando un tema, etc... ojo a cambiar un tema o actualizar con las pilsa bajas.
Por lo demas en cualquier momento.
Acerbaturix
28/08/2006, 16:09
Aparte del hecho de utilizar un sistema de ficheros específico para sistemas embebidos (si, a mi tb me gusta más este palabro) :D.
El principal secreto detrás del apagado de la consola es el Buffer Caché. El buffer caché es una "tecnología" que implementa el kernel de Linux (y casi cualquier otro sistema operativo desarrollado en los ultimos 20 años, salvo MSDOS :D) que lo que hace es mantener en memoria una caché de los datos de disco.
Es decir, en un PC con Linux (o con Windows) cuando lees datos de disco por primera vez, estos se cachean en la memoria del ordeador, de forma que cuando los vuelvas a leer no necesitas ir a disco.
Lo mismo pasa al escribir. Tu escribes datos en un fichero, y estos, en la mayor parte de los casos no pasan a disco inmediatamente, sino que se quedan en memoria hasta que al algoritmo de gestion del buffer caché le parece. Por ejemplo cuando se quedó si sitio en memoria y necesita leer nuevos datos de disco.
Este ultimo punto es el que explica tambien por que un sistema Linux que lleve encendido mas de 1 hora siempre tiene ocupada toda la memoria. No es que los programas que estes usando ocupes tanto, sino que el kernel esta aprovechando toda la memoria que puede para usarla como buffer caché, y cuando se acabe empieza a escribir en disco.
Es por esto que es absolutamente necesario desmontar los sistemas de ficheros. Ya que cuando vas a apagar el equipo, desconectar un pendrive, etc. puede haber un monton de datos que todavía no han sido escritos realmente en el dispositivo.
Además, el sistema de buffer caché es independiente del sistema de ficheros utilizado, es en una capa superior del kernel, y por tanto funciona con cualquier sistema de ficheros.
Asique el secreto está en desactivar el buffer caché, lo cual se hace con la opcion sync al montar un sistema de ficheros, y es lo que podemos ver en el fichero fstab de la GP2X (este fichero se usa para guardar la configuración de montaje de unidades en Linux).
/dev/mtdblock/3 / yaffs sync,noatime,rw 0 0
/dev/mtdblock/4 /mnt/yaffs yaffs sync,noatime,rw 0 0
/dev/loop/7 /mnt/nand vfat iocharset=utf8,sync,noatime,rw 0/dev/mmcsd/disc0/part1 /mnt/sd vfat iocharset=utf8,sync,noatime,rw 0
Si no utilizamos buffer caché, lo que hace el kernel es escribir todo directamente a disco (las operaciones de escritura de los programas tardarán mas, por que no salen hasta que acaban de escribir), por lo que solo debemos esperar a que el programa termine de escribir, momento en el cual ya deberíamos de poder apagarla sin problemas.
El hecho de que el uso de la consola no incluya escribir demasiado a disco ayuda bastante, por que sino deberían utilizar el buffer caché para obtener mas rendimiento.
Aparte del hecho de utilizar un sistema de ficheros específico para sistemas embebidos (si, a mi tb me gusta más este palabro) :D.
El principal secreto detrás del apagado de la consola es el Buffer Caché. El buffer caché es una "tecnología" que implementa el kernel de Linux (y casi cualquier otro sistema operativo desarrollado en los ultimos 20 años, salvo MSDOS :D) que lo que hace es mantener en memoria una caché de los datos de disco.
Es decir, en un PC con Linux (o con Windows) cuando lees datos de disco por primera vez, estos se cachean en la memoria del ordeador, de forma que cuando los vuelvas a leer no necesitas ir a disco.
Lo mismo pasa al escribir. Tu escribes datos en un fichero, y estos, en la mayor parte de los casos no pasan a disco inmediatamente, sino que se quedan en memoria hasta que al algoritmo de gestion del buffer caché le parece. Por ejemplo cuando se quedó si sitio en memoria y necesita leer nuevos datos de disco.
Este ultimo punto es el que explica tambien por que un sistema Linux que lleve encendido mas de 1 hora siempre tiene ocupada toda la memoria. No es que los programas que estes usando ocupes tanto, sino que el kernel esta aprovechando toda la memoria que puede para usarla como buffer caché, y cuando se acabe empieza a escribir en disco.
Es por esto que es absolutamente necesario desmontar los sistemas de ficheros. Ya que cuando vas a apagar el equipo, desconectar un pendrive, etc. puede haber un monton de datos que todavía no han sido escritos realmente en el dispositivo.
Además, el sistema de buffer caché es independiente del sistema de ficheros utilizado, es en una capa superior del kernel, y por tanto funciona con cualquier sistema de ficheros.
Asique el secreto está en desactivar el buffer caché, lo cual se hace con la opcion sync al montar un sistema de ficheros, y es lo que podemos ver en el fichero fstab de la GP2X (este fichero se usa para guardar la configuración de montaje de unidades en Linux).
Si no utilizamos buffer caché, lo que hace el kernel es escribir todo directamente a disco (las operaciones de escritura de los programas tardarán mas, por que no salen hasta que acaban de escribir), por lo que solo debemos esperar a que el programa termine de escribir, momento en el cual ya deberíamos de poder apagarla sin problemas.
El hecho de que el uso de la consola no incluya escribir demasiado a disco ayuda bastante, por que sino deberían utilizar el buffer caché para obtener mas rendimiento.
Habia observado el flag sync, activado, peroen algunas versiones de las coreutils GNU, con ciertos kernel linux cascaba esa opcion en los sistemas de archivos vfat, pero es algo completamente solucionado.
Si no con un script, en plan
Originalmente escrito en apagar.sh
#!/bin/sh
echo "Preparandose para el apagado"
shutdown -h now //o shutdown -h -tnow
//el sistema está apagado, es inutil intentar mostrar un mensaje
Pero despues hay que apagar igual desde boton.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.