Archivo para la categoría Linux
Brain Fuck Scheduler Kernel
- Porque esto deja afuera todas las cosas buenas conocidas en cuanto a como diseñar un moderno lanzador de tareas, junto con tener una capacidad escalable.
- Porque esto es ridiculamente simple.
- Porque el perfomance es ridiculamente bueno para ser tan simple.
- Porque está diseñado de tal manera que el mainline del kernel nunca van a estar interesados en el, de lo cual es como me gusta.
- Porque esto hará que la gente se siente y tome nota de cualés son los problemas en el diseño actual (CFS).
- Porque esto deja afuera cualquier filosofia que diga que un lanzador lo puede hacer todo de manera genérica.
- Porque esto actualmente sugiere que mas de una CPU significará una mejor latencia.
- Porque para haber trabajado en esto de nuevo se me hizo
mierda la cabezatrizas la cabeza.
Ayudando a cambiarse a linux
Primero Empezare explicando una analogía:
Imaginen que los sistemas operativos son como las automotoras y que existen 3 que compiten ( algunas mas que otras).
La primera se llama Microsoft, y vende motocicletas con motores a un muy buen precio. Aparte de que en casi todas las automotoras de los países venden de estas motocicletas, el problema esta en que gotean mucho aceite y se tienden a “oxidar” con el tiempo. Y sin olvidar también de que se le adhieren unos bichos al color de la bicicleta y termina dañando el esmalte de este.
La segunda automotora se llama Mac, y vende autos deportivos de lujo, al mas puro estilo de ferrari, muy muy bonitos pero que en realidad solamente el 8% de la población alcanza a comprar estos autos de lujo, y son herméticos asi que no le entran insectos. El problema esta en que al ser tan herméticos no permiten la re configuración de estos a elección. Así que el usuario no puede modificarlo a gusto.
La tercera y ultima, ni siquiera automotora se llama linux. Digo que no es una automora por que no le alcanza ya que se consideraría mas como “Una comunidad pequeña” en donde se juntan personas voluntarias a hacer lo que ellos estimen necesario “Para sus propias necesidades”, Así que cada vez que tu pases por esa comunidad ellos te dicen: “Hey nosotros no te vendemos una motocicleta o un ferrari, pero podemos hacer que estos tengan la potencia de un “Tanque” y gratis.
Entonces un personaje de la comunidad de linux se paro en un semáforo a gritar por un megáfono, ofreciendo Tanques:
User Comunidad: !Damas y caballeros¡, les vengo a ofrecer como poder hacer un tanque gratis por ustedes mismos.
Futuro Comprador: ¿Pero usted esta loco?, un tanque pero si todo el mundo usa las motocicletas con motores.
User Comunidad: Pero señor, esa motocicleta que dice usted, se oxidan rápido y se le adhieren muchos bichos..
Futuro Comprador: a pero que va, yo solamente quiero una motocicleta para andar en una sola dirección sin mas complicación, ya me imagino lo complicado que seria tener que encender todos esos botones de el tanque.
User Comunidad: la verdad es que es bastante fácil de encender, y si se llega a parar el tanque tiene a una comunidad entera de personas dispuestas a ayudarlo con su problema.
Futuro Comprador: la verdad es que todos usan motocicletas, seria un bicho raro si usara un tanque, así que mejor me voy a comprar la motocicleta y ya…
Al día siguiente que el comprador se compro una motocicleta, esta se oxido y se le adhirieron un sin fin de bichos y tuvo que llevarla a re-pintarla nuevamente…
….Mientras que el usuario de la comunidad en su tanque todavía seguía funcionando sin mayores problemas.
¿Y tu?, ¿con que te quedarías?
Entendiendo SSH
Una de las cosas que tuve que aprender, fue poder comunicarme de un pc con Linux remotamente por consola, a otro pc. ¿Pero como se hace esto?, La respuesta es muy sencilla ya que existe un programa que hace esto, el nombre es SSH.
¿Que es SSH?, la sigla ssh significa, secure shell ( Interprete de comandos seguro), en general es un programa que mediante el se puede conectar via comandos unix a una consola virtual dentro de el PC al que se va a conectar.
En cuanto a la seguridad de ssh, se podria decir que es uno de los protocolos remotos mas seguros que hay, ya que usa Tuneles para poder llevar la informacion correspondiente.
Aca un pequeño dibujo para explicar lo de los tuneles:
Hay varios programas para ssh, en window$ existe el putty, en linux esta el ssh. En la foto se ve que el protocolo de tcp pasa a travez de un tunel, para llegar al servidor unix, esto es conveniente ya que impide el trafico desde afuera, osea si alguien quiere robar datos no lo va a poder hacer ya que el tunel se lo impide.
En cuanto a como se transmite la informacion, esta pasa por un cifrado llamado RSA, ¿pero que es RSA?, es un sistema de cifrado criptografico publico. Esta se distribuye de forma autentica, y se guarda en el servidor y en el pc de cliente a su vez. Los datos encriptados en ssh que se mandan estan en numeros mayores que 10100.
Un dato freak, es que el RSA se usaba en Estados Unidos y Rusia en el 2002 para proteger los codigos de las armas nucleares.
Aca hay un ejemplo de un algoritmo de 512 bits:
—–BEGIN RSA PRIVATE KEY—–
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,B4607D4999DF9D53
UKYWGl9VSYp8Kb3trSn7+Pr6c2TJ8bn4sJYkye8z8w0aWqpUbpbQdu3h6Tnm2SQH
H9MQLM51rwdAC8fQti4ZQ7wEDl6Ef7oxBSVXfpt7uhaSbUmK7azQourVM2NjUSQP
qAwXKSTedFcRd1NZfksLTblIWbtOoZnJZiRjV6GtfUWophrOYuyF5whjIdCIf9bf
f0eRKOWSf33VkvnO5+ufUTmGhQDRT/AlfRcf4Sxylh6iWl7JUnrOEa6dOw2PU85g
Pc+F6x/EdLsERs4KBx252s18aP2E3qAxSi287RyrPLA5sAkfqqNTaeoM8Y1aTB3H
gI3N4tEfNsXqRozXueF1tBzGQPZQbAj6JJS5tiI7o/jhOApvnM1VDKEme0EguBzo
iv7lP/wQ0mEgN+GW9tg01Oj0TQl39ExAheZe6ZmqRpg=
—–END RSA PRIVATE KEY—–
En los siguientes post, voy a colocar como configurar ssh desde un servidor linux, y como colocar una encriptacion de 2048 bits.