¿Por qué no ha habido un competidor para Microsoft y un rival del sistema operativo para Windows?

No solo en los sistemas operativos, en muchas otras cosas, no tiene muchos competidores, excepto algunos.

Inicialmente hubo una guerra de computadoras entre Microsoft y Apple Inc por crear los mejores productos y sistemas operativos desde 1974 hasta 1999. Más tarde, ambas corporaciones rivales terminaron su rivalidad directa, sin embargo, existe una competencia indirecta. Pero aún así, Microsoft posee una gran cantidad de clientes satisfechos a nivel mundial con varios productos basados ​​en Microsoft, como el paquete de software de aplicaciones de Office , que también es compatible con productos de Apple como Office 360 , Skype (un software basado en VoIP), Xbox , Bing , etc. y también tiene sus piernas están firmemente fijadas no solo en los sistemas operativos, sino también en seguridad, operación de TI, en línea (Windows live, MSN, Live Search), entretenimiento y dispositivos como “ Zune “, plataformas comerciales y aplicaciones de bases de datos , por nombrar algunos.

Microsoft tiene una amplia gama de productos en casi todos los campos posibles en Internet y computadoras y está en un punto en el que nadie más puede tocar su posición en este momento. Todos sabemos que Apple se retiró de esta pelea y ahora está ocupado peleando con Samsung. Microsoft también tiene sus aplicaciones en el correo electrónico . De ahora en adelante, considerando todos los hechos mencionados anteriormente, podría explicar por qué Microsoft no tiene competidores, al menos hasta la fecha.

Imagen cortesía de: Microsoft

– Saravanan Siddeswaran

Creo que su pregunta debería estar en el entorno de escritorio. Unix / Linux y todos sus derivados ciertamente tienen un lugar en los centros de datos de la mayoría de las grandes corporaciones.

Personalmente, utilicé Unix hace mucho tiempo desde que vine del área de DOS, pero me cambié a Windows desde que se volvió viable.

En cualquier caso, con cada iteración de la funcionalidad de Windows se agrega y aumenta la complejidad. ¿Pero qué usar, PowerShell, Pyton, Ruby, etc.?

Perl

Perl tiene algunas formas de interactuar con el sistema según lo que espere hacer con el comando externo. Cuando se trata de simplicidad, Perl lo hace bien.

Ejecutar y esperar para obtener el código de salida – Sistema

Lo siguiente ejecutará un comando ipconfig y devolverá un código de salida a Perl:

$ Exitcode = Sistema (“ipconfig”);

Si desea suprimir la salida ya que solo le importa el código de retorno, puede redirigir el comando a NULL:

$ Exitcode = System (“iconfig> nul”);

Ejecutar y continuar – Exec

Exec ejecuta un comando externo y continúa. No recibe ninguna indicación sobre cómo se ejecutó el comando.

Exec (“robocopy d: \\ folder1 d: \\ folder2”);

Nuevamente, si desea suprimir la salida, puede redirigir a NULL:

Exec (“robocopy d: \\ folder1 d: \\ folder2> nul”);

Ejecutar y recuperar la salida – Backticks

Si desea capturar la salida del comando, debe usar los backticks. Por ejemplo, lo siguiente completará la variable $ ipinfo con la salida devuelta de ipconfig. La impresión lo mostrará en la pantalla.

$ ipinfo = `ipconfig`;
Imprimir $ ipinfo;

Potencia Shell

PowerShell también tiene muchas formas de iniciar comandos del sistema, pero se debe principalmente al hecho de que los comandos del sistema se pueden ejecutar de forma nativa en PowerShell. Simplemente escriba un ejecutable y se ejecutará. Debido a esto, puede generar un trabajo de PowerShell en segundo plano con start-job o ejecutar un comando en una computadora remota con invoke-command. Eso sí, no estoy mostrando todas las formas en que puede ejecutar un comando, solo las formas que personalmente uso una y otra vez.

