[/quote]dijo:
El post esta 100% escrito por mi usando mis conocimientos dados en una materia de faculta llamada "Sistemas de Procesamientos de Datos" o como sutilmente la llamamos algunos , "pepe" (larga historia xD )
[/quote]dijo:
Mi rama de la ciencia es la computación, no la lengua y literatura, asi que si ven falta ortográficas, siéntanse libres de desirmela por MP, que con mucho gusto corijire.
[/quote]dijo:
Yo, al igual que cualquier estudiante, profesor, o persona, estamos en un proceso constante de enriquecimiento de saberes, por lo que si notas en el post algún error, falencia ,duda, o intriga, comentalo e explicalo para que se pueda corregir / explicar.
[/quote]dijo:cualquier concepto, explicacion o tema que vean que le falte explicar, o pulir, les estare agradecido que lo mencionen para asi yo poderlo corregir y crear un post que les sirva si el dia de mañana estudian algo parecido, pero recuerden que esto solo es la punta del iceberg


Hola a todos y sean bienvenidos a un post, donde explicare a mi manera como es que esos pedazos de plástico y fierro que llamamos micro, ram, etc. funcionan para que vos puedas estar leyendo ahora esto en este momento, como es que relaciona y como trabaja cada parte de la pc entre si para llevar a cavo largos y tediosos procesos.
índice:
>> Maquina de Von neuman.
>> Sistema binario ¿para que?.
>> Microprocesador.
>> Discos Rígidos.
>> Maquina de Von neuman.
>> Sistema binario ¿para que?.
>> Microprocesador.
>> Discos Rígidos.

es posible que esto ya lo sepan muchos otros, pero hay quienes que no, y sin esto sera difícil entender el resto...
Nada mejor que partir de la base, en este caso, es la maquina de Von Neumann, osea, la pc moderna que conocemos todos, dicho en cristiano, la maquina de Von Neumann fue el primer computador en el mundo en usar cierta arquitectura en especia, (con arquitectura me refiero al diseño de como cada cosa interactúan entre si), imagínense que esta arquitectura fue tan perfecta y eficiente que aun, después de mucho muchos años sigue igual (claro, con unas cuantas mejoras, pero en conceptos funciona de igual manera), para ir ambientándolos un poco, hace años atrás, cuando las computadoras ocupaban toda una habitación de una casa, por cada nuevo proceso, tarea y demás, se debían rrecablear y conectar, desconectar enchufes, etc.... osea un trabajo muy tedioso y aburrido, pero todo esto se soluciono con la nueva arquitectura de Neumann, para eso, el definió unas partes básicas e infaltables de toda computadora para que funcione:
-> CPU
-> Memoria
-> Interrupciones
-> Buses
-> Entradas / Salidas
-> Memoria
-> Interrupciones
-> Buses
-> Entradas / Salidas
maquina de Von Neumann
*Presionen Control + para ampliar la imagen y verla mejor*
no me pondré a explicar que hace y que es cada mínima parte eso, por que seria odioso..... si les dire como funciona de manera concisa y practica =P.
bueno, pongamos el siguiente ejemplo, vos prendes tu linda compu, y vas a ponerte a ver vídeos educativos (educativos seee claro picaron e.e ) , entonces que es lo que hara la pc, primero, mediante un dispositivo de entrada, como el maus, buscas el vídeo, la compu lo habré y ejecuta y vos feliz, pero por dentro, hace mucho mas, de manera corta, primero, cuando vos le das doble clik al archivo, el sistema operativo usara complicados algoritmos internos para buscar ese archivo dentro del disco rígido, una ves que lo encuentra, mediante los buses de datos, lo envía a las memorias RAM, de la memoria RAM, le pasara las ordenas al micro para que este las ejecute y mediante los buses de datos te muestre el vídeo
ahora, se preguntara, ¿por que la necesidad de que pase del disco rígido a la ram? , bueno, si se acuerdan de cuando en el colegio les decía que existen del tipos de memorias, la RAM y ROM, y que una se mantenía, y al otra se perdía cunado se apagaba y bla bla bla... bueno es eso, la RAM, es una memoria sumamente rapida en " pasar instrucciones/datos " y estas instrucciones están guardadas en 1 y 0 (el tema del por que se usan 1 y 0 lo diré mas adelante) y a su vez están organizadas en segmentos (estan en segmentos por que de esta manera los datos de tu vídeo no se pisan con los datos de otro programa y viceversa, existe errores de pantallas azules muy lindos que diré en el ultimo tema de programación)

