{"id":660,"date":"2026-03-07T09:50:18","date_gmt":"2026-03-07T08:50:18","guid":{"rendered":"https:\/\/cienciaytecnology.com\/wordpress\/?p=660"},"modified":"2026-03-07T10:41:18","modified_gmt":"2026-03-07T09:41:18","slug":"windows-segunda-parte","status":"publish","type":"post","link":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/","title":{"rendered":"Windows, segunda parte"},"content":{"rendered":"\n<p>Ahora que tienes Windows funcionando como un servidor en tu Mac\u2011mini, es el momento perfecto para aprenderlo bien. Te voy a preparar <strong>una gu\u00eda completa, clara y pr\u00e1ctica<\/strong>, pensada para alguien que ya domina macOS y Linux. As\u00ed ver\u00e1s Windows con ojos de power\u2011user, no como un usuario normal.<\/p>\n\n\n\n<p>Voy a dividirlo en secciones para que puedas avanzar a tu ritmo:<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 1. Windows vs macOS vs Linux: diferencias reales que importan<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 \ud83e\udde0 Filosof\u00eda del sistema<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Tema<\/th><th>macOS<\/th><th>Linux<\/th><th>Windows<\/th><\/tr><\/thead><tbody><tr><td><strong>Base<\/strong><\/td><td>Unix (BSD)<\/td><td>Unix\u2011like<\/td><td>NT Kernel<\/td><\/tr><tr><td><strong>Permisos<\/strong><\/td><td>POSIX<\/td><td>POSIX<\/td><td>ACLs (m\u00e1s complejos)<\/td><\/tr><tr><td><strong>Paquetes<\/strong><\/td><td>Homebrew<\/td><td>apt\/yum\/pacman<\/td><td>MSI\/EXE + Winget<\/td><\/tr><tr><td><strong>Automatizaci\u00f3n<\/strong><\/td><td>zsh, Automator<\/td><td>Bash, systemd<\/td><td>PowerShell, Task Scheduler<\/td><\/tr><tr><td><strong>Sistema de archivos<\/strong><\/td><td>APFS<\/td><td>ext4, btrfs<\/td><td>NTFS<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Windows no sigue la filosof\u00eda Unix, as\u00ed que muchas cosas funcionan distinto:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>No hay <code>\/etc<\/code>, <code>\/usr<\/code>, <code>\/var<\/code><\/li>\n\n\n\n<li>No hay permisos POSIX (aunque WSL los simula)<\/li>\n\n\n\n<li>No hay systemd<\/li>\n\n\n\n<li>No hay un gestor de paquetes nativo (aunque <strong>Winget<\/strong> ya es casi eso)<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 2. Lo esencial del sistema de archivos en Windows<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Rutas importantes<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>C:\\Windows<\/code> \u2192 el sistema<\/li>\n\n\n\n<li><code>C:\\Program Files<\/code> \u2192 apps de 64 bits<\/li>\n\n\n\n<li><code>C:\\Program Files (x86)<\/code> \u2192 apps de 32 bits<\/li>\n\n\n\n<li><code>C:\\Users\\TU_USUARIO<\/code> \u2192 tu home<\/li>\n\n\n\n<li><code>C:\\Users\\TU_USUARIO\\AppData<\/code> \u2192 equivalente a <code>~\/.config<\/code> + <code>~\/.local<\/code><\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">AppData tiene 3 carpetas:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>Local<\/code> \u2192 datos locales<\/li>\n\n\n\n<li><code>LocalLow<\/code> \u2192 apps con permisos bajos<\/li>\n\n\n\n<li><code>Roaming<\/code> \u2192 configuraciones sincronizables<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 3. El Registro de Windows (Registry)<\/h1>\n\n\n\n<p>Es como si <code>\/etc<\/code>, <code>~\/.config<\/code> y parte del kernel estuvieran en una base de datos gigante.<\/p>\n\n\n\n<p>Se divide en \u201chives\u201d:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>HKEY_LOCAL_MACHINE<\/code> \u2192 configuraci\u00f3n del sistema<\/li>\n\n\n\n<li><code>HKEY_CURRENT_USER<\/code> \u2192 configuraci\u00f3n del usuario<\/li>\n\n\n\n<li><code>HKEY_CLASSES_ROOT<\/code> \u2192 asociaciones de archivos<\/li>\n\n\n\n<li><code>HKEY_USERS<\/code> \u2192 perfiles de usuario<\/li>\n\n\n\n<li><code>HKEY_CURRENT_CONFIG<\/code> \u2192 hardware actual<\/li>\n<\/ul>\n\n\n\n<p>Puedes verlo con:<\/p>\n\n\n\n<p>C\u00f3digo<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>regedit\n<\/code><\/pre>\n\n\n\n<p>Y desde PowerShell:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Item \"HKLM:\\Software\"\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 4. Servicios en Windows (equivalente a systemd)<\/h1>\n\n\n\n<p>Windows usa el <strong>Service Control Manager (SCM)<\/strong>.<\/p>\n\n\n\n<p>Ver servicios:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Service\n<\/code><\/pre>\n\n\n\n<p>Iniciar uno:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Start-Service -Name sshd\n<\/code><\/pre>\n\n\n\n<p>Detener:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Stop-Service -Name wuauserv\n<\/code><\/pre>\n\n\n\n<p>Configurar inicio autom\u00e1tico:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Set-Service -Name sshd -StartupType Automatic\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 5. PowerShell: lo m\u00e1s importante para controlarlo como un pro<\/h1>\n\n\n\n<p>PowerShell no es Bash. Es <strong>orientado a objetos<\/strong>, no a texto.<\/p>\n\n\n\n<p>Esto cambia todo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Ejemplo clave<\/h2>\n\n\n\n<p>En Bash:<\/p>\n\n\n\n<p>bash<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ps aux | grep ssh\n<\/code><\/pre>\n\n\n\n<p>En PowerShell:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Process ssh\n<\/code><\/pre>\n\n\n\n<p>En Bash, la salida es texto. En PowerShell, la salida es <strong>objetos<\/strong>, con propiedades.<\/p>\n\n\n\n<p>Puedes hacer:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>(Get-Process ssh).Id\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 6. Comandos esenciales de PowerShell<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Navegaci\u00f3n<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-ChildItem      # ls\nSet-Location       # cd\nCopy-Item          # cp\nMove-Item          # mv\nRemove-Item        # rm\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Informaci\u00f3n del sistema<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-ComputerInfo\nGet-WmiObject Win32_OperatingSystem\nGet-WmiObject Win32_Processor\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Red<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Test-Connection google.com   # ping\nGet-NetIPAddress\nGet-NetAdapter\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Procesos<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Process\nStop-Process -Name notepad\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Usuarios<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-LocalUser\nNew-LocalUser -Name david -Password (Read-Host -AsSecureString)\nAdd-LocalGroupMember -Group Administrators -Member david\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 7. Winget: el \u201capt\u201d de Windows<\/h1>\n\n\n\n<p>Instalar apps:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>winget install firefox\nwinget install vscode\nwinget install 7zip\n<\/code><\/pre>\n\n\n\n<p>Actualizar todo:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>winget upgrade --all\n<\/code><\/pre>\n\n\n\n<p>Buscar apps:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>winget search python\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 8. Tareas programadas (equivalente a cron)<\/h1>\n\n\n\n<p>Abrir el programador:<\/p>\n\n\n\n<p>C\u00f3digo<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>taskschd.msc\n<\/code><\/pre>\n\n\n\n<p>Desde PowerShell:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>schtasks \/create \/tn \"MiTarea\" \/tr \"powershell.exe -File C:\\script.ps1\" \/sc daily \/st 09:00\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 9. Firewall de Windows<\/h1>\n\n\n\n<p>Ver reglas:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-NetFirewallRule\n<\/code><\/pre>\n\n\n\n<p>Permitir un puerto:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>New-NetFirewallRule -DisplayName \"SSH\" -Direction Inbound -Protocol TCP -LocalPort 22 -Action Allow\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 10. Cosas que Windows hace diferente a Linux\/macOS<\/h1>\n\n\n\n<ul class=\"wp-block-list\">\n<li>No usa systemd \u2192 usa SCM<\/li>\n\n\n\n<li>No usa Bash \u2192 usa PowerShell<\/li>\n\n\n\n<li>No usa permisos POSIX \u2192 usa ACLs<\/li>\n\n\n\n<li>No usa paquetes \u2192 usa EXE\/MSI (aunque Winget ayuda)<\/li>\n\n\n\n<li>No usa <code>\/etc<\/code> \u2192 usa el Registro<\/li>\n\n\n\n<li>No usa logs en <code>\/var\/log<\/code> \u2192 usa el Visor de Eventos<\/li>\n\n\n\n<li>No usa demonios \u2192 usa Servicios<\/li>\n\n\n\n<li>No usa scripts <code>.sh<\/code> \u2192 usa <code>.ps1<\/code><\/li>\n<\/ul>\n\n\n\n<p>Si quieres <strong>aprender Windows \u201ctodo a la vez\u201d<\/strong>, te voy a montar algo que no vas a encontrar en ning\u00fan curso: una <strong>ruta completa<\/strong>, pensada para alguien que ya domina macOS y Linux, y que quiere controlar Windows como un profesional, desde el escritorio hasta el nivel servidor, pasando por PowerShell, automatizaci\u00f3n, seguridad y administraci\u00f3n.<\/p>\n\n\n\n<p>Voy a darte <strong>un plan progresivo<\/strong>, pero cada secci\u00f3n es independiente, as\u00ed que puedes saltar entre ellas seg\u00fan te apetezca.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 1. Entender Windows desde la perspectiva de un usuario de macOS\/Linux<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Lo que Windows hace distinto<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>No es Unix \u2192 no hay <code>\/etc<\/code>, <code>\/usr<\/code>, <code>\/var<\/code><\/li>\n\n\n\n<li>No usa systemd \u2192 usa <strong>Servicios<\/strong><\/li>\n\n\n\n<li>No usa Bash \u2192 usa <strong>PowerShell<\/strong><\/li>\n\n\n\n<li>No usa permisos POSIX \u2192 usa <strong>ACLs<\/strong><\/li>\n\n\n\n<li>No usa paquetes \u2192 usa <strong>Winget<\/strong> (nuevo)<\/li>\n\n\n\n<li>No usa archivos de texto para configuraci\u00f3n \u2192 usa <strong>el Registro<\/strong><\/li>\n\n\n\n<li>No usa logs en carpetas \u2192 usa <strong>el Visor de Eventos<\/strong><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Lo que Windows hace muy bien<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Integraci\u00f3n con hardware<\/li>\n\n\n\n<li>Gesti\u00f3n de drivers<\/li>\n\n\n\n<li>Active Directory (si alg\u00fan d\u00eda te interesa)<\/li>\n\n\n\n<li>PowerShell (muy potente)<\/li>\n\n\n\n<li>Automatizaci\u00f3n empresarial<\/li>\n\n\n\n<li>Virtualizaci\u00f3n con Hyper\u2011V (en Pro\/Enterprise)<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 2. Sistema de archivos de Windows explicado para usuarios Unix<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Rutas clave<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Ruta<\/th><th>Equivalente<\/th><\/tr><\/thead><tbody><tr><td><code>C:\\Users\\David<\/code><\/td><td><code>\/Users\/david<\/code> o <code>\/home\/david<\/code><\/td><\/tr><tr><td><code>C:\\Windows<\/code><\/td><td><code>\/usr<\/code> + <code>\/etc<\/code> + <code>\/bin<\/code> mezclado<\/td><\/tr><tr><td><code>C:\\Program Files<\/code><\/td><td><code>\/Applications<\/code><\/td><\/tr><tr><td><code>C:\\ProgramData<\/code><\/td><td><code>\/var<\/code><\/td><\/tr><tr><td><code>C:\\Users\\David\\AppData<\/code><\/td><td><code>~\/.config<\/code> + <code>~\/.local<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 AppData explicado<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>Local<\/code> \u2192 datos locales (cach\u00e9s, configuraciones)<\/li>\n\n\n\n<li><code>Roaming<\/code> \u2192 configuraciones sincronizables<\/li>\n\n\n\n<li><code>LocalLow<\/code> \u2192 apps con permisos reducidos<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 3. El Registro de Windows (Registry)<\/h1>\n\n\n\n<p>Es como si <code>\/etc<\/code>, <code>~\/.config<\/code> y parte del kernel estuvieran en una base de datos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Verlo:<\/h3>\n\n\n\n<p>C\u00f3digo<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>regedit\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Desde PowerShell:<\/h3>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Item \"HKLM:\\Software\"\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Modificar:<\/h3>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Set-ItemProperty \"HKCU:\\Software\\MiApp\" -Name Config -Value 1\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 4. Servicios (equivalente a systemd)<\/h1>\n\n\n\n<p>Windows usa el <strong>Service Control Manager<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ver servicios:<\/h3>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Service\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Iniciar:<\/h3>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Start-Service sshd\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Detener:<\/h3>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Stop-Service wuauserv\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Habilitar inicio autom\u00e1tico:<\/h3>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Set-Service sshd -StartupType Automatic\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 5. PowerShell: tu nueva arma principal<\/h1>\n\n\n\n<p>PowerShell es <strong>orientado a objetos<\/strong>, no a texto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Ejemplo clave<\/h2>\n\n\n\n<p>En Bash:<\/p>\n\n\n\n<p>bash<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ps aux | grep ssh\n<\/code><\/pre>\n\n\n\n<p>En PowerShell:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Process ssh\n<\/code><\/pre>\n\n\n\n<p>Y puedes hacer:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>(Get-Process ssh).Id\n<\/code><\/pre>\n\n\n\n<p>Porque la salida es un <strong>objeto<\/strong>, no texto.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 6. Comandos esenciales de PowerShell<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Navegaci\u00f3n<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-ChildItem      # ls\nSet-Location       # cd\nCopy-Item          # cp\nMove-Item          # mv\nRemove-Item        # rm\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Informaci\u00f3n del sistema<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-ComputerInfo\nGet-WmiObject Win32_OperatingSystem\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Red<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Test-Connection google.com\nGet-NetIPAddress\nGet-NetAdapter\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Procesos<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Process\nStop-Process -Name notepad\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Usuarios<\/h2>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-LocalUser\nNew-LocalUser -Name david -Password (Read-Host -AsSecureString)\nAdd-LocalGroupMember -Group Administrators -Member david\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 7. Winget: el \u201capt\u201d de Windows<\/h1>\n\n\n\n<p>Instalar apps:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>winget install firefox\nwinget install vscode\nwinget install 7zip\n<\/code><\/pre>\n\n\n\n<p>Actualizar todo:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>winget upgrade --all\n<\/code><\/pre>\n\n\n\n<p>Buscar apps:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>winget search python\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 8. Automatizaci\u00f3n en Windows<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe9 Tareas programadas (equivalente a cron)<\/h2>\n\n\n\n<p>Abrir interfaz:<\/p>\n\n\n\n<p>C\u00f3digo<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>taskschd.msc\n<\/code><\/pre>\n\n\n\n<p>Crear tarea desde PowerShell:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>schtasks \/create \/tn \"MiTarea\" \/tr \"powershell.exe -File C:\\script.ps1\" \/sc daily \/st 09:00\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 9. Firewall de Windows<\/h1>\n\n\n\n<p>Ver reglas:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-NetFirewallRule\n<\/code><\/pre>\n\n\n\n<p>Permitir un puerto:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>New-NetFirewallRule -DisplayName \"SSH\" -Direction Inbound -Protocol TCP -LocalPort 22 -Action Allow\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 10. Seguridad y permisos<\/h1>\n\n\n\n<p>Windows usa <strong>ACLs<\/strong>:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Get-Acl C:\\Carpeta\n<\/code><\/pre>\n\n\n\n<p>Cambiar permisos:<\/p>\n\n\n\n<p>powershell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$acl = Get-Acl C:\\Carpeta\n$rule = New-Object System.Security.AccessControl.FileSystemAccessRule(\"David\",\"FullControl\",\"Allow\")\n$acl.AddAccessRule($rule)\nSet-Acl C:\\Carpeta $acl\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 11. Administraci\u00f3n remota<\/h1>\n\n\n\n<p>Ya tienes SSH funcionando, as\u00ed que puedes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>ejecutar PowerShell remoto<\/li>\n\n\n\n<li>copiar archivos<\/li>\n\n\n\n<li>automatizar tareas desde macOS<\/li>\n<\/ul>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<p>bash<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssh david@IP-de-tu-Windows powershell.exe -Command \"Get-Process\"\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe6 12. Qu\u00e9 puedes aprender a continuaci\u00f3n<\/h1>\n\n\n\n<p>Puedo ense\u00f1arte:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udfe9 PowerShell avanzado<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>pipelines de objetos<\/li>\n\n\n\n<li>m\u00f3dulos<\/li>\n\n\n\n<li>scripts <code>.ps1<\/code><\/li>\n\n\n\n<li>funciones<\/li>\n\n\n\n<li>clases<\/li>\n\n\n\n<li>manejo de errores<\/li>\n\n\n\n<li>automatizaci\u00f3n real<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udfe9 Administraci\u00f3n de Windows como servidor<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>servicios<\/li>\n\n\n\n<li>firewall<\/li>\n\n\n\n<li>usuarios<\/li>\n\n\n\n<li>permisos<\/li>\n\n\n\n<li>tareas programadas<\/li>\n\n\n\n<li>logs<\/li>\n\n\n\n<li>pol\u00edticas de seguridad<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udfe9 Windows como entorno de desarrollo<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>WSL<\/li>\n\n\n\n<li>Docker<\/li>\n\n\n\n<li>Visual Studio Code<\/li>\n\n\n\n<li>Python, Node, etc.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udfe9 Windows como servidor SSH<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>automatizaci\u00f3n desde macOS<\/li>\n\n\n\n<li>scripts remotos<\/li>\n\n\n\n<li>gesti\u00f3n sin escritorio<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udfe2 Para seguir: \u00bfqu\u00e9 quieres dominar primero?<\/h1>\n\n\n\n<p>Puedo empezar por:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>PowerShell avanzado<\/strong><\/li>\n\n\n\n<li><strong>Administraci\u00f3n del sistema<\/strong><\/li>\n\n\n\n<li><strong>Seguridad y permisos<\/strong><\/li>\n\n\n\n<li><strong>Automatizaci\u00f3n<\/strong><\/li>\n\n\n\n<li><strong>WSL y desarrollo<\/strong><\/li>\n\n\n\n<li><strong>Todo mezclado con ejercicios pr\u00e1cticos<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Te explico cada concepto de forma clara y conectando c\u00f3mo encajan dentro de&nbsp;<strong>Windows y sistemas operativos<\/strong>. Algunos vienen del mundo&nbsp;<strong>Unix\/macOS<\/strong>&nbsp;(POSIX) y otros son propios de&nbsp;<strong>Windows<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. Permisos POSIX<\/h1>\n\n\n\n<p>Los&nbsp;<strong>permisos POSIX<\/strong>&nbsp;vienen del est\u00e1ndar&nbsp;<strong>POSIX<\/strong>, usado en sistemas tipo Unix como&nbsp;<strong>Linux<\/strong>&nbsp;o&nbsp;<strong>macOS<\/strong>.<\/p>\n\n\n\n<p>Definen&nbsp;<strong>qui\u00e9n puede hacer qu\u00e9 con un archivo o carpeta<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tres tipos de usuarios<\/h2>\n\n\n\n<p>Cada archivo tiene permisos para:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Owner (usuario propietario)<\/strong><\/li>\n\n\n\n<li><strong>Group (grupo)<\/strong><\/li>\n\n\n\n<li><strong>Others (todos los dem\u00e1s)<\/strong><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Tres tipos de permiso<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Permiso<\/th><th>Significado<\/th><\/tr><\/thead><tbody><tr><td>r<\/td><td>read (leer)<\/td><\/tr><tr><td>w<\/td><td>write (escribir)<\/td><\/tr><tr><td>x<\/td><td>execute (ejecutar)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Ejemplo t\u00edpico:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">-rwxr-xr--<\/pre>\n\n\n\n<p>Significa:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Parte<\/th><th>Significado<\/th><\/tr><\/thead><tbody><tr><td>rwx<\/td><td>propietario puede leer, escribir, ejecutar<\/td><\/tr><tr><td>r-x<\/td><td>grupo puede leer y ejecutar<\/td><\/tr><tr><td>r&#8211;<\/td><td>otros solo pueden leer<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Ejemplo en terminal:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">chmod 755 archivo.sh<\/pre>\n\n\n\n<p>equivale a:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">rwx r-x r-x<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. ACLs (Access Control Lists)<\/h1>\n\n\n\n<p>Las&nbsp;<strong>ACLs<\/strong>&nbsp;son una versi\u00f3n&nbsp;<strong>m\u00e1s avanzada de permisos<\/strong>.<\/p>\n\n\n\n<p>En lugar de solo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>owner<\/li>\n\n\n\n<li>group<\/li>\n\n\n\n<li>others<\/li>\n<\/ul>\n\n\n\n<p>puedes definir permisos&nbsp;<strong>para usuarios concretos<\/strong>.<\/p>\n\n\n\n<p>Ejemplo conceptual:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">archivo.txtusuario Juan \u2192 leer<br>usuario Ana \u2192 leer + escribir<br>grupo admins \u2192 todo<\/pre>\n\n\n\n<p>Esto se llama&nbsp;<strong>Access Control List<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">POSIX vs ACL<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>POSIX<\/th><th>ACL<\/th><\/tr><\/thead><tbody><tr><td>simple<\/td><td>m\u00e1s complejo<\/td><\/tr><tr><td>3 grupos de usuarios<\/td><td>cualquier usuario<\/td><\/tr><tr><td>muy usado en Unix<\/td><td>usado en Windows y Linux<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>En&nbsp;<strong>Windows las ACL son el sistema principal<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. Sistema de archivos NTFS<\/h1>\n\n\n\n<p>El sistema de archivos de Windows moderno es&nbsp;<strong>NTFS<\/strong>.<\/p>\n\n\n\n<p>NTFS significa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">New Technology File System<\/pre>\n\n\n\n<p>Es el sistema usado por&nbsp;<strong>Microsoft Windows<\/strong>&nbsp;desde Windows NT.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qu\u00e9 hace un sistema de archivos<\/h2>\n\n\n\n<p>Un sistema de archivos se encarga de:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>guardar archivos<\/li>\n\n\n\n<li>organizar carpetas<\/li>\n\n\n\n<li>controlar permisos<\/li>\n\n\n\n<li>registrar cambios en disco<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Caracter\u00edsticas de NTFS<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Funci\u00f3n<\/th><th>Explicaci\u00f3n<\/th><\/tr><\/thead><tbody><tr><td>ACLs<\/td><td>permisos avanzados<\/td><\/tr><tr><td>journaling<\/td><td>registro para evitar corrupci\u00f3n<\/td><\/tr><tr><td>compression<\/td><td>compresi\u00f3n de archivos<\/td><\/tr><tr><td>encryption<\/td><td>cifrado con EFS<\/td><\/tr><tr><td>quotas<\/td><td>l\u00edmite de espacio por usuario<\/td><\/tr><tr><td>links<\/td><td>enlaces duros<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">ACL en NTFS<\/h3>\n\n\n\n<p>Cuando ves esto en Windows:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Propiedades \u2192 Seguridad<\/pre>\n\n\n\n<p>est\u00e1s viendo&nbsp;<strong>ACLs de NTFS<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Usuario: David<br>Permisos:<br>\u2714 Leer<br>\u2714 Escribir<br>\u2714 Modificar<br>\u2716 Eliminar<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. Instaladores MSI y EXE<\/h1>\n\n\n\n<p>En Windows el software se instala normalmente con:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">MSI<\/h3>\n\n\n\n<p>Formato est\u00e1ndar de instalaci\u00f3n.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">programa.msi<\/pre>\n\n\n\n<p>MSI significa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Microsoft Installer<\/pre>\n\n\n\n<p>Ventajas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>instalaci\u00f3n estructurada<\/li>\n\n\n\n<li>reversible<\/li>\n\n\n\n<li>compatible con administraci\u00f3n corporativa<\/li>\n\n\n\n<li>puede instalarse con scripts<\/li>\n<\/ul>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">msiexec \/i programa.msi<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">EXE<\/h3>\n\n\n\n<p>Un ejecutable normal.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">setup.exe<\/pre>\n\n\n\n<p>Puede contener:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>instalador propio<\/li>\n\n\n\n<li>scripts<\/li>\n\n\n\n<li>MSI dentro<\/li>\n<\/ul>\n\n\n\n<p>No hay est\u00e1ndar fijo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. winget<\/h1>\n\n\n\n<p><strong>Windows Package Manager<\/strong>&nbsp;es el gestor de paquetes de Windows.<\/p>\n\n\n\n<p>Es parecido a:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Sistema<\/th><th>Gestor<\/th><\/tr><\/thead><tbody><tr><td>Linux<\/td><td>apt<\/td><\/tr><tr><td>macOS<\/td><td>brew<\/td><\/tr><tr><td>Windows<\/td><td>winget<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<p>Instalar&nbsp;<strong>Visual Studio Code<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">winget install Microsoft.VisualStudioCode<\/pre>\n\n\n\n<p>Actualizar todo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">winget upgrade --all<\/pre>\n\n\n\n<p>Internamente winget descarga:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MSI<\/li>\n\n\n\n<li>EXE<\/li>\n\n\n\n<li>MSIX<\/li>\n<\/ul>\n\n\n\n<p>y los ejecuta autom\u00e1ticamente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Task Scheduler<\/h1>\n\n\n\n<p>El planificador de tareas de Windows es&nbsp;<strong>Task Scheduler<\/strong>.<\/p>\n\n\n\n<p>Sirve para&nbsp;<strong>automatizar programas o scripts<\/strong>.<\/p>\n\n\n\n<p>Es equivalente al&nbsp;<strong>cron<\/strong>&nbsp;de Linux.<\/p>\n\n\n\n<p>Comparaci\u00f3n:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Linux<\/th><th>Windows<\/th><\/tr><\/thead><tbody><tr><td>cron<\/td><td>Task Scheduler<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Qu\u00e9 puede hacer<\/h2>\n\n\n\n<p>Ejecutar:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>scripts<\/li>\n\n\n\n<li>programas<\/li>\n\n\n\n<li>backups<\/li>\n\n\n\n<li>tareas del sistema<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplos<\/h2>\n\n\n\n<p>Ejecutar un script:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">backup.ps1<\/pre>\n\n\n\n<p>Cada d\u00eda a las 3:00.<\/p>\n\n\n\n<p>O:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>al arrancar el PC<\/li>\n\n\n\n<li>al iniciar sesi\u00f3n<\/li>\n\n\n\n<li>al conectarse a red<\/li>\n\n\n\n<li>cuando pasa cierto evento<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. C\u00f3mo se conectan todos estos conceptos<\/h1>\n\n\n\n<p>Dentro de&nbsp;<strong>Windows<\/strong>&nbsp;todo encaja as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Windows<br>   \u2502<br>   \u251c\u2500\u2500 Sistema de archivos<br>   \u2502      \u2514\u2500\u2500 NTFS<br>   \u2502             \u2514\u2500\u2500 ACLs (permisos)<br>   \u2502<br>   \u251c\u2500\u2500 Instalaci\u00f3n de software<br>   \u2502      \u251c\u2500\u2500 MSI<br>   \u2502      \u251c\u2500\u2500 EXE<br>   \u2502      \u2514\u2500\u2500 winget<br>   \u2502<br>   \u2514\u2500\u2500 Automatizaci\u00f3n<br>          \u2514\u2500\u2500 Task Scheduler<\/pre>\n\n\n\n<p>Mientras que en&nbsp;<strong>Linux\/macOS<\/strong>&nbsp;ser\u00eda:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Sistema Unix<br>   \u2502<br>   \u251c\u2500\u2500 Permisos POSIX<br>   \u251c\u2500\u2500 ACL opcionales<br>   \u251c\u2500\u2500 gestores de paquetes<br>   \u2502       \u2514\u2500\u2500 apt \/ brew<br>   \u2514\u2500\u2500 automatizaci\u00f3n<br>           \u2514\u2500\u2500 cron<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Si quieres, en el siguiente paso puedo explicarte&nbsp;<strong>algo muy interesante que casi nadie entiende bien<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>c\u00f3mo funciona\u00a0<strong>NTFS por dentro (MFT, journaling, etc.)<\/strong><\/li>\n\n\n\n<li>por qu\u00e9\u00a0<strong>Windows es m\u00e1s complejo que Linux en permisos<\/strong><\/li>\n\n\n\n<li>y c\u00f3mo\u00a0<strong>macOS mezcla POSIX + ACL de forma curiosa<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>Ese nivel ya es&nbsp;<strong>arquitectura real del sistema operativo<\/strong>.<\/p>\n\n\n\n<p>vamos a bajar&nbsp;<strong>un nivel m\u00e1s profundo<\/strong>, porque aqu\u00ed entramos ya en&nbsp;<strong>arquitectura real de sistemas operativos<\/strong>. Entender esto te permite comprender por qu\u00e9&nbsp;<strong>Windows, Linux y macOS gestionan archivos y permisos de forma distinta<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. C\u00f3mo funciona NTFS por dentro<\/h1>\n\n\n\n<p>El sistema de archivos&nbsp;<strong>NTFS<\/strong>&nbsp;no guarda los archivos como la gente imagina (carpetitas con documentos dentro).<\/p>\n\n\n\n<p>En realidad funciona como&nbsp;<strong>una gran base de datos<\/strong>.<\/p>\n\n\n\n<p>La pieza central es:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">MFT (Master File Table)<\/h3>\n\n\n\n<p>La&nbsp;<strong>Master File Table<\/strong>&nbsp;es una tabla que contiene&nbsp;<strong>un registro por cada archivo del disco<\/strong>.<\/p>\n\n\n\n<p>Ejemplo conceptual:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>ID archivo<\/th><th>nombre<\/th><th>ubicaci\u00f3n<\/th><th>tama\u00f1o<\/th><th>permisos<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td>Windows<\/td><td>sector 4030<\/td><td>2GB<\/td><td>ACL<\/td><\/tr><tr><td>2<\/td><td>foto.jpg<\/td><td>sector 84000<\/td><td>5MB<\/td><td>ACL<\/td><\/tr><tr><td>3<\/td><td>documento.txt<\/td><td>sector 21000<\/td><td>4KB<\/td><td>ACL<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Cada archivo tiene una&nbsp;<strong>entrada en la MFT<\/strong>.<\/p>\n\n\n\n<p>Dentro de esa entrada se guardan:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>nombre<\/li>\n\n\n\n<li>tama\u00f1o<\/li>\n\n\n\n<li>ubicaci\u00f3n en disco<\/li>\n\n\n\n<li>timestamps<\/li>\n\n\n\n<li>permisos<\/li>\n\n\n\n<li>atributos<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Archivos peque\u00f1os<\/h2>\n\n\n\n<p>Algo curioso de NTFS:<\/p>\n\n\n\n<p>Si el archivo es muy peque\u00f1o (\u2248 &lt;1KB)&nbsp;<strong>puede guardarse directamente dentro de la MFT<\/strong>.<\/p>\n\n\n\n<p>Esto acelera much\u00edsimo el acceso.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. Journaling (registro de cambios)<\/h1>\n\n\n\n<p>NTFS es un sistema&nbsp;<strong>con journaling<\/strong>.<\/p>\n\n\n\n<p>Esto significa que antes de modificar algo se registra la operaci\u00f3n.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 quieres borrar un archivo<br>2\ufe0f\u20e3 NTFS escribe en el journal:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">voy a borrar archivo X<\/pre>\n\n\n\n<p>3\ufe0f\u20e3 realiza la operaci\u00f3n<\/p>\n\n\n\n<p>Si el ordenador se apaga inesperadamente, al arrancar el sistema revisa el journal y&nbsp;<strong>repara inconsistencias<\/strong>.<\/p>\n\n\n\n<p>Por eso Windows rara vez corrompe discos NTFS.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. C\u00f3mo funcionan los permisos en Windows<\/h1>\n\n\n\n<p>Windows usa&nbsp;<strong>Access Control List<\/strong>.<\/p>\n\n\n\n<p>Cada archivo tiene una lista llamada:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Security Descriptor<\/pre>\n\n\n\n<p>Dentro est\u00e1 la ACL.<\/p>\n\n\n\n<p>Ejemplo conceptual:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">archivo.txtACL:<br>- David \u2192 leer\/escribir<br>- Administradores \u2192 control total<br>- invitados \u2192 solo leer<\/pre>\n\n\n\n<p>Cuando un programa intenta abrir el archivo:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 Windows mira qui\u00e9n es el usuario<br>2\ufe0f\u20e3 compara con la ACL<br>3\ufe0f\u20e3 decide si puede acceder<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. Diferencia profunda con POSIX<\/h1>\n\n\n\n<p>Los permisos&nbsp;<strong>POSIX<\/strong>&nbsp;(Linux\/macOS) son mucho m\u00e1s simples.<\/p>\n\n\n\n<p>Un archivo solo tiene:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">owner<br>group<br>others<\/pre>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">-rwxr-xr-x<\/pre>\n\n\n\n<p>Esto significa:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>usuario<\/th><th>permisos<\/th><\/tr><\/thead><tbody><tr><td>owner<\/td><td>rwx<\/td><\/tr><tr><td>group<\/td><td>r-x<\/td><\/tr><tr><td>others<\/td><td>r-x<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Limitaci\u00f3n<\/h3>\n\n\n\n<p>No puedes decir:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Juan \u2192 leer<br>Ana \u2192 escribir<br>Carlos \u2192 nada<\/pre>\n\n\n\n<p>POSIX no lo permite directamente.<\/p>\n\n\n\n<p>Por eso existen&nbsp;<strong>ACL POSIX extendidas<\/strong>, pero no son tan integradas como en Windows.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. C\u00f3mo macOS mezcla los dos sistemas<\/h1>\n\n\n\n<p>El sistema de archivos moderno de macOS es&nbsp;<strong>APFS<\/strong>.<\/p>\n\n\n\n<p>Apple usa&nbsp;<strong>dos capas de permisos<\/strong>:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 POSIX tradicional<br>2\ufe0f\u20e3 ACL estilo Windows<\/p>\n\n\n\n<p>Por eso a veces en macOS ves cosas raras como:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">-rwxr-xr-x+<\/pre>\n\n\n\n<p>El&nbsp;<strong>+<\/strong>&nbsp;significa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">hay ACL adicionales<\/pre>\n\n\n\n<p>Puedes verlas con:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ls -le<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. C\u00f3mo se eval\u00faan los permisos realmente<\/h1>\n\n\n\n<p>Cuando un programa intenta abrir un archivo, el sistema hace algo as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Programa quiere abrir archivo<br>        \u2502<br>Sistema identifica usuario<br>        \u2502<br>Lee permisos del archivo<br>        \u2502<br>Eval\u00faa reglas<br>        \u2502<br>Permitir \/ Denegar<\/pre>\n\n\n\n<p>En Windows el algoritmo es m\u00e1s complejo porque existen:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>herencia de permisos<\/li>\n\n\n\n<li>grupos<\/li>\n\n\n\n<li>reglas expl\u00edcitas<\/li>\n\n\n\n<li>reglas de denegaci\u00f3n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. La herencia de permisos (muy importante)<\/h1>\n\n\n\n<p>En NTFS los permisos&nbsp;<strong>se heredan desde las carpetas<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Datos<\/pre>\n\n\n\n<p>ACL:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Administradores \u2192 control total<br>Usuarios \u2192 leer<\/pre>\n\n\n\n<p>Todos los archivos dentro heredar\u00e1n esos permisos autom\u00e1ticamente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. C\u00f3mo funcionan realmente los instaladores MSI<\/h1>\n\n\n\n<p>El sistema&nbsp;<strong>Windows Installer<\/strong>&nbsp;usa paquetes&nbsp;<strong>MSI<\/strong>.<\/p>\n\n\n\n<p>Un MSI no es simplemente un instalador.<\/p>\n\n\n\n<p>Es&nbsp;<strong>una base de datos estructurada<\/strong>.<\/p>\n\n\n\n<p>Dentro hay tablas como:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>tabla<\/th><th>funci\u00f3n<\/th><\/tr><\/thead><tbody><tr><td>File<\/td><td>archivos a copiar<\/td><\/tr><tr><td>Registry<\/td><td>claves de registro<\/td><\/tr><tr><td>Shortcut<\/td><td>accesos directos<\/td><\/tr><tr><td>Component<\/td><td>componentes instalables<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Cuando instalas:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">msiexec \/i programa.msi<\/pre>\n\n\n\n<p>Windows:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 lee la base de datos<br>2\ufe0f\u20e3 ejecuta las acciones<br>3\ufe0f\u20e3 registra la instalaci\u00f3n<\/p>\n\n\n\n<p>Por eso puede:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>reparar programas<\/li>\n\n\n\n<li>desinstalar limpiamente<\/li>\n\n\n\n<li>actualizar<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. C\u00f3mo funciona winget por dentro<\/h1>\n\n\n\n<p>El gestor&nbsp;<strong>Windows Package Manager<\/strong>&nbsp;es b\u00e1sicamente:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">base de datos de software<br>+<br>scripts de instalaci\u00f3n<\/pre>\n\n\n\n<p>Cuando haces:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">winget install vlc<\/pre>\n\n\n\n<p>ocurre:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 busca en repositorio<br>2\ufe0f\u20e3 descarga MSI\/EXE<br>3\ufe0f\u20e3 ejecuta instalaci\u00f3n silenciosa<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Task Scheduler por dentro<\/h1>\n\n\n\n<p>El planificador&nbsp;<strong>Task Scheduler<\/strong>&nbsp;guarda las tareas en:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Windows\\System32\\Tasks<\/pre>\n\n\n\n<p>Cada tarea es un archivo XML con:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>triggers (cuando ejecutar)<\/li>\n\n\n\n<li>acciones<\/li>\n\n\n\n<li>usuario<\/li>\n\n\n\n<li>permisos<\/li>\n<\/ul>\n\n\n\n<p>Ejemplo de trigger:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">cada d\u00eda a las 03:00<\/pre>\n\n\n\n<p>Acci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ejecutar script backup.ps1<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">11. C\u00f3mo encaja todo en Windows<\/h1>\n\n\n\n<p>Arquitectura simplificada:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Aplicaciones<br>      \u2502<br>      \u2502 usan<br>      \u25bc<br>API de Windows<br>      \u2502<br>      \u25bc<br>Sistema de seguridad<br>      \u2502<br>      \u251c\u2500\u2500 usuarios<br>      \u251c\u2500\u2500 tokens<br>      \u2514\u2500\u2500 ACL<br>      \u2502<br>      \u25bc<br>Sistema de archivos NTFS<br>      \u2502<br>      \u251c\u2500\u2500 MFT<br>      \u251c\u2500\u2500 Journal<br>      \u2514\u2500\u2500 almacenamiento en disco<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Si quieres, puedo ense\u00f1arte ahora&nbsp;<strong>algo que suele fascinar a los ingenieros de sistemas<\/strong>:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 c\u00f3mo&nbsp;<strong>Windows decide realmente si un usuario puede abrir un archivo (access token)<\/strong><br>2\ufe0f\u20e3 por qu\u00e9&nbsp;<strong>un administrador a veces no puede borrar un archivo<\/strong><br>3\ufe0f\u20e3 c\u00f3mo funcionan&nbsp;<strong>los enlaces, streams ocultos y metadatos en NTFS<\/strong><\/p>\n\n\n\n<p>Es una parte bastante sorprendente del dise\u00f1o de Windows.<\/p>\n\n\n\n<p>Ahora entramos en&nbsp;<strong>el nivel interno de seguridad de Windows<\/strong>, que es una de las partes m\u00e1s sofisticadas del sistema. Esto explica cosas que a muchos usuarios les parecen misteriosas, como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>por qu\u00e9\u00a0<strong>un administrador no puede borrar ciertos archivos<\/strong><\/li>\n\n\n\n<li>por qu\u00e9 Windows dice\u00a0<strong>\u201cacceso denegado\u201d aunque seas admin<\/strong><\/li>\n\n\n\n<li>o c\u00f3mo decide realmente si un programa puede abrir un archivo.<\/li>\n<\/ul>\n\n\n\n<p>Todo gira alrededor de tres conceptos:&nbsp;<strong>tokens, SIDs y ACLs<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. El Access Token (la identidad real de un proceso)<\/h1>\n\n\n\n<p>Cuando inicias sesi\u00f3n en&nbsp;<strong>Microsoft Windows<\/strong>, el sistema crea algo llamado&nbsp;<strong>Access Token<\/strong>.<\/p>\n\n\n\n<p>Un&nbsp;<strong>Access Token<\/strong>&nbsp;es b\u00e1sicamente un objeto que dice:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Qui\u00e9n eres<br>A qu\u00e9 grupos perteneces<br>Qu\u00e9 privilegios tienes<\/pre>\n\n\n\n<p>Ejemplo conceptual:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Usuario: David<br>Grupos:<br> - Usuarios<br> - AdministradoresPrivilegios:<br> - apagar el sistema<br> - instalar software<\/pre>\n\n\n\n<p>Ese token se&nbsp;<strong>adjunta a todos los programas que ejecutas<\/strong>.<\/p>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">explorer.exe<br>chrome.exe<br>powershell.exe<\/pre>\n\n\n\n<p>Todos heredan&nbsp;<strong>tu token<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. SID (Security Identifier)<\/h1>\n\n\n\n<p>Windows&nbsp;<strong>no usa nombres de usuario internamente<\/strong>.<\/p>\n\n\n\n<p>Usa identificadores llamados&nbsp;<strong>Security Identifier<\/strong>.<\/p>\n\n\n\n<p>Ejemplo de SID real:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">S-1-5-21-3623811015-3361044348-30300820-1013<\/pre>\n\n\n\n<p>Cada:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>usuario<\/li>\n\n\n\n<li>grupo<\/li>\n\n\n\n<li>sistema<\/li>\n<\/ul>\n\n\n\n<p>tiene uno.<\/p>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>identidad<\/th><th>SID<\/th><\/tr><\/thead><tbody><tr><td>usuario<\/td><td>\u00fanico<\/td><\/tr><tr><td>grupo administradores<\/td><td>fijo<\/td><\/tr><tr><td>sistema<\/td><td>fijo<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Esto permite que el sistema funcione incluso si cambias el nombre del usuario.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. C\u00f3mo Windows decide si puedes abrir un archivo<\/h1>\n\n\n\n<p>Cuando intentas abrir un archivo en&nbsp;<strong>NTFS<\/strong>, Windows ejecuta algo parecido a este algoritmo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Paso 1<\/h3>\n\n\n\n<p>El programa pide acceso.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">abrir documento.txt<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Paso 2<\/h3>\n\n\n\n<p>El sistema mira el&nbsp;<strong>Access Token<\/strong>&nbsp;del proceso.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Token contiene:SID usuario<br>SID grupos<br>privilegios<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Paso 3<\/h3>\n\n\n\n<p>Windows lee la&nbsp;<strong>ACL del archivo<\/strong>.<\/p>\n\n\n\n<p>La&nbsp;<strong>Access Control List<\/strong>&nbsp;puede ser algo as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ACL documento.txtAdministradores \u2192 control total<br>Usuarios \u2192 leer<br>Invitados \u2192 denegar<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Paso 4<\/h3>\n\n\n\n<p>Windows compara:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">TOKEN vs ACL<\/pre>\n\n\n\n<p>Si encuentra coincidencia:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">permiso concedido<\/pre>\n\n\n\n<p>Si encuentra regla de denegaci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">acceso denegado<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. La regla importante: DENY gana siempre<\/h1>\n\n\n\n<p>En Windows existe algo clave:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">DENY &gt; ALLOW<\/pre>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Administradores \u2192 permitir<br>Usuario David \u2192 denegar<\/pre>\n\n\n\n<p>Resultado:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">David no puede acceder<\/pre>\n\n\n\n<p>Aunque sea administrador.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Por qu\u00e9 a veces un administrador no puede borrar archivos<\/h1>\n\n\n\n<p>Esto pasa mucho con archivos del sistema.<\/p>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Windows\\System32<\/pre>\n\n\n\n<p>Muchos archivos pertenecen a:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">TrustedInstaller<\/pre>\n\n\n\n<p>Este es un servicio especial llamado:<\/p>\n\n\n\n<p>Windows Modules Installer<\/p>\n\n\n\n<p>Eso significa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">owner = TrustedInstaller<\/pre>\n\n\n\n<p>Aunque seas administrador,&nbsp;<strong>no eres el propietario<\/strong>.<\/p>\n\n\n\n<p>Por eso Windows bloquea cambios.<\/p>\n\n\n\n<p>Para modificarlos hay que:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 tomar propiedad<br>2\ufe0f\u20e3 cambiar ACL<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. La propiedad de archivos<\/h1>\n\n\n\n<p>Cada archivo en NTFS tiene un&nbsp;<strong>owner<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Owner: SYSTEM<\/pre>\n\n\n\n<p>El propietario puede:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>cambiar permisos<\/li>\n\n\n\n<li>delegar acceso<\/li>\n<\/ul>\n\n\n\n<p>Esto es independiente de las ACL.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. UAC (otro mecanismo de seguridad)<\/h1>\n\n\n\n<p>Desde&nbsp;<strong>Windows Vista<\/strong>&nbsp;existe el&nbsp;<strong>User Account Control<\/strong>.<\/p>\n\n\n\n<p>Cuando eres administrador, Windows&nbsp;<strong>no usa tu token completo<\/strong>.<\/p>\n\n\n\n<p>Crea dos tokens:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Token normal<br>Token administrador<\/pre>\n\n\n\n<p>Los programas normales usan el&nbsp;<strong>token limitado<\/strong>.<\/p>\n\n\n\n<p>Solo cuando aparece:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\u00bfDesea permitir que esta aplicaci\u00f3n haga cambios?<\/pre>\n\n\n\n<p>Windows activa el token completo.<\/p>\n\n\n\n<p>Esto evita malware.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Los ADS: archivos ocultos dentro de archivos<\/h1>\n\n\n\n<p>NTFS tiene algo muy curioso llamado:<\/p>\n\n\n\n<p><strong>Alternate Data Streams<\/strong><\/p>\n\n\n\n<p>Permite que un archivo tenga&nbsp;<strong>varios flujos de datos<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">archivo.txt<\/pre>\n\n\n\n<p>puede contener:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">contenido principal<br>+<br>stream oculto<\/pre>\n\n\n\n<p>Ejemplo real:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">archivo.txt:secret.txt<\/pre>\n\n\n\n<p>Esto se us\u00f3 mucho en:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>malware<\/li>\n\n\n\n<li>ocultar datos<\/li>\n\n\n\n<li>metadatos<\/li>\n<\/ul>\n\n\n\n<p>Puedes verlo con:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">dir \/r<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Enlaces en NTFS<\/h1>\n\n\n\n<p>NTFS tambi\u00e9n soporta varios tipos de enlaces.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Hard links<\/h3>\n\n\n\n<p>Un archivo puede tener&nbsp;<strong>varios nombres<\/strong>&nbsp;apuntando al mismo contenido.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Symbolic links<\/h3>\n\n\n\n<p>Parecido a Linux.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">mklink enlace.txt original.txt<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Junctions<\/h3>\n\n\n\n<p>Enlaces a directorios.<\/p>\n\n\n\n<p>Muy usados por Windows para compatibilidad.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. C\u00f3mo ve Windows realmente el disco<\/h1>\n\n\n\n<p>La estructura simplificada es:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Disco<br> \u2502<br> \u251c\u2500\u2500 Boot sector<br> \u2502<br> \u251c\u2500\u2500 MFT<br> \u2502     \u2502<br> \u2502     \u251c\u2500\u2500 archivo1<br> \u2502     \u251c\u2500\u2500 archivo2<br> \u2502     \u2514\u2500\u2500 carpeta<br> \u2502<br> \u251c\u2500\u2500 Journal<br> \u2502<br> \u2514\u2500\u2500 Datos reales<\/pre>\n\n\n\n<p>La&nbsp;<strong>Master File Table<\/strong>&nbsp;es b\u00e1sicamente el \u00edndice de todo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">11. Curiosidad interesante<\/h1>\n\n\n\n<p>En NTFS&nbsp;<strong>todo es un archivo<\/strong>, incluso:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$MFT<br>$LogFile<br>$Bitmap<br>$Secure<\/pre>\n\n\n\n<p>Son archivos internos del sistema de archivos.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Si quieres, puedo ense\u00f1arte algo todav\u00eda m\u00e1s interesante (nivel&nbsp;<strong>ingenier\u00eda de sistemas<\/strong>):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>c\u00f3mo funcionan\u00a0<strong>los procesos y el kernel de Windows<\/strong><\/li>\n\n\n\n<li>qu\u00e9 diferencia hay entre\u00a0<strong>kernel mode y user mode<\/strong><\/li>\n\n\n\n<li>c\u00f3mo interact\u00faan\u00a0<strong>drivers, memoria y sistema de archivos<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Eso ya explica&nbsp;<strong>c\u00f3mo funciona realmente un sistema operativo moderno<\/strong>.<\/p>\n\n\n\n<p>Ahora vamos a entrar en&nbsp;<strong>la arquitectura real de un sistema operativo moderno<\/strong>, usando como ejemplo&nbsp;<strong>Microsoft Windows<\/strong>. Esto explica c\u00f3mo interact\u00faan:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>programas<\/li>\n\n\n\n<li>memoria<\/li>\n\n\n\n<li>disco<\/li>\n\n\n\n<li>drivers<\/li>\n\n\n\n<li>hardware<\/li>\n<\/ul>\n\n\n\n<p>Todo gira alrededor de dos niveles fundamentales:&nbsp;<strong>User Mode<\/strong>&nbsp;y&nbsp;<strong>Kernel Mode<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. User Mode vs Kernel Mode<\/h1>\n\n\n\n<p>Todos los sistemas operativos modernos separan el software en dos mundos:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Modo<\/th><th>Qu\u00e9 es<\/th><\/tr><\/thead><tbody><tr><td>User Mode<\/td><td>donde se ejecutan los programas normales<\/td><\/tr><tr><td>Kernel Mode<\/td><td>donde vive el n\u00facleo del sistema<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>En Windows el n\u00facleo se llama&nbsp;<strong>Windows NT kernel<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">User Mode<\/h2>\n\n\n\n<p>Aqu\u00ed viven programas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>navegadores<\/li>\n\n\n\n<li>editores<\/li>\n\n\n\n<li>juegos<\/li>\n\n\n\n<li>scripts<\/li>\n<\/ul>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Chrome<br>Word<br>Python<\/pre>\n\n\n\n<p>Si un programa falla en&nbsp;<strong>User Mode<\/strong>, normalmente&nbsp;<strong>solo se cierra ese programa<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Kernel Mode<\/h2>\n\n\n\n<p>Aqu\u00ed vive el sistema operativo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>gesti\u00f3n de memoria<\/li>\n\n\n\n<li>drivers<\/li>\n\n\n\n<li>sistema de archivos<\/li>\n\n\n\n<li>seguridad<\/li>\n<\/ul>\n\n\n\n<p>Si algo falla aqu\u00ed \u2192&nbsp;<strong>pantalla azul (BSOD)<\/strong>.<\/p>\n\n\n\n<p>La famosa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Blue Screen of Death<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. C\u00f3mo un programa accede al sistema<\/h1>\n\n\n\n<p>Un programa&nbsp;<strong>no puede acceder directamente al hardware<\/strong>.<\/p>\n\n\n\n<p>Debe usar la API del sistema.<\/p>\n\n\n\n<p>En Windows esto se hace mediante&nbsp;<strong>Windows API<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<p>Un programa quiere abrir un archivo.<\/p>\n\n\n\n<p>Proceso real:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Programa<br>   \u2502<br>Windows API<br>   \u2502<br>Kernel<br>   \u2502<br>Sistema de archivos<br>   \u2502<br>Disco<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. Las System Calls<\/h1>\n\n\n\n<p>Cuando un programa necesita algo del sistema usa&nbsp;<strong>system calls<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">open file<br>read file<br>create process<br>allocate memory<\/pre>\n\n\n\n<p>Esto cambia temporalmente de:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">User Mode \u2192 Kernel Mode<\/pre>\n\n\n\n<p>y luego vuelve.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. Procesos y memoria<\/h1>\n\n\n\n<p>Cada programa que ejecutas se convierte en un&nbsp;<strong>proceso<\/strong>.<\/p>\n\n\n\n<p>Un proceso tiene:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>memoria propia<\/li>\n\n\n\n<li>hilos de ejecuci\u00f3n<\/li>\n\n\n\n<li>recursos<\/li>\n<\/ul>\n\n\n\n<p>La memoria de cada proceso est\u00e1&nbsp;<strong>aislada<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Proceso A<br>   memoria: 0x00000000 - 0x1FFFFFFFProceso B<br>   memoria: 0x00000000 - 0x1FFFFFFF<\/pre>\n\n\n\n<p>Aunque las direcciones sean iguales,&nbsp;<strong>apuntan a memoria f\u00edsica distinta<\/strong>.<\/p>\n\n\n\n<p>Esto lo gestiona la&nbsp;<strong>memoria virtual<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Memoria virtual<\/h1>\n\n\n\n<p>Todos los sistemas modernos usan&nbsp;<strong>Virtual memory<\/strong>.<\/p>\n\n\n\n<p>Significa que el sistema crea la ilusi\u00f3n de que cada programa tiene su propio espacio de memoria.<\/p>\n\n\n\n<p>Internamente usa:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>RAM<\/li>\n\n\n\n<li>disco (archivo de paginaci\u00f3n)<\/li>\n<\/ul>\n\n\n\n<p>En Windows el archivo es:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pagefile.sys<\/pre>\n\n\n\n<p>Si falta RAM:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">RAM \u2192 disco<\/pre>\n\n\n\n<p>Esto se llama&nbsp;<strong>paginaci\u00f3n<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Los drivers<\/h1>\n\n\n\n<p>Los drivers son programas que permiten al sistema hablar con hardware.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>tarjeta gr\u00e1fica<\/li>\n\n\n\n<li>disco<\/li>\n\n\n\n<li>red<\/li>\n\n\n\n<li>USB<\/li>\n<\/ul>\n\n\n\n<p>En Windows se llaman&nbsp;<strong>Device driver<\/strong>.<\/p>\n\n\n\n<p>Muchos drivers se ejecutan&nbsp;<strong>en Kernel Mode<\/strong>.<\/p>\n\n\n\n<p>Por eso:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>un driver mal escrito<\/li>\n\n\n\n<li>puede causar BSOD.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. C\u00f3mo se crea un proceso<\/h1>\n\n\n\n<p>Cuando ejecutas un programa ocurre algo as\u00ed:<\/p>\n\n\n\n<p>1\ufe0f\u20e3 doble clic en archivo<\/p>\n\n\n\n<p>2\ufe0f\u20e3 Windows crea un proceso<\/p>\n\n\n\n<p>3\ufe0f\u20e3 carga el ejecutable en memoria<\/p>\n\n\n\n<p>4\ufe0f\u20e3 crea un hilo principal<\/p>\n\n\n\n<p>5\ufe0f\u20e3 asigna un&nbsp;<strong>Access Token<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>Proceso simplificado:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">EXE<br> \u2502<br>loader de Windows<br> \u2502<br>proceso en memoria<br> \u2502<br>ejecuci\u00f3n<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. El scheduler (planificador)<\/h1>\n\n\n\n<p>El CPU no ejecuta un programa entero seguido.<\/p>\n\n\n\n<p>El sistema operativo usa un planificador llamado&nbsp;<strong>scheduler<\/strong>.<\/p>\n\n\n\n<p>En Windows es parte del kernel.<\/p>\n\n\n\n<p>Funciona as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Proceso A \u2192 5 ms<br>Proceso B \u2192 5 ms<br>Proceso C \u2192 5 ms<\/pre>\n\n\n\n<p>Esto ocurre miles de veces por segundo.<\/p>\n\n\n\n<p>Por eso parece que&nbsp;<strong>todo ocurre a la vez<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Interrupciones del hardware<\/h1>\n\n\n\n<p>Cuando el hardware necesita atenci\u00f3n env\u00eda una&nbsp;<strong>interrupci\u00f3n<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>llega un paquete de red<\/li>\n\n\n\n<li>pulsas una tecla<\/li>\n\n\n\n<li>termina una operaci\u00f3n de disco<\/li>\n<\/ul>\n\n\n\n<p>Entonces:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Hardware<br>   \u2502<br>Interrupci\u00f3n<br>   \u2502<br>Driver<br>   \u2502<br>Kernel<br>   \u2502<br>Programa<\/pre>\n\n\n\n<p>Esto permite que el sistema sea&nbsp;<strong>reactivo<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. C\u00f3mo encajan todos los componentes<\/h1>\n\n\n\n<p>Arquitectura simplificada:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Aplicaciones<br>   \u2502<br>User Mode<br>   \u2502<br>Windows API<br>   \u2502<br>---------------------<br>Kernel Mode<br>---------------------<br>   \u2502<br>Kernel NT<br>   \u2502<br> \u251c memoria<br> \u251c scheduler<br> \u251c seguridad<br> \u251c sistema de archivos<br> \u2514 drivers<br>   \u2502<br>Hardware<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">11. Curiosidad muy interesante<\/h1>\n\n\n\n<p>Muchos expertos consideran que&nbsp;<strong>Linux<\/strong>&nbsp;y&nbsp;<strong>Microsoft Windows<\/strong>&nbsp;tienen filosof\u00edas muy distintas:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Windows<\/th><th>Linux<\/th><\/tr><\/thead><tbody><tr><td>muchos componentes en kernel<\/td><td>kernel m\u00e1s peque\u00f1o<\/td><\/tr><tr><td>m\u00e1s APIs internas<\/td><td>m\u00e1s modular<\/td><\/tr><tr><td>muy orientado a compatibilidad<\/td><td>orientado a simplicidad<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Por otro lado&nbsp;<strong>macOS<\/strong>&nbsp;usa un kernel h\u00edbrido llamado&nbsp;<strong>XNU<\/strong>&nbsp;que mezcla ideas de Unix y microkernel.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Si quieres, en el siguiente nivel puedo ense\u00f1arte&nbsp;<strong>algo que casi nadie explica bien pero que es fascinante<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>c\u00f3mo arranca realmente un ordenador (BIOS \u2192 bootloader \u2192 kernel)<\/li>\n\n\n\n<li>qu\u00e9 ocurre\u00a0<strong>desde que pulsas el bot\u00f3n hasta que aparece el escritorio<\/strong><\/li>\n\n\n\n<li>c\u00f3mo interact\u00faan\u00a0<strong>UEFI, bootloaders y el sistema operativo<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>Vamos a ver&nbsp;<strong>qu\u00e9 ocurre realmente desde que pulsas el bot\u00f3n de encendido hasta que aparece el escritorio<\/strong>. Es uno de los procesos m\u00e1s interesantes de la inform\u00e1tica.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. Encendido del ordenador<\/h1>\n\n\n\n<p>Cuando pulsas el bot\u00f3n:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>La fuente de alimentaci\u00f3n se activa.<\/li>\n\n\n\n<li>El procesador (<strong>CPU<\/strong>) se reinicia.<\/li>\n\n\n\n<li>El CPU comienza a ejecutar instrucciones desde una direcci\u00f3n fija en memoria.<\/li>\n<\/ol>\n\n\n\n<p>Esas instrucciones est\u00e1n en el firmware de la placa base.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. BIOS o UEFI<\/h1>\n\n\n\n<p>Ese firmware es el&nbsp;<strong>UEFI<\/strong>&nbsp;(en ordenadores modernos).<\/p>\n\n\n\n<p>Antes se usaba&nbsp;<strong>BIOS<\/strong>.<\/p>\n\n\n\n<p>Su trabajo inicial es:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>comprobar hardware<\/li>\n\n\n\n<li>inicializar dispositivos<\/li>\n\n\n\n<li>encontrar un sistema operativo<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">POST<\/h2>\n\n\n\n<p>Durante el arranque se ejecuta el&nbsp;<strong>Power-On Self Test<\/strong>.<\/p>\n\n\n\n<p>Comprueba:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>RAM<\/li>\n\n\n\n<li>CPU<\/li>\n\n\n\n<li>teclado<\/li>\n\n\n\n<li>GPU<\/li>\n\n\n\n<li>dispositivos b\u00e1sicos<\/li>\n<\/ul>\n\n\n\n<p>Si algo falla, el sistema ni siquiera intenta arrancar.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. B\u00fasqueda del disco de arranque<\/h1>\n\n\n\n<p>El firmware busca un dispositivo que contenga un&nbsp;<strong>bootloader<\/strong>.<\/p>\n\n\n\n<p>Puede ser:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>SSD<\/li>\n\n\n\n<li>disco duro<\/li>\n\n\n\n<li>USB<\/li>\n\n\n\n<li>red<\/li>\n<\/ul>\n\n\n\n<p>En sistemas modernos usa la partici\u00f3n especial llamada&nbsp;<strong>EFI System Partition<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. El Bootloader<\/h1>\n\n\n\n<p>El bootloader es un peque\u00f1o programa que carga el sistema operativo.<\/p>\n\n\n\n<p>En Windows el principal es&nbsp;<strong>Windows Boot Manager<\/strong>.<\/p>\n\n\n\n<p>Su trabajo es:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>leer configuraci\u00f3n de arranque<\/li>\n\n\n\n<li>elegir sistema operativo<\/li>\n\n\n\n<li>cargar el kernel en memoria<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Carga del kernel<\/h1>\n\n\n\n<p>El bootloader carga el n\u00facleo del sistema:<\/p>\n\n\n\n<p><strong>Windows NT kernel<\/strong><\/p>\n\n\n\n<p>En ese momento empieza realmente&nbsp;<strong>Windows<\/strong>.<\/p>\n\n\n\n<p>El kernel inicializa:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>memoria<\/li>\n\n\n\n<li>scheduler<\/li>\n\n\n\n<li>seguridad<\/li>\n\n\n\n<li>drivers b\u00e1sicos<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Carga de drivers<\/h1>\n\n\n\n<p>Despu\u00e9s el sistema carga los drivers necesarios para el hardware:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>disco<\/li>\n\n\n\n<li>red<\/li>\n\n\n\n<li>GPU<\/li>\n\n\n\n<li>USB<\/li>\n<\/ul>\n\n\n\n<p>Estos son&nbsp;<strong>Device driver<\/strong>.<\/p>\n\n\n\n<p>Sin drivers, el sistema no puede usar el hardware.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. Inicio de servicios del sistema<\/h1>\n\n\n\n<p>Una vez activo el kernel, se inicia un proceso cr\u00edtico llamado:<\/p>\n\n\n\n<p><strong>Session Manager Subsystem<\/strong><\/p>\n\n\n\n<p>Este proceso:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>prepara sesiones de usuario<\/li>\n\n\n\n<li>inicia servicios<\/li>\n\n\n\n<li>prepara el entorno del sistema<\/li>\n<\/ul>\n\n\n\n<p>Luego se lanzan procesos importantes como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Windows Logon Process<\/strong><\/li>\n\n\n\n<li><strong>Service Control Manager<\/strong><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Pantalla de inicio de sesi\u00f3n<\/h1>\n\n\n\n<p>Aqu\u00ed aparece la pantalla donde introduces tu usuario.<\/p>\n\n\n\n<p>Cuando te autenticas:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Windows verifica credenciales<\/li>\n\n\n\n<li>crea tu\u00a0<strong>Access Token<\/strong><\/li>\n\n\n\n<li>abre tu sesi\u00f3n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Se inicia el escritorio<\/h1>\n\n\n\n<p>Despu\u00e9s se lanza el proceso que crea el entorno gr\u00e1fico:<\/p>\n\n\n\n<p><strong>Windows Explorer<\/strong><\/p>\n\n\n\n<p>Este proceso crea:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>escritorio<\/li>\n\n\n\n<li>barra de tareas<\/li>\n\n\n\n<li>explorador de archivos<\/li>\n<\/ul>\n\n\n\n<p>Y ya puedes usar el sistema.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Resumen completo del arranque<\/h1>\n\n\n\n<p>La secuencia completa ser\u00eda:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Bot\u00f3n de encendido<br>      \u2502<br>Fuente de alimentaci\u00f3n<br>      \u2502<br>CPU inicia firmware<br>      \u2502<br>UEFI \/ BIOS<br>      \u2502<br>POST (test hardware)<br>      \u2502<br>Bootloader<br>      \u2502<br>Kernel del sistema operativo<br>      \u2502<br>Drivers<br>      \u2502<br>Servicios del sistema<br>      \u2502<br>Login<br>      \u2502<br>Escritorio<\/pre>\n\n\n\n<p>Todo esto ocurre normalmente en&nbsp;<strong>unos pocos segundos<\/strong>&nbsp;en sistemas modernos.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">11. Algo muy curioso<\/h1>\n\n\n\n<p>En realidad el sistema operativo&nbsp;<strong>no controla el ordenador completamente<\/strong>.<\/p>\n\n\n\n<p>Por debajo a\u00fan existen capas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>firmware del disco<\/li>\n\n\n\n<li>firmware de la GPU<\/li>\n\n\n\n<li>microc\u00f3digo del procesador<\/li>\n<\/ul>\n\n\n\n<p>Por ejemplo, el microc\u00f3digo del CPU controla detalles internos del&nbsp;<strong>CPU<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Si te interesa seguir profundizando, el siguiente nivel (muy interesante) ser\u00eda entender:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>c\u00f3mo funciona realmente un\u00a0<strong>procesador moderno<\/strong><\/li>\n\n\n\n<li>qu\u00e9 son\u00a0<strong>n\u00facleos, hilos, cach\u00e9s L1\/L2\/L3<\/strong><\/li>\n\n\n\n<li>qu\u00e9 ocurre dentro del CPU cuando ejecuta una instrucci\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p>Es probablemente&nbsp;<strong>la parte m\u00e1s fascinante de toda la inform\u00e1tica<\/strong>.<\/p>\n\n\n\n<p>Ahora vamos a entrar&nbsp;<strong>dentro del procesador<\/strong>, que es donde realmente ocurre la computaci\u00f3n. Entender esto ayuda a comprender por qu\u00e9 los ordenadores son tan r\u00e1pidos y c\u00f3mo ejecutan los programas.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. Qu\u00e9 es realmente un procesador<\/h1>\n\n\n\n<p>El&nbsp;<strong>CPU<\/strong>&nbsp;es el componente que&nbsp;<strong>ejecuta instrucciones<\/strong>.<\/p>\n\n\n\n<p>Todo programa (Windows, un navegador, un juego) acaba convirti\u00e9ndose en instrucciones muy simples que el CPU ejecuta.<\/p>\n\n\n\n<p>Ejemplo de instrucciones reales:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ADD<br>MOV<br>LOAD<br>STORE<br>JUMP<\/pre>\n\n\n\n<p>Estas pertenecen al conjunto de instrucciones de la arquitectura del procesador, como&nbsp;<strong>x86-64<\/strong>, usado por la mayor\u00eda de PCs.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. El ciclo b\u00e1sico del CPU<\/h1>\n\n\n\n<p>Todos los procesadores funcionan repitiendo este ciclo miles de millones de veces por segundo.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Fetch \u2192 Decode \u2192 Execute<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">1\ufe0f\u20e3 Fetch (buscar)<\/h3>\n\n\n\n<p>El CPU lee la siguiente instrucci\u00f3n desde memoria.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2\ufe0f\u20e3 Decode (decodificar)<\/h3>\n\n\n\n<p>El procesador interpreta qu\u00e9 significa la instrucci\u00f3n.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3\ufe0f\u20e3 Execute (ejecutar)<\/h3>\n\n\n\n<p>Se realiza la operaci\u00f3n.<\/p>\n\n\n\n<p>Ejemplo simple:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ADD A, B<\/pre>\n\n\n\n<p>Significa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">A = A + B<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. N\u00facleos (cores)<\/h1>\n\n\n\n<p>Los procesadores modernos tienen&nbsp;<strong>varios n\u00facleos<\/strong>.<\/p>\n\n\n\n<p>Cada n\u00facleo es pr\u00e1cticamente&nbsp;<strong>un CPU completo<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>CPU<\/th><th>n\u00facleos<\/th><\/tr><\/thead><tbody><tr><td>b\u00e1sico<\/td><td>2<\/td><\/tr><tr><td>medio<\/td><td>6<\/td><\/tr><tr><td>alto rendimiento<\/td><td>16+<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Cada n\u00facleo puede ejecutar procesos simult\u00e1neamente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. Hilos (threads)<\/h1>\n\n\n\n<p>Muchos procesadores tienen&nbsp;<strong>multithreading<\/strong>.<\/p>\n\n\n\n<p>Por ejemplo la tecnolog\u00eda&nbsp;<strong>Hyper-Threading<\/strong>.<\/p>\n\n\n\n<p>Esto permite que&nbsp;<strong>un n\u00facleo ejecute dos hilos simult\u00e1neamente<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>n\u00facleos<\/th><th>hilos<\/th><\/tr><\/thead><tbody><tr><td>4<\/td><td>8<\/td><\/tr><tr><td>8<\/td><td>16<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>No es exactamente el doble de potencia, pero mejora el uso del CPU.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Cach\u00e9 del procesador<\/h1>\n\n\n\n<p>Acceder a la RAM es relativamente lento.<\/p>\n\n\n\n<p>Por eso los CPU tienen memoria interna llamada&nbsp;<strong>cach\u00e9<\/strong>.<\/p>\n\n\n\n<p>Hay varios niveles:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>nivel<\/th><th>velocidad<\/th><th>tama\u00f1o<\/th><\/tr><\/thead><tbody><tr><td>L1<\/td><td>extremadamente r\u00e1pida<\/td><td>muy peque\u00f1a<\/td><\/tr><tr><td>L2<\/td><td>r\u00e1pida<\/td><td>peque\u00f1a<\/td><\/tr><tr><td>L3<\/td><td>m\u00e1s grande<\/td><td>compartida<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>La cach\u00e9 evita tener que ir constantemente a la RAM.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Por qu\u00e9 el CPU puede ser tan r\u00e1pido<\/h1>\n\n\n\n<p>Los procesadores modernos ejecutan&nbsp;<strong>muchas instrucciones a la vez<\/strong>.<\/p>\n\n\n\n<p>Usan t\u00e9cnicas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>ejecuci\u00f3n fuera de orden<\/li>\n\n\n\n<li>pipeline<\/li>\n\n\n\n<li>predicci\u00f3n de saltos<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Pipeline<\/h2>\n\n\n\n<p>En lugar de hacer:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">instrucci\u00f3n1<br>instrucci\u00f3n2<br>instrucci\u00f3n3<\/pre>\n\n\n\n<p>el CPU trabaja como una&nbsp;<strong>cadena de montaje<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Fetch<br>Decode<br>Execute<br>Write<\/pre>\n\n\n\n<p>Mientras una instrucci\u00f3n se ejecuta, otra se est\u00e1 decodificando y otra se est\u00e1 leyendo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. Predicci\u00f3n de saltos<\/h1>\n\n\n\n<p>Cuando un programa tiene un condicional:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">if (x &gt; 0)<\/pre>\n\n\n\n<p>el CPU intenta&nbsp;<strong>predecir qu\u00e9 ocurrir\u00e1<\/strong>&nbsp;antes de saberlo.<\/p>\n\n\n\n<p>Esto se llama&nbsp;<strong>Branch prediction<\/strong>.<\/p>\n\n\n\n<p>Si acierta \u2192 el programa sigue r\u00e1pido.<br>Si falla \u2192 el CPU tiene que retroceder.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Ejecuci\u00f3n fuera de orden<\/h1>\n\n\n\n<p>Los CPU modernos pueden&nbsp;<strong>reordenar instrucciones<\/strong>&nbsp;para ejecutarlas antes si los datos est\u00e1n disponibles.<\/p>\n\n\n\n<p>Esto se llama&nbsp;<strong>Out-of-order execution<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">A = B + C<br>D = E + F<\/pre>\n\n\n\n<p>Si&nbsp;<code>B<\/code>&nbsp;tarda en llegar desde RAM, el CPU puede ejecutar primero la segunda.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Qu\u00e9 ocurre cuando ejecutas un programa<\/h1>\n\n\n\n<p>Cuando ejecutas un programa ocurre esta cadena:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Programa<br>   \u2502<br>Sistema operativo<br>   \u2502<br>Instrucciones m\u00e1quina<br>   \u2502<br>CPU<br>   \u2502<br>Operaciones el\u00e9ctricas en transistores<\/pre>\n\n\n\n<p>Los procesadores modernos contienen&nbsp;<strong>miles de millones de transistores<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Qu\u00e9 es realmente un transistor<\/h1>\n\n\n\n<p>Un transistor es b\u00e1sicamente&nbsp;<strong>un interruptor microsc\u00f3pico<\/strong>.<\/p>\n\n\n\n<p>Puede representar:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">0<br>1<\/pre>\n\n\n\n<p>Los procesadores modernos usan tecnolog\u00eda de unos pocos nan\u00f3metros.<\/p>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Intel<\/strong><\/li>\n\n\n\n<li><strong>AMD<\/strong><\/li>\n\n\n\n<li><strong>TSMC<\/strong><\/li>\n<\/ul>\n\n\n\n<p>fabrican chips con miles de millones de estos interruptores.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">11. Resumen de todo el sistema<\/h1>\n\n\n\n<p>Si juntamos todo lo que hemos visto:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Usuario<br>   \u2502<br>Aplicaciones<br>   \u2502<br>Sistema operativo<br>   \u2502<br>Kernel<br>   \u2502<br>Drivers<br>   \u2502<br>CPU<br>   \u2502<br>Transistores<\/pre>\n\n\n\n<p>Todo el software del mundo acaba siendo&nbsp;<strong>se\u00f1ales el\u00e9ctricas en transistores<\/strong>.<\/p>\n\n\n\n<p>Todo lo explicado ocurre igual en os tres tipos de so, Windows, Mac Linux? Diferencias?<\/p>\n\n\n\n<p>S\u00ed y no.&nbsp;<strong>La base fundamental es la misma<\/strong>, pero&nbsp;<strong>la arquitectura y filosof\u00eda cambian bastante<\/strong>&nbsp;entre&nbsp;<strong>Microsoft Windows<\/strong>,&nbsp;<strong>Linux<\/strong>&nbsp;y&nbsp;<strong>macOS<\/strong>.<\/p>\n\n\n\n<p>Voy a separarlo en&nbsp;<strong>qu\u00e9 es igual<\/strong>&nbsp;y&nbsp;<strong>qu\u00e9 es diferente<\/strong>, porque ah\u00ed est\u00e1 la clave.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. Lo que es igual en los tres sistemas<\/h1>\n\n\n\n<p>Todos los sistemas operativos modernos comparten los mismos principios b\u00e1sicos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1\ufe0f\u20e3 Arranque del sistema<\/h3>\n\n\n\n<p>Todos siguen esta cadena:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">encendido<br>\u2192 firmware (BIOS\/UEFI)<br>\u2192 bootloader<br>\u2192 kernel<br>\u2192 servicios<br>\u2192 usuario<\/pre>\n\n\n\n<p>El firmware suele ser&nbsp;<strong>UEFI<\/strong>&nbsp;en hardware moderno.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">2\ufe0f\u20e3 Separaci\u00f3n User Mode \/ Kernel Mode<\/h3>\n\n\n\n<p>Todos separan:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>modo<\/th><th>funci\u00f3n<\/th><\/tr><\/thead><tbody><tr><td>User mode<\/td><td>programas<\/td><\/tr><tr><td>Kernel mode<\/td><td>sistema operativo<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Esto protege al sistema de errores de aplicaciones.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">3\ufe0f\u20e3 Memoria virtual<\/h3>\n\n\n\n<p>Todos usan&nbsp;<strong>Virtual memory<\/strong>.<\/p>\n\n\n\n<p>Esto significa:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>cada proceso tiene su espacio de memoria<\/li>\n\n\n\n<li>el sistema usa RAM + disco si hace falta.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">4\ufe0f\u20e3 Scheduler<\/h3>\n\n\n\n<p>Todos tienen un&nbsp;<strong>planificador de procesos<\/strong>&nbsp;que reparte el CPU entre programas.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">5\ufe0f\u20e3 Drivers<\/h3>\n\n\n\n<p>Todos necesitan&nbsp;<strong>drivers<\/strong>&nbsp;para hablar con hardware.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">6\ufe0f\u20e3 Sistemas de archivos<\/h3>\n\n\n\n<p>Todos usan estructuras tipo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">disco<br>\u2192 tabla de archivos<br>\u2192 bloques de datos<\/pre>\n\n\n\n<p>Aunque el formato sea diferente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. Diferencia m\u00e1s importante: el kernel<\/h1>\n\n\n\n<p>Aqu\u00ed empiezan las diferencias reales.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Sistema<\/th><th>kernel<\/th><\/tr><\/thead><tbody><tr><td>Windows<\/td><td>kernel NT<\/td><\/tr><tr><td>Linux<\/td><td>kernel Linux<\/td><\/tr><tr><td>macOS<\/td><td>kernel XNU<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Windows<\/h2>\n\n\n\n<p>Usa el&nbsp;<strong>Windows NT kernel<\/strong>.<\/p>\n\n\n\n<p>Caracter\u00edsticas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>kernel h\u00edbrido<\/li>\n\n\n\n<li>mucha compatibilidad hist\u00f3rica<\/li>\n\n\n\n<li>muy integrado con APIs propias de Windows<\/li>\n<\/ul>\n\n\n\n<p>Ventaja:<\/p>\n\n\n\n<p>\u2714 enorme compatibilidad de software.<\/p>\n\n\n\n<p>Desventaja:<\/p>\n\n\n\n<p>\u2716 arquitectura compleja.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Linux<\/h2>\n\n\n\n<p>El n\u00facleo es&nbsp;<strong>Linux<\/strong>.<\/p>\n\n\n\n<p>Caracter\u00edsticas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>monol\u00edtico pero modular<\/li>\n\n\n\n<li>open source<\/li>\n\n\n\n<li>extremadamente configurable.<\/li>\n<\/ul>\n\n\n\n<p>Ventaja:<\/p>\n\n\n\n<p>\u2714 muy flexible<br>\u2714 usado en servidores y supercomputadores.<\/p>\n\n\n\n<p>Desventaja:<\/p>\n\n\n\n<p>\u2716 fragmentaci\u00f3n (muchas distribuciones).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">macOS<\/h2>\n\n\n\n<p>Usa&nbsp;<strong>XNU<\/strong>.<\/p>\n\n\n\n<p>Es un kernel h\u00edbrido que mezcla:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Mach microkernel<\/li>\n\n\n\n<li>componentes Unix<\/li>\n\n\n\n<li>c\u00f3digo BSD.<\/li>\n<\/ul>\n\n\n\n<p>Ventaja:<\/p>\n\n\n\n<p>\u2714 muy optimizado para hardware Apple.<\/p>\n\n\n\n<p>Desventaja:<\/p>\n\n\n\n<p>\u2716 cerrado y dependiente de Apple.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. Diferencias en el sistema de archivos<\/h1>\n\n\n\n<p>Cada sistema usa uno principal:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Sistema<\/th><th>sistema de archivos<\/th><\/tr><\/thead><tbody><tr><td>Windows<\/td><td><strong>NTFS<\/strong><\/td><\/tr><tr><td>Linux<\/td><td><strong>ext4<\/strong><\/td><\/tr><tr><td>macOS<\/td><td><strong>APFS<\/strong><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">NTFS<\/h3>\n\n\n\n<p>Muy avanzado en:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>ACL<\/li>\n\n\n\n<li>journaling<\/li>\n\n\n\n<li>compresi\u00f3n<\/li>\n\n\n\n<li>streams alternativos.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">ext4<\/h3>\n\n\n\n<p>Muy robusto y simple.<\/p>\n\n\n\n<p>Muy usado en servidores Linux.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">APFS<\/h3>\n\n\n\n<p>Optimizado para:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>SSD<\/li>\n\n\n\n<li>snapshots<\/li>\n\n\n\n<li>clonaci\u00f3n r\u00e1pida de archivos.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. Diferencias en permisos<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">Windows<\/h3>\n\n\n\n<p>Permisos basados en&nbsp;<strong>ACL complejas<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">usuario A \u2192 leer<br>usuario B \u2192 escribir<br>grupo C \u2192 ejecutar<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Linux \/ macOS<\/h3>\n\n\n\n<p>Permisos&nbsp;<strong>POSIX<\/strong>&nbsp;cl\u00e1sicos:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">owner<br>group<br>others<\/pre>\n\n\n\n<p>macOS adem\u00e1s a\u00f1ade ACL extendidas.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Diferencia en instalaci\u00f3n de software<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Sistema<\/th><th>m\u00e9todo<\/th><\/tr><\/thead><tbody><tr><td>Windows<\/td><td>EXE \/ MSI<\/td><\/tr><tr><td>Linux<\/td><td>gestor de paquetes<\/td><\/tr><tr><td>macOS<\/td><td>apps \/ pkg \/ brew<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Windows<\/h3>\n\n\n\n<p>Instaladores tradicionales:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>MSI<\/strong><\/li>\n\n\n\n<li>EXE<\/li>\n<\/ul>\n\n\n\n<p>Ahora tambi\u00e9n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Windows Package Manager<\/strong><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Linux<\/h3>\n\n\n\n<p>Usa gestores de paquetes como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>APT<\/strong><\/li>\n\n\n\n<li><strong>DNF<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Instalan desde repositorios.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">macOS<\/h3>\n\n\n\n<p>Sistema mixto:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>App bundles<\/li>\n\n\n\n<li>pkg installers<\/li>\n\n\n\n<li><strong>Homebrew<\/strong><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Diferencias en filosof\u00eda<\/h1>\n\n\n\n<p>Aqu\u00ed est\u00e1 la diferencia m\u00e1s profunda.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Windows<\/th><th>Linux<\/th><th>macOS<\/th><\/tr><\/thead><tbody><tr><td>compatibilidad<\/td><td>control total<\/td><td>integraci\u00f3n<\/td><\/tr><tr><td>software comercial<\/td><td>open source<\/td><td>ecosistema Apple<\/td><\/tr><tr><td>drivers de terceros<\/td><td>kernel abierto<\/td><td>hardware controlado<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. Diferencias en seguridad<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">Linux<\/h3>\n\n\n\n<p>Modelo Unix cl\u00e1sico.<\/p>\n\n\n\n<p>Muy seguro por dise\u00f1o.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">macOS<\/h3>\n\n\n\n<p>Unix + sandboxing + control de Apple.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Windows<\/h3>\n\n\n\n<p>Hist\u00f3ricamente m\u00e1s vulnerable, pero ahora incluye:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>User Account Control<\/strong><\/li>\n\n\n\n<li>sandbox<\/li>\n\n\n\n<li>virtualizaci\u00f3n de seguridad.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Diferencia importante en hardware<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">Linux<\/h3>\n\n\n\n<p>Funciona en casi todo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>servidores<\/li>\n\n\n\n<li>routers<\/li>\n\n\n\n<li>supercomputadores.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Windows<\/h3>\n\n\n\n<p>Optimizado para PCs.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">macOS<\/h3>\n\n\n\n<p>Solo para hardware Apple.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Curiosidad interesante<\/h1>\n\n\n\n<p>Aunque parecen muy distintos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>macOS<\/strong><\/li>\n\n\n\n<li><strong>Linux<\/strong><\/li>\n<\/ul>\n\n\n\n<p>comparten herencia&nbsp;<strong>Unix<\/strong>.<\/p>\n\n\n\n<p>Windows&nbsp;<strong>no<\/strong>&nbsp;viene de Unix.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Resumen final<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>aspecto<\/th><th>Windows<\/th><th>Linux<\/th><th>macOS<\/th><\/tr><\/thead><tbody><tr><td>kernel<\/td><td>NT<\/td><td>Linux<\/td><td>XNU<\/td><\/tr><tr><td>licencia<\/td><td>propietaria<\/td><td>open source<\/td><td>propietaria<\/td><\/tr><tr><td>filesystems<\/td><td>NTFS<\/td><td>ext4<\/td><td>APFS<\/td><\/tr><tr><td>filosof\u00eda<\/td><td>compatibilidad<\/td><td>control<\/td><td>integraci\u00f3n<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Hay algo&nbsp;<strong>muy interesante<\/strong>&nbsp;que casi nadie explica pero aclara mucho estas diferencias:<\/p>\n\n\n\n<p><strong>c\u00f3mo est\u00e1n organizados internamente los sistemas operativos tipo Unix frente a Windows<\/strong>&nbsp;(por ejemplo por qu\u00e9 Linux\/macOS tienen estructura&nbsp;<code>\/etc<\/code>,&nbsp;<code>\/usr<\/code>,&nbsp;<code>\/bin<\/code>, etc., mientras Windows usa&nbsp;<code>C:\\Windows<\/code>).<\/p>\n\n\n\n<p>Entender&nbsp;<strong>la organizaci\u00f3n interna de los sistemas tipo Unix<\/strong>&nbsp;explica muchas diferencias entre&nbsp;<strong>Linux<\/strong>,&nbsp;<strong>macOS<\/strong>&nbsp;y&nbsp;<strong>Microsoft Windows<\/strong>.<\/p>\n\n\n\n<p>La diferencia principal es&nbsp;<strong>c\u00f3mo organizan todo el sistema<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. Filosof\u00eda Unix: \u201ctodo es un archivo\u201d<\/h1>\n\n\n\n<p>En sistemas tipo Unix (Linux y macOS) existe una idea central:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">todo es un archivo<\/pre>\n\n\n\n<p>Esto significa que&nbsp;<strong>muchos recursos del sistema se representan como archivos<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>discos<\/li>\n\n\n\n<li>dispositivos<\/li>\n\n\n\n<li>procesos<\/li>\n\n\n\n<li>configuraciones<\/li>\n<\/ul>\n\n\n\n<p>Por ejemplo, los dispositivos f\u00edsicos aparecen como archivos dentro de:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/dev<\/pre>\n\n\n\n<p>Esto permite que el sistema interact\u00fae con ellos usando las mismas operaciones b\u00e1sicas:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">abrir<br>leer<br>escribir<br>cerrar<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. La estructura de directorios Unix<\/h1>\n\n\n\n<p>Linux y macOS comparten una jerarqu\u00eda est\u00e1ndar llamada&nbsp;<strong>Filesystem Hierarchy Standard<\/strong>.<\/p>\n\n\n\n<p>La estructura empieza en la ra\u00edz:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/<\/pre>\n\n\n\n<p>Desde ah\u00ed cuelga todo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\/bin<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">\/bin<\/pre>\n\n\n\n<p>Contiene programas b\u00e1sicos del sistema.<\/p>\n\n\n\n<p>Ejemplos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>shell<\/li>\n\n\n\n<li>comandos esenciales<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\/usr<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">\/usr<\/pre>\n\n\n\n<p>Aqu\u00ed vive la mayor\u00eda del software instalado.<\/p>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/usr\/bin<br>\/usr\/lib<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\/etc<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc<\/pre>\n\n\n\n<p>Aqu\u00ed est\u00e1n los&nbsp;<strong>archivos de configuraci\u00f3n del sistema<\/strong>.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/hosts<br>\/etc\/passwd<\/pre>\n\n\n\n<p>Muchos administradores de sistemas pasan gran parte del tiempo aqu\u00ed.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\/home<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">\/home<\/pre>\n\n\n\n<p>Contiene los directorios personales de los usuarios.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/home\/david<br>\/home\/maria<\/pre>\n\n\n\n<p>En&nbsp;<strong>macOS<\/strong>&nbsp;se usa:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/Users<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\/var<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">\/var<\/pre>\n\n\n\n<p>Archivos que cambian constantemente:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>logs<\/li>\n\n\n\n<li>colas<\/li>\n\n\n\n<li>bases de datos temporales.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\/tmp<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">\/tmp<\/pre>\n\n\n\n<p>Archivos temporales.<\/p>\n\n\n\n<p>Muchos sistemas los borran autom\u00e1ticamente al reiniciar.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. C\u00f3mo se montan los discos en Unix<\/h1>\n\n\n\n<p>En Unix&nbsp;<strong>no existen letras de disco<\/strong>.<\/p>\n\n\n\n<p>Todo se integra en el \u00e1rbol de directorios.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/<br>\u251c\u2500\u2500 home<br>\u251c\u2500\u2500 usr<br>\u2514\u2500\u2500 media<br>    \u2514\u2500\u2500 usb<\/pre>\n\n\n\n<p>Cuando conectas un USB se \u201cmonta\u201d en un punto.<\/p>\n\n\n\n<p>Esto se hace con el comando:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">mount<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. C\u00f3mo funciona en Windows<\/h1>\n\n\n\n<p>En&nbsp;<strong>Microsoft Windows<\/strong>&nbsp;la filosof\u00eda es distinta.<\/p>\n\n\n\n<p>Los discos tienen&nbsp;<strong>letras<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:<br>D:<br>E:<\/pre>\n\n\n\n<p>Cada uno es una ra\u00edz independiente.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Windows<br>C:\\Program Files<br>C:\\Users<\/pre>\n\n\n\n<p>Esto viene de sistemas antiguos como&nbsp;<strong>MS-DOS<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Estructura principal de Windows<\/h1>\n\n\n\n<p>Las carpetas clave son:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Windows<br>C:\\Program Files<br>C:\\Users<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">C:\\Windows<\/h2>\n\n\n\n<p>Contiene el sistema operativo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>kernel<\/li>\n\n\n\n<li>drivers<\/li>\n\n\n\n<li>librer\u00edas<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">C:\\Program Files<\/h2>\n\n\n\n<p>Programas instalados.<\/p>\n\n\n\n<p>Cada aplicaci\u00f3n suele tener su carpeta.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Program Files\\Google<br>Program Files\\Microsoft<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">C:\\Users<\/h2>\n\n\n\n<p>Directorios personales.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Users\\David<\/pre>\n\n\n\n<p>Aqu\u00ed est\u00e1n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>documentos<\/li>\n\n\n\n<li>escritorio<\/li>\n\n\n\n<li>descargas.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Configuraci\u00f3n del sistema<\/h1>\n\n\n\n<p>Aqu\u00ed hay otra gran diferencia.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Linux \/ macOS<\/h3>\n\n\n\n<p>Configuraci\u00f3n en archivos de texto.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/etc\/ssh\/sshd_config<\/pre>\n\n\n\n<p>Esto es muy potente porque se puede:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>editar con scripts<\/li>\n\n\n\n<li>versionar<\/li>\n\n\n\n<li>automatizar.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Windows<\/h3>\n\n\n\n<p>Much\u00edsima configuraci\u00f3n vive en la base de datos llamada:<\/p>\n\n\n\n<p><strong>Windows Registry<\/strong><\/p>\n\n\n\n<p>El registry almacena:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>configuraci\u00f3n del sistema<\/li>\n\n\n\n<li>preferencias de programas<\/li>\n\n\n\n<li>asociaciones de archivos.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. Instalaci\u00f3n de software<\/h1>\n\n\n\n<p>En Unix:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">repositorio \u2192 gestor de paquetes \u2192 sistema<\/pre>\n\n\n\n<p>En Windows:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">instalador \u2192 copia archivos \u2192 registry<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Permisos<\/h1>\n\n\n\n<p>Linux y macOS usan permisos&nbsp;<strong>POSIX<\/strong>&nbsp;simples:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">rwx<\/pre>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">-rwxr-xr-x<\/pre>\n\n\n\n<p>Windows usa ACL mucho m\u00e1s complejas.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Filosof\u00eda de dise\u00f1o<\/h1>\n\n\n\n<p>Aqu\u00ed est\u00e1 la diferencia m\u00e1s profunda.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Unix<\/h3>\n\n\n\n<p>Regla cl\u00e1sica:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">haz una cosa y hazla bien<\/pre>\n\n\n\n<p>Los programas son peque\u00f1os y combinables.<\/p>\n\n\n\n<p>Ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">cat | grep | sort<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Windows<\/h3>\n\n\n\n<p>M\u00e1s orientado a:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>aplicaciones grandes<\/li>\n\n\n\n<li>interfaces gr\u00e1ficas<\/li>\n\n\n\n<li>integraci\u00f3n profunda.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Curiosidad muy interesante<\/h1>\n\n\n\n<p>Aunque&nbsp;<strong>macOS<\/strong>&nbsp;parece diferente, internamente es&nbsp;<strong>muy parecido a Linux<\/strong>&nbsp;porque deriva de&nbsp;<strong>BSD<\/strong>.<\/p>\n\n\n\n<p>Por eso macOS tiene:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\/bin<br>\/etc<br>\/usr<\/pre>\n\n\n\n<p>igual que Linux.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\ud83d\udca1 Si quieres, hay algo&nbsp;<strong>muy interesante que conecta todo lo que hemos visto<\/strong>:<\/p>\n\n\n\n<p><strong>por qu\u00e9 Linux domina servidores e Internet mientras Windows domina el escritorio<\/strong>.<\/p>\n\n\n\n<p>La explicaci\u00f3n mezcla:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>arquitectura del sistema<\/li>\n\n\n\n<li>historia de Internet<\/li>\n\n\n\n<li>modelo de desarrollo open source.<\/li>\n<\/ul>\n\n\n\n<p>Muy bien, esta es una historia muy interesante porque explica&nbsp;<strong>por qu\u00e9 el mundo inform\u00e1tico se divide as\u00ed<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Microsoft Windows<\/strong>\u00a0domina el escritorio<\/li>\n\n\n\n<li><strong>Linux<\/strong>\u00a0domina servidores e Internet<\/li>\n\n\n\n<li><strong>macOS<\/strong>\u00a0domina el ecosistema Apple y muchos entornos de desarrollo<\/li>\n<\/ul>\n\n\n\n<p>Y esto no es casualidad: es&nbsp;<strong>una mezcla de historia, arquitectura y econom\u00eda<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. El nacimiento de Internet<\/h1>\n\n\n\n<p>Internet naci\u00f3 principalmente en universidades y centros de investigaci\u00f3n.<\/p>\n\n\n\n<p>Los sistemas que usaban eran&nbsp;<strong>Unix<\/strong>.<\/p>\n\n\n\n<p>De Unix derivaron:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>BSD<\/strong><\/li>\n\n\n\n<li><strong>Linux<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Por eso&nbsp;<strong>mucho software de red se escribi\u00f3 primero para Unix<\/strong>.<\/p>\n\n\n\n<p>Ejemplos hist\u00f3ricos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>servidor web\u00a0<strong>Apache HTTP Server<\/strong><\/li>\n\n\n\n<li>servidor DNS\u00a0<strong>BIND<\/strong><\/li>\n\n\n\n<li>servidor SSH\u00a0<strong>OpenSSH<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Todo esto naci\u00f3 en entornos Unix.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. Linux lleg\u00f3 en el momento perfecto<\/h1>\n\n\n\n<p>En 1991&nbsp;<strong>Linus Torvalds<\/strong>&nbsp;cre\u00f3 Linux.<\/p>\n\n\n\n<p>Lo importante es que era:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>libre<\/li>\n\n\n\n<li>open source<\/li>\n\n\n\n<li>Unix-like<\/li>\n<\/ul>\n\n\n\n<p>Esto permiti\u00f3 que empresas y universidades lo adoptaran r\u00e1pidamente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. Por qu\u00e9 Linux es ideal para servidores<\/h1>\n\n\n\n<p>Linux tiene varias caracter\u00edsticas clave.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Estabilidad<\/h3>\n\n\n\n<p>Puede funcionar&nbsp;<strong>meses o a\u00f1os sin reiniciar<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Control total<\/h3>\n\n\n\n<p>Los administradores pueden modificar:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>kernel<\/li>\n\n\n\n<li>drivers<\/li>\n\n\n\n<li>sistema completo.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Automatizaci\u00f3n<\/h3>\n\n\n\n<p>Linux se controla muy bien con scripts:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bash<br>python<br>perl<\/pre>\n\n\n\n<p>Esto es esencial en servidores.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Ligereza<\/h3>\n\n\n\n<p>Puede funcionar con pocos recursos.<\/p>\n\n\n\n<p>Por eso tambi\u00e9n se usa en:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>routers<\/li>\n\n\n\n<li>IoT<\/li>\n\n\n\n<li>supercomputadores.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. Linux domina Internet<\/h1>\n\n\n\n<p>Hoy la mayor\u00eda de servidores usan Linux.<\/p>\n\n\n\n<p>Grandes empresas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Google<\/strong><\/li>\n\n\n\n<li><strong>Amazon<\/strong><\/li>\n\n\n\n<li><strong>Meta<\/strong><\/li>\n<\/ul>\n\n\n\n<p>basan gran parte de su infraestructura en Linux.<\/p>\n\n\n\n<p>Adem\u00e1s, el sistema m\u00e1s usado para servidores web es:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>NGINX<\/strong><\/li>\n<\/ul>\n\n\n\n<p>que se ejecuta principalmente en Linux.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. Por qu\u00e9 Windows domin\u00f3 el escritorio<\/h1>\n\n\n\n<p>Aqu\u00ed entra la estrategia de&nbsp;<strong>Microsoft<\/strong>.<\/p>\n\n\n\n<p>En los a\u00f1os 90 Microsoft consigui\u00f3 acuerdos con fabricantes de PCs.<\/p>\n\n\n\n<p>Casi todos los ordenadores ven\u00edan con Windows preinstalado.<\/p>\n\n\n\n<p>Esto cre\u00f3 un efecto enorme:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">usuarios \u2192 desarrolladores \u2192 m\u00e1s software \u2192 m\u00e1s usuarios<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. Software clave para Windows<\/h1>\n\n\n\n<p>Muchos programas populares solo exist\u00edan para Windows.<\/p>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Microsoft Office<\/strong><\/li>\n\n\n\n<li>videojuegos de PC<\/li>\n\n\n\n<li>software empresarial.<\/li>\n<\/ul>\n\n\n\n<p>Esto consolid\u00f3 el dominio del escritorio.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. macOS: un camino intermedio<\/h1>\n\n\n\n<p><strong>macOS<\/strong>&nbsp;usa tecnolog\u00eda Unix pero con hardware controlado por&nbsp;<strong>Apple<\/strong>.<\/p>\n\n\n\n<p>Esto tiene ventajas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>sistema muy optimizado<\/li>\n\n\n\n<li>menos problemas de drivers<\/li>\n\n\n\n<li>buena experiencia de usuario.<\/li>\n<\/ul>\n\n\n\n<p>Pero tambi\u00e9n limitaciones:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>hardware cerrado<\/li>\n\n\n\n<li>menor cuota de mercado.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Hoy el panorama real<\/h1>\n\n\n\n<p>El mundo actual se parece a esto:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u00e1rea<\/th><th>sistema dominante<\/th><\/tr><\/thead><tbody><tr><td>escritorio<\/td><td>Windows<\/td><\/tr><tr><td>servidores<\/td><td>Linux<\/td><\/tr><tr><td>cloud<\/td><td>Linux<\/td><\/tr><tr><td>m\u00f3viles<\/td><td>Linux (Android)<\/td><\/tr><tr><td>ecosistema Apple<\/td><td>macOS<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Por ejemplo&nbsp;<strong>Android<\/strong>&nbsp;est\u00e1 basado en Linux.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. Curiosidad impresionante<\/h1>\n\n\n\n<p>Aunque mucha gente no lo sabe:<\/p>\n\n\n\n<p><strong>casi todo Internet funciona sobre Linux<\/strong>.<\/p>\n\n\n\n<p>Ejemplo t\u00edpico de un servidor web:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">hardware<br>\u2192 Linux<br>\u2192 NGINX<br>\u2192 aplicaci\u00f3n<br>\u2192 base de datos<\/pre>\n\n\n\n<p>Este modelo se conoce como&nbsp;<strong>LAMP stack<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Linux<\/li>\n\n\n\n<li>Apache<\/li>\n\n\n\n<li>MySQL<\/li>\n\n\n\n<li>PHP.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Una iron\u00eda hist\u00f3rica<\/h1>\n\n\n\n<p>Aunque&nbsp;<strong>Microsoft<\/strong>&nbsp;compiti\u00f3 durante d\u00e9cadas contra Linux, hoy:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Azure usa Linux masivamente<\/li>\n\n\n\n<li>Microsoft contribuye al kernel Linux.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\u2705&nbsp;<strong>Resumen muy simple<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u00e1rea<\/th><th>ganador<\/th><\/tr><\/thead><tbody><tr><td>PC personales<\/td><td>Windows<\/td><\/tr><tr><td>servidores<\/td><td>Linux<\/td><\/tr><tr><td>ecosistema integrado<\/td><td>macOS<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Ahora que tienes Windows funcionando como un servidor en tu Mac\u2011mini, es el momento perfecto para aprenderlo bien. Te voy a preparar una gu\u00eda completa, clara y pr\u00e1ctica, pensada para alguien que ya domina macOS y Linux. As\u00ed ver\u00e1s Windows con ojos de power\u2011user, no como un usuario normal. Voy a dividirlo en secciones para&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[499],"tags":[],"class_list":["post-660","post","type-post","status-publish","format-standard","hentry","category-windows"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Windows, segunda parte - Ciencia y Tecnologia<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Windows, segunda parte - Ciencia y Tecnologia\" \/>\n<meta property=\"og:description\" content=\"Ahora que tienes Windows funcionando como un servidor en tu Mac\u2011mini, es el momento perfecto para aprenderlo bien. Te voy a preparar una gu\u00eda completa, clara y pr\u00e1ctica, pensada para alguien que ya domina macOS y Linux. As\u00ed ver\u00e1s Windows con ojos de power\u2011user, no como un usuario normal. Voy a dividirlo en secciones para...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/\" \/>\n<meta property=\"og:site_name\" content=\"Ciencia y Tecnologia\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-07T08:50:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-07T09:41:18+00:00\" \/>\n<meta name=\"author\" content=\"david\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"david\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"26 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/\"},\"author\":{\"name\":\"david\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\"},\"headline\":\"Windows, segunda parte\",\"datePublished\":\"2026-03-07T08:50:18+00:00\",\"dateModified\":\"2026-03-07T09:41:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/\"},\"wordCount\":5922,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\"},\"articleSection\":[\"Windows\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/\",\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/\",\"name\":\"Windows, segunda parte - Ciencia y Tecnologia\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#website\"},\"datePublished\":\"2026-03-07T08:50:18+00:00\",\"dateModified\":\"2026-03-07T09:41:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/windows-segunda-parte\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Windows, segunda parte\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/\",\"name\":\"Ciencia y Tecnologia\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\",\"name\":\"david\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\",\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\",\"contentUrl\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\",\"width\":1024,\"height\":1024,\"caption\":\"david\"},\"logo\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\"},\"sameAs\":[\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\"],\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/author\\\/david\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Windows, segunda parte - Ciencia y Tecnologia","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Windows, segunda parte - Ciencia y Tecnologia","og_description":"Ahora que tienes Windows funcionando como un servidor en tu Mac\u2011mini, es el momento perfecto para aprenderlo bien. Te voy a preparar una gu\u00eda completa, clara y pr\u00e1ctica, pensada para alguien que ya domina macOS y Linux. As\u00ed ver\u00e1s Windows con ojos de power\u2011user, no como un usuario normal. Voy a dividirlo en secciones para...","og_url":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/","og_site_name":"Ciencia y Tecnologia","article_published_time":"2026-03-07T08:50:18+00:00","article_modified_time":"2026-03-07T09:41:18+00:00","author":"david","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"david","Tiempo de lectura":"26 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/#article","isPartOf":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/"},"author":{"name":"david","@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b"},"headline":"Windows, segunda parte","datePublished":"2026-03-07T08:50:18+00:00","dateModified":"2026-03-07T09:41:18+00:00","mainEntityOfPage":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/"},"wordCount":5922,"commentCount":0,"publisher":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b"},"articleSection":["Windows"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/","url":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/","name":"Windows, segunda parte - Ciencia y Tecnologia","isPartOf":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#website"},"datePublished":"2026-03-07T08:50:18+00:00","dateModified":"2026-03-07T09:41:18+00:00","breadcrumb":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cienciaytecnology.com\/wordpress\/windows-segunda-parte\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/cienciaytecnology.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Windows, segunda parte"}]},{"@type":"WebSite","@id":"https:\/\/cienciaytecnology.com\/wordpress\/#website","url":"https:\/\/cienciaytecnology.com\/wordpress\/","name":"Ciencia y Tecnologia","description":"","publisher":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cienciaytecnology.com\/wordpress\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":["Person","Organization"],"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b","name":"david","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg","url":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg","contentUrl":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg","width":1024,"height":1024,"caption":"david"},"logo":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg"},"sameAs":["https:\/\/cienciaytecnology.com\/wordpress"],"url":"https:\/\/cienciaytecnology.com\/wordpress\/author\/david\/"}]}},"_links":{"self":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts\/660","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/comments?post=660"}],"version-history":[{"count":1,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts\/660\/revisions"}],"predecessor-version":[{"id":661,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts\/660\/revisions\/661"}],"wp:attachment":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/media?parent=660"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/categories?post=660"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/tags?post=660"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}