{"id":668,"date":"2012-06-03T03:20:06","date_gmt":"2012-06-03T09:20:06","guid":{"rendered":"http:\/\/www.lastdragon.net\/?p=668"},"modified":"2012-06-03T03:20:06","modified_gmt":"2012-06-03T09:20:06","slug":"que-es-unix-y-que-sistemas-operativos-son-unix","status":"publish","type":"post","link":"https:\/\/www.lastdragon.net\/?p=668","title":{"rendered":"Que es Unix y que sistemas operativos son Unix"},"content":{"rendered":"<p>Alguna vez Unix fue un sistema operativo desarrollado antes de 1970 , digo que fue por que dudo mucho que existan sistemas operativos Unix, desde 1970 hasta hoy han pasado m\u00e1s de 40 a\u00f1os es posible que no quede ni el oxido del fierro del hardware de esos equipos.<\/p>\n<p>Sin embargo todo el mundo parece muy emocionado por decir que tienen un sistema operativo Unix cuando no es cierto, tienen un FreeBSD, un GNU\/Linux, un OpenBSD entre otros, es como si algo por llamarse Unix fuera mejor que otra cosa que no lo es.<\/p>\n<p>Algunos usuarios de BSD incluso dicen que sistemas como FreeBSD son Unix verdaderos como si decirlo fuera u orgullo y nada mas lejos de la verdad ni en el c\u00f3digo son Unix ni en la interpretaci\u00f3n actual de Unix son Unix y m\u00e1s adelante escribir\u00e9 que ni en el c\u00f3digo son Unix porque si lo fueran SCO estar\u00eda sob\u00e1ndose la manos<\/p>\n<p>Ya no existen Unix como sistema operativo, ahora los sistemas operativos se certifican como Unix, esto significa que con la debida certificaci\u00f3n hasta Windows puede ser Unix<\/p>\n<p>Pero que hace que Unix sea Unix en estos d\u00edas si ya no existen Unix, la respuesta es simple<\/p>\n<p>A Unix lo define el lenguaje C ANSI y Unix que define a C pero eso es otra historia, en sus librer\u00edas est\u00e1ndar, m\u00e1s espec\u00edficamente la unistd.h y es esta misma librer\u00eda la que hizo el mito de que C es un lenguaje portable y lo es, solo entre Unixes ya que las APIS ah\u00ed listadas son las que definen a un Unix<br \/>\n\u00bfy como fue esto?<\/p>\n<p>Cuando tu dise\u00f1as un sistema operativo, tratas de crear funciones que manejen archivos, procesos o programas el disco duro, la memoria, etc todo convirti\u00e9ndolo en un framework, un sistema operativo es un framework como .net o como muchos otros, de hecho los frameworks como rubyonrails y otros de programaci\u00f3n no son m\u00e1s que frameworks que corren sobre otro framework<\/p>\n<p>Volviendo al punto, un sistema operativo es un framework y como tal esta lleno de funciones, funciones que tienen invocaci\u00f3n y tal como cualquier framework las invocas para no tener que programar un driver que lea un archivo en el disco duro por citar un ejemplo y si tu haces tu propio sistema operativo, tu eres libre de ponerle a esas funciones del sistema operativo AKA APIS, que se llamen como t\u00fa quieras, el problema es que cualquiera que haga otro sistema operativo tiene la misma libertad de crear su propio set de APIS con los nombres que el quiera.<\/p>\n<p>Las APIS son importantes por que los compiladores de los lenguajes de programaci\u00f3n las invocan, convierten tu c\u00f3digo C, PHP, Perl, Pascal, etc,etc, lenguajes compilados o interpretados que tienen sus propias funciones y las ligan a las funciones del sistema operativo, la cosa es que si cada sistema operativo tiene su propio set de funciones o APIS, cada lenguaje de programaci\u00f3n que soportara tu sistema operativo tendr\u00eda que aprender el set de APIS que tu usaste y asi con cualquier OS y sus propias APIS por lo que se vuelve inviable. Si quieres que exista C para tu sistema operativo, primero tendr\u00e1s que hacerlo cumplir con PosiX o tener un mercado gigantesco como Windows para que los programadores del compilador C se tomen la molestia de reimplementarlo.<\/p>\n<p>Entonces para no reimplementar una y otra vez, en alg\u00fan momento a alguien se le prendi\u00f3 el foco y dijo, saben que, todos nuestros sistemas operativos van a compartir las mismas APIS de programaci\u00f3n b\u00e1sica del sistema operativo de tal manera que para el compilador siempre llame la misma funci\u00f3n del sistema operativo para leer un archivo o levantar un proceso en la memoria o cualquier funci\u00f3n b\u00e1sica del sistema operativo de manera que C por ejemplo puede usar c\u00f3digo portable o el mismo c\u00f3digo sin importar que sistema operativo tenemos<\/p>\n<p>A esta homologaci\u00f3n de APIS del OS se le llamo POSIX  o \u201cPortable Operating System Interface de Unix\u201d La palabra Unix se entiende por la X, la X denota Unix, por si no lo sab\u00edas<\/p>\n<p>Pero incluso tener un sistema operativo compatibles con POSIX no lo hace un Unix, como todo est\u00e1ndar que no es libre, se cobra y se cobra muy caro por acceder a la documentaci\u00f3n, muchos programadores de GNU\/Linux y otros NIX no tienen acceso a el, solo programan la parte que ya es del dominio p\u00fablico.<\/p>\n<p>Tambi\u00e9n existe otra especificaci\u00f3n para mitigar eso, si tu sistema operativo cumple con Posix y Single Unix Specification, entonces ya esta listo para certificarse como Unix, pero hasta que no lo certifiques, no es un Unix.<\/p>\n<p>La certificaci\u00f3n tampoco es econ\u00f3mica, por lo que b\u00e1sicamente solo los sistemas operativos comerciales tienen los fondos para pagar dicha certificaci\u00f3n.<\/p>\n<p>Y aunque Single Unix Specification  es libre en internet y fue creado por The Open Group, la misma The Open Group. Es la encargada de certificar, a cambio de muchos d\u00f3lares.<\/p>\n<p>Cu\u00e1les son los Unix, que solo son Unix porque lo dice The Open Group<\/p>\n<p>IRIX<br \/>\nSCO con UnixWare y OpenServer (SCO es quien demando a GNU\/Linux hace unos 10 a\u00f1os)<br \/>\nNEC\/UX<br \/>\nIBM con Z y con AIX<br \/>\nSolaris<br \/>\nHP con UX y Tru64<br \/>\nY entre los \u00faltimos en  esta fiesta, el MacOS X<\/p>\n<p>As\u00ed que lo m\u00e1s cercano que estas de usar un Unix es comprarte una MacBook<\/p>\n<p>Si tu sistema operativo favorito, d\u00edgase GNU\/Linux alg\u00fan BSD no est\u00e1 ah\u00ed, pues mala suerte no son Unix, nosotros los llamamos \u201cComo Unix\u201d porque de hecho lo son, compatibles con Posix y  todo pero pues nadie ha pagado el derecho de llamarlos Unix.<\/p>\n<p>Entendiendo esto Unix ya no es un sistema operativo, es una especificaci\u00f3n que se certifica  y solo hasta que se certifica es Unix<\/p>\n<p>Son mitos los que dicen que el c\u00f3digo de tal sistema operativo especialmente los de BSD o MacOS X son Unix por que tienen c\u00f3digo Unix, en el MacOS X es cierto solo porque esta certificado pero del Unix original no tiene ni un solo byte de c\u00f3digo.<\/p>\n<p>SCO aparentemente tiene el c\u00f3digo de Unix original, pero demanda a cualquiera que lo use, por lo que ning\u00fan OS \u201cComo Unix\u201d lo usa, todos han escrito el c\u00f3digo desde cero para no meterse en problemas legales.<\/p>\n<p>Dicho eso de SCO quien demando que el Kernel de Linux tenia c\u00f3digo Unix original, la demanda la perdi\u00f3 SCO, pero el hecho de que haya dicho que Linux tiene c\u00f3digo de Unix, moralmente da gusto, a los FreeBSD, MacQueros y otros los ignoro, solo tomo en cuenta a Linux<\/p>\n<p>As\u00ed que moralmente Linux es mas Unix que otro OS tipo Unix o eso nos dijo SCO<\/p>\n<p>Yo pienso que compa\u00f1\u00edas como RedHat podr\u00edan certificar el Kernel de Linux como Unix, pero supongo que igual que yo no le encuentran sentido, porque de eso se beneficiar\u00edan todos sus rivales como Suse, Oracle y otros, tal vez si las empresas m\u00e1s importantes con distros de Linux se sientan a dialogar y deciden pagar la certificaci\u00f3n del kernel de Linux, tal vez  y solo tal vez el pr\u00f3ximo Unix sea Linux<\/p>\n<p>Como dato, un hecho.<br \/>\nLa anteriormente describ\u00ed que de PosiX la X denota Unix, en el nombre de Linux se cambio la S del creador Linus por X de tal forma que Linux es Linu-Unix aunque sea solo por bautizo en el nombre<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Alguna vez Unix fue un sistema operativo desarrollado antes de 1970 , digo que fue por que dudo mucho que existan sistemas operativos Unix, desde 1970 hasta hoy han pasado m\u00e1s de 40 a\u00f1os es posible que no quede ni el oxido del fierro del hardware de esos equipos. Sin embargo todo el mundo parece&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-668","post","type-post","status-publish","format-standard","hentry","category-personal"],"_links":{"self":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/668","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=668"}],"version-history":[{"count":0,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/668\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=668"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=668"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=668"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}