Ejecutar y continuar: proceso de inicio

Start-Process es muy versátil. Personalmente, me gusta usar el alias start cuando uso este cmdlet. Si desea iniciar un comando y no esperar la salida, puede hacer lo siguiente:

iniciar ipconfig

Sin embargo, si desea iniciar un comando con argumentos de línea de comando, deberá usar el parámetro ArgumentList. Esto puede ser un poco incómodo, pero no es difícil. A continuación se ilustra cómo usar robocopy con argumentos en Start-Process:

iniciar robocopy -ArgumentList ‘D: \ Folder1’, ‘D: \ Folder2’

Ejecute y espere para obtener el código de salida – -Esperar y .Exitcode

Puede esperar a que termine un comando utilizando el parámetro -Wait

iniciar robocopy -ArgumentList ‘D: \ Folder1’, ‘D: \ Folder2’ -Esperar

También hay un comando passthru que le dará el objeto de proceso para el proceso que está iniciando. Aquí está mi técnica personal para obtener el código de salida (sí, hay más de una forma de obtener códigos de salida, este es solo mi método preferido):

(inicie ipconfig -wait -passthru) .exitcode

Ejecuta y recupera la salida

En general, si necesito analizar el texto de retorno de un comando, simplemente ejecutaré el comando en línea. Por ejemplo, para establecer la variable $ ipconfig en la salida de ipconfig.exe, puede hacer lo siguiente:

$ ipconfig = ipconfig

En lo anterior, $ ipconfig es en realidad una colección de cadenas. Cada línea de la salida es un elemento en la colección. Si espera que devuelva una sola cadena, deberá unir los elementos junto con “` r`n “.

$ ipconfig = $ ipconfig -join “` r`n ”

Finalmente, si necesita usar espacios en su comando, deberá usar el operador de llamada (&). No dañará nada usar lo siguiente para todos los comandos que necesita de STDOUT, pero solo recuerde que requiere una colección de cadenas. Por ejemplo, lo siguiente funcionará (tenga en cuenta que d: \ folder1 no se cita, pero todavía funciona porque intentará convertir todo lo que ve en una cadena):

& ‘c: \ ruta con espacios \ robocopy.exe’ d: \ folder1 ‘d: \ folder2’

Sin embargo, esto fallará:

& ‘c: \ ruta con espacios \ robocopy.exe d: \ folder1 d: \ folder2’

Para hacer lo anterior, necesitaría usar Invoke-Expression, pero rara vez uso esa función, ya que se considera una mala práctica. La verdad sincera es que me importa muy poco acerca de los ataques de inyección en la mayoría de mi código. Si me importara, estoy seguro de que este artículo estaría plagado de él para discutirlo en todos los idiomas.

Pitón

Python también tiene algunas formas de llamar a programas externos. Según la documentación, parece que todos los casos de uso ahora deberían usar el módulo de subproceso. Para iniciar un comando externo y devolver el código de salida, simplemente puede usar el método call ().

Ejecute y espere para obtener el código de salida – Subprocess.Call ()