el sistema binario al igual que otros sistemas numéricos comprende una cierta lógica, por ej, en el decimal, nosotros para representar el numero quince, necesitamos dos espacio, un espacio para el " 1 " y un espacio para el " 5 " , ahora ¿ cuantos números enteros podemos representar con solo dos espacio ? podemos representar del 00 al 99, y si luego de eso necesitamos algo mas grande, debemos agregar un espacio mas, y hacia sucesivamente. pero siempre usando los mismos símbolos que llamamos números ( 0 - 1 - 2 - 3 - 4 - 5 - 6 -7 - 8 - 9). esta misma lógica aplicaremos para el sistema binario. osea, como el binario son solo 1 y 0 , con dos espacio, solo puedo mostrar los numero : 00 - 01 - 10 - 11, y luego si necesito otro numero mas grande, agrego un espacio mas , el 100 .

ahora la pregusta del millón ¿por que rayos la maquina usa 1 y 0 ? ¿acaso lo hace para joderme la vida? ¿para que me lo obliguen a estudiar en el colegio y repita por la culpa de los 0 y 1 ? , la respuesta a esto es similar al código morse, el código morse, forma letra usando solo dos ruidos, un largo y una corto (o punto y rayita), bueno, esto lo mismo, se acuerdan de cuando cargamos las instrucciones en la RAM ?, habíamos dicho que la RAM manejaba 0 y 1 (a un nivel lógico y en circuitería eléctrica se le dice 0 a apagado y 1 a encendido), por que lo que en realidad hay en la ram es voltaje, por ej, el voltaje en 7 y 6 para la pc es un 1, y un voltaje entre 5 y 4 es un 0 (los voltajes exactos no me acuerdo, pero anda entre esos números) , entonces, le pasa esos voltajes a la micro y esta los interpreta y procesa generando en este caso, el vídeo. también estos 1 y 0 se encuentran en DVD, en el disco rígidos (en estos dos casos como ON y OFF) y demás aparatos de almacenamiento.

Esta es la parte mas divertida e interesante del tema, por que es sobre el cerebro de la pc, el microprocesador, lo unico que hace es sumar, si tiene que multiplicar , suma, si tiene restar, suma, si tiene que comparar dos cosas las resta, osea las sumas, todo muy loco no ? ahora se diran, ¿como cuerno va a restar sumando?
El proceso, es conocido por complemento a 1 (gracias a @eluney89 por corregir) , o usando otro llamado complemento a 2, solo explicare el uno que es el mas simple, supongamos que tenemos
9-8=1
si queremos transformar esta resta en suma (que es lo que hace el micro) solo realiza lo siguiente:
1º agrega un signo ,si es negativo agregas el máximo valor del sistema numérico , por ej, en el sistema decimal, que son 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 , el maximo es 9, entonces si es negativo le pones un 9 adelante, si es positivo agregas el mínimo que siempre va a ser 0, ;
dejando:
09
-
08
____
09
-
08
____
2º a cada digito del segundo numero le escribimos el "opuesto" , por ej yo tengo el sistema decimal, :
0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9
9 - 8 - 7 - 6 - 5 - 4 - 3 - 2 - 1 - 0
9 - 8 - 7 - 6 - 5 - 4 - 3 - 2 - 1 - 0
se ve que el mas opuesto al 0 es el 9, el mas opuesto al 8 es el 1 y así sucesivamente.
entonces la "resta" queda :
09
-
91
____
-
91
____
3º sumamos:
09
+
91
___
100
+
91
___
100
y o Dios... pasamos de ocupar solo dos lugares a ocupar tres, pero no cunda el pánico, eso siempre, siempre SIEMPRE que se use el signo del punto 1º pasara, y esta bien que pase, eso se conoce como OVERFLOW solo hay que agarrar ese OVERFLOW y sumarlo al resultado
1
+
00
___
01
+
00
___
01
y tada ! nos quedo nuestro resultado, que es 1, bueno, ahora imaginence eso, pero en binario, que loco no lo que hace el micro =P
esto es levado a cabo en una parte del micro llamado ALU, que si se fijan, posee dos patitas que es por donde entra el dato. (en el gráfico esa que parece un boxer invertido o una V)