Subproceso de importación
Exitcode = subprocess.call (“ipconfig

Una cosa a tener en cuenta, si está utilizando una función que existe en cmd.exe, lo anterior no funcionará. Debe usar el argumento shell = True también. Por ejemplo, para usar dir haría lo siguiente:

Subproceso de importación
Exitcode = subprocess.call ([“dir”, “/ ad”, “c: \\”], shell = True)

También puede hacer lo anterior con una sola cadena:

Exitcode = subprocess.call (“dirc: \\”, shell = True)

Ejecutar y continuar – subprocess.Popen ()

Para ejecutar sin esperar el código de salida, debe usar el método de subproceso Popen (). Todo esto se siente un poco más desarrollado que con Perl y Python. Sin embargo, todo el módulo de subproceso está repleto de toneladas de cosas, ¿cosas útiles? Todavía no estoy seguro, pero esto es lo que sé que necesito.

subprocess.Popen (“ipconfig

Esta técnica comparte STDOUT y parcialmente STDIN. Esto se vuelve realmente confuso cuando haces esto:

t = subproceso.Popen (“powershell

Lo anterior es un divertido truco de fiesta que alternará entre las indicaciones de PowerShell y Python y los intérpretes interactivos. Probablemente no sea una buena idea ejecutar comandos interactivos de esta manera.

Si desea evitar que se muestre la salida, puede usar la redirección a NULL como vimos anteriormente en este artículo al analizar Perl. Sin embargo, hay algunos pequeños trucos con el módulo de subproceso que creo que vale la pena aprender. Puede establecer STDOUT en NULL al invocar Popen (). También puede configurar otras transmisiones como STDERR de esta manera. Por ejemplo, lo siguiente establecerá STDOUT en NULL y luego STDERR en STDOUT.

subprocess.Popen (“ipconfigdout = (abierto (os.devnull, ‘w’)), stderr = subprocess.STDOUT)

Ejecutar y recuperar la salida – suprocess.PIPE

De manera similar, cómo establecemos stdout en nulo, también podemos establecer stdout para que sea igual a PIPE para que luego podamos inspeccionar la propiedad stdout del objeto devuelto por Popen (). Lo siguiente ilustra esto:

p = subprocess.Popen (“ipconfigdout = subprocess.PIPE)
salida = p.stdout.read ()

Los lenguajes de script por su naturaleza están diseñados para ser extremadamente versátiles. A veces hay demasiadas formas de hacer lo mismo. Este tipo de expansión puede hacer que las cosas sean extremadamente fáciles de usar y extremadamente difíciles de resolver al mismo tiempo. Debido a esto, es realmente importante realizar un seguimiento de las técnicas que funcionan para usted y crear una biblioteca para sus casos de uso comunes. Personalmente, creo que los tres casos de uso que describí en este artículo son más que suficientes: ejecutar y esperar para obtener el código de salida, ejecutar y continuar, ejecutar y recuperar la salida. Creo que en el caso de los tres idiomas hay formas justas de realizar estas tareas.

La técnica Python se destaca porque es un poco engorrosa. Para ser justos, el módulo de subproceso de Python parece estar lleno de toneladas de diversión, por lo que es comprensible que sea un poco pesado de manejar. Para ser más justo con Python, hay otras formas de hacer lo anterior en Python utilizando métodos en módulos y bibliotecas que la documentación recomienda que ya no use. Ejecutar comandos en PowerShell en la línea de comandos y con el operador call (&) se siente fácil, pero parte de la razón es porque PowerShell está destinado a ser un shell nativo para Windows. Casi parece injusto, como comparar cómo ejecuta comandos en ksh versus bash versus cmd. En realidad, cuando compara bash con PowerShell o incluso cmd con PowerShell, PowerShell tiene tales peculiaridades que probablemente perdería esa batalla.

Fuente: Aprender un nuevo idioma – Perl, Python y PowerShell – Parte I – Ejecutar un comando del sistema

Para abreviar una tienda larga, en mi humilde opinión, a la larga es más barato quedarse con un proveedor, muchas veces he estado en llamadas de problemas que todos culpan a la otra compañía de los errores. Los mainframes estarán disponibles por mucho tiempo, Windows también, en cuanto a hardware en este momento solo compraría HP / Proliant’s, Cisco. Se requiere menos sobrecarga que una tecnología de combinación y combinación, es más fácil encontrar técnicos que puedan admitir equipos Windows y Cisco en lugar de ser buenos en todo.

Haters: eres bienvenido a cualquier contraargumento, lo he escuchado todo.

Porque a nadie se le han proporcionado las mismas circunstancias que a continuación:

a) Estar allí con un sistema operativo para ser seleccionado para la primera PC de IBM junto con el gran éxito de la PC de IBM.
b) Estar allí cuando IBM Compatibles comenzó a florecer. Después de eso, MS DOS y Windows se convirtieron en sistemas operativos empresariales de facto con algunas pocas casas de publicación y diseño que se quedaron orgullosamente con Mac
b.5) ​​Utilizando rápidamente esa ventaja para crear una interfaz de usuario basada en el mouse.
c) IBM falló con OS / 2 y Apple falló con macs mal diseñados y enormemente caros durante la era de Apple sin trabajo junto con Amiga no logró ganar tracción en el mercado
d) No solo el sistema operativo, sino también proporcionar una experiencia completa, desde lenguajes de programación hasta aplicaciones de oficina y luchar agresivamente en todos los frentes utilizando el sistema operativo como punto de inicio, en este caso guerras de navegador