pero no termina acá, también al micro posee entre otras cosas un decodificador, que interpreta los datos que le da la RAM y un secuenciador que viene a ser el que dirige los procesos dentro del micro, también los resultados que te da la ALU (Aritmethic Logic Unit) son almacenados en el registro acumulador (tema a desarollar junto con el capitulo de assembler).

bueno, me dirán, ya se como se maneja, como opera, pero ¿como sabe la pc cuando empieza y termina una instrucción ? simple, usa dos registros (son como un espacio en la memoria en la que guarda un dato) llamados IP, y PC (Program counter si no me equivoco e Instruccion Pointer) donde uno te dice que instrucción ejecutas, y para no perder tiempo el otro te dice cual es la próxima a ejecutar. por ej, yo tengo esta lista de instrucciones numeradas:
0 . ____________
1 . ____________
2 . ____________
1 . ____________
2 . ____________
si yo estoy ejecutando la instrucción de la linea 1, el PC vale 1, y entonces el IP valdrá 2 pòr que sera la próxima linea a ejecutar

y por ultimo de microprocesadores, nos qeda saber, como es que transformo todos esos 1 y 0 en el dichoso video que ejecutamos, lo que ara una ves procesados esos datos, mandara una interrupción, esto que significa ? que le pedirá a la BIOS de la placa mother que hacer con ellos, entonces la placa madre le mandara mas datos para poder ejecutar la acción de mostrar algo por pantalla y entre esas cosas, le dirá cual es el bus de dato que lo llevara al monitor (eso fue algo muy agarrado por los pelos, pero tiene otro nombre que son cosas mas compleja aun xD )
un pequeño video que sintetiza bastante:
Bueno, en este tema nos sentaremos en que posee un disco rígido y como puedo darle mas velocidad a mi pc usando dos disco en vez de uno (dos discos físicos, no particiones) , el disco, puede poseer varios platos donde guarda los datos por la cara de arriba y de abajo, así mismo, cada plato esta dividido en pista(depende de como lo mires y al cantidad de platos se pueden llamar cilindros o tracks) y a su ves estas en sectores y serán en esto donde se almacenaran los datos.
,muchos habrán visto ya como son, son como un tocadiscos , donde poseen una aguja que va recogiendo los datos de cada sector, pero a diferencia de un tocadiscos, el hard disk, posee varias "agujas" que recogen los datos (una por cada cara de plato utilizable) con el inconveniente que se mueven todas al mismo tiempo.

veamos... por ejemplo, yo debo ir de:
mi dato 1 que esta en el sector 10 de la pista 2, hasta...
mi dato 2 que esta en el sector 9 de la pista 2
como el disco gira en un solo sentido, supongamos que existen 250 sectores por pista, debemos esperar, que pase por todo todos los otros sectores , osea que de una vuelta entera, para poder recoger el mi dato 2 desperdiciando valioso tiempo (que a su ves se le suman otros tiempos mas de espera que si tienen ganas después les amplio el post)

como dije antes, es posible acelerar la pc agregando otro disco rígido, y aplicarle algo llamado RAID 0 (existen alrededor de 6 tipos deferentes de RAID) que es hacer que dos discos diferentes, sean reconocidos como uno solo por al compu, por lo que mientras uno busca un dato, el otro ya busca los siguientes, por lo que antes hacia un solo disco, ahora el trabajo se aligera con dos.

bueno, eso fue todo, si les gusto, recomienden y comenten.
si les interesa programar , síganme, que mi próximo aporte sera sobre el lenguaje ASSEMBLER y como todo estas cosas (en especial sobre lo del micro) cobran gran importancia , y créanme, que si en si es un lenguaje viejo, pero MUY MUY VELOZ y útil para pequeños procesos que necesiten velocidad ya que le sacaran el máximo provecho al micro.
cualquier duda, consejo, o comentario, no duden de expresarlo