y como dicen el descanso es historia

Microsoft presionó a los minoristas y fabricantes para que “recomendaran” Windows. Y amenazaron con cortar sus licencias si no lo hacen. Por lo tanto, no puede ir a una tienda y comprar una PC con un Linux decente. Puede obtener un Chromebook con un Linux vinculado a Google. Puede poner Linux en cualquier PC con Microsoft o Google, pero eso lleva 30 minutos, además las personas no saben que Linux existe.

El mayor problema con Windows es la seguridad. Está lleno de puertas traseras y errores que no puede ver, por lo que los gobiernos no estadounidenses están comenzando a adoptar Linux. Ahorrar dinero es solo un beneficio adicional.

Hay 300 variedades diferentes de Linux. Vaya a distrowatch.com y presione “buscar” arriba, y haga clic en “principiantes” en el cuadro de búsqueda. Verás Zorin, Mint, Ubuntu, Elementary, etc. Prueba uno de esos.

Ha habido y siempre habrá. En los viejos tiempos: AmigaOS, MacOS, OS / 2 de IBM. En estos días: Linux, MacOS, ChromeOS.

Microsoft consiguió el punto ideal de trabajar en cualquier hardware de PC (uno podría ensamblar una PC siempre que siga los estándares), los fondos para probar / adaptarse a cualquier combinación de hardware, y durante muchos años tener la vista gorda por la piratería. Hay una manera más efectiva de ganar popularidad?

Del lado de los clientes, la gente quería algo familiar y compatible. Lograron.

Por supuesto, todo esto deja de lado qué sistema operativo fue el mejor, pero eso nunca tendrá una respuesta objetiva.

Mac OS X no depende totalmente de Mac. Puede ejecutarlo en la mayoría de las máquinas Intel. Solo toma un poco de trabajo en muchos casos.

Lo que supongo es la respuesta a tu pregunta. Microsoft trabajó arduamente para hacer que Windows se ejecutara en muchos sistemas, incluso en sistemas que eran totalmente inapropiados (como el software del automóvil y Windows CE y Mobile).

Precio y sencillez. La simplicidad primero. Entonces, ¿quieres probar Linux? Me metí en una tienda de computadoras, cualquier tienda de computadoras grande. ¿Qué comprar? ¿Qué comprar? “¿Tienes alguna computadora Linux?” Ummmm. Bien, entonces compra una PC o computadora portátil con Windows decente y un disco duro de repuesto, de modo que si las cosas salen mal, puede volver a cambiar la unidad anterior. Ubuntu? Debian? ¿Arco? ¿Sombrero rojo? Y luego … KDE, GNOME, xfce. AAAARGH. Firefox ?? ¿¿¿¿Cromo???? No hay “Linux” para elegir. Tiene un ecosistema de Linux, y ¡ay de usted si tuviera un dongle USB-> WiFi antiguo que funcionara con Windows 7 y no existieran controladores de Linux para él.

Windows está preinstalado, tiene su seguridad predeterminada configurada para usted y es la plataforma de computación de escritorio / portátil más popular en comparación con Linux. Linux sigue siendo un campo de minas de elección y opinión, y aún no ha penetrado en el mercado de preinstalación de ninguna manera significativa. Windows es “una cosa” para todas las personas.

La otra alternativa importante es Mac. Bien, tengo £ 1,000 en mi bolsillo y quiero una computadora portátil. Mi elección es (espere) MacBook Air 13.3 ″ pantalla. Dual-core 1.6GHz Core i5. SSD de 128 GB. 8GB de RAM. Eso es. No tengo otra opción a ese precio. Si quiero un escritorio, no hay nada. El iMac más barato ahora es £ 100 más caro que mis £ 1,000.

Me acerco a las computadoras portátiles con Windows, y ninguna de ellas supera las £ 1,000. Escritorios? Ninguno de ellos supera los £ 1,000 tampoco, a menos que esté en una tienda de lujo o en un refugio para jugadores.

Para las personas normales, una computadora portátil de £ 400 los hará, o una computadora de escritorio de £ 500 que incluye un monitor. Desea comprar y usar, no comprar y configurar, por lo que Windows le gana a Mac en precio al usuario habitual de “web, correo electrónico, fotos y documentos”, y le gana a Linux porque realmente puede comprar una computadora basada en Windows, y no debe preocuparse por crear sus propios controladores nVidia a partir de un script bash.

(Hay varias cosas que han llevado a este punto, incluidas algunas formas muy desagradables de que Microsoft trató con los competidores en el pasado, pero eso es historia. Esta es la situación en la que vivimos ahora).

Alguien lo ha hecho. Se llama IOS y se ejecuta en iPhone, iPad y iPod.

Alguien más lo ha hecho. Se llama Android y se ejecuta en varios dispositivos de varios fabricantes.

Algunos podrían tener, algunos podrían haber pero no se atrevieron. ¿Por qué? ¡Porque Microsoft es un monstruo! Tiene una gran cuota de mercado y es difícil de superar, en caso de que no compren su empresa en primer lugar 🙂

More Interesting

Cómo solucionar un problema de Windows Update que solo mi computadora parece replicar

Estoy planeando comprar una PC en blanco sin SO, entonces, ¿cómo envío todo a mi PC (incluido el SO)?

¿Cuál es una buena PC que puedo ensamblar para el aprendizaje profundo con GTX Titan X?

¿Qué haces cuando encuentras problemas con la computadora? ¿Buscar las soluciones en línea y arreglarlas usted mismo? ¿Pedir ayuda a amigos o profesionales?

¿Por qué las computadoras siguen siendo caras?

Quiero construir una PC principalmente para trabajos relacionados con la edición de video y mi presupuesto es de 60-70 mil rupias indias. ¿Qué tipo de componentes debo poner para un rendimiento óptimo, teniendo en cuenta las restricciones presupuestarias?

¿Qué puedo hacer para que mi PC funcione más rápido y como nueva sin reiniciar?

¿Dónde puedo comprar una buena PC para juegos?

Estoy construyendo una PC para juegos que puede ejecutar juegos en 4K, ya tengo 2 GTX 1080. ¿Qué sitio recomendaría para obtener las partes restantes?

¿Por qué hay diferentes representaciones para las nuevas líneas en Windows, Linux y Mac? ¿Por qué no hay un salto de línea común para todos los sistemas operativos?

¿Cuánto debería cobrarle a mi cliente por construir una PC i7 para él donde está proporcionando todos los componentes?

¿Cómo modificarías una computadora para iniciar Windows en 3 segundos?

¿Qué es bueno: Windows 8.1 o Windows 10?

Dado que las pantallas OLED son comunes en tabletas y teléfonos inteligentes, ¿por qué no hay más monitores OLED?

¿Por qué los videos de mi nueva cámara solo se reconocen como archivos de audio en mi computadora?