Tenho dificuldade em entender o que está incluído em um sistema operacional e o que não está. Um driver de dispositivo, como um driver de impressora ou gráfico, faz parte de um sistema operacional? Pensando na definição de um sistema operacional, acredito que os drivers fazem parte dos sistemas operacionais.
drivers
operating-systems
Formiga-de-fogo
fonte
fonte
Respostas:
Sim, os drivers fazem parte do sistema operacional. Eles são executados com o mesmo nível de privilégio que o kernel do sistema operacional e, para escrever um driver, você deve saber bastante sobre os componentes internos do sistema operacional. A função dos drivers é fornecer uma abstração do hardware para que os aplicativos possam usá-lo por meio da API do SO (interface de programação de aplicativos), em vez de precisar saber detalhes específicos dele. Em muitos casos, também permite compartilhar a mesma peça de hardware entre muitos aplicativos simultaneamente.
Algo que leva os usuários a pensar que os drivers podem não fazer parte do sistema operacional é que muitos fornecedores fornecem drivers para o hardware que eles fabricam separadamente do sistema operacional. De fato, muitos drivers são apresentados como módulos carregáveis que podem ser carregados e depois participam dinamicamente no sistema operacional. Uma vez que não são mais usados, eles podem ser "desconectados" do sistema operacional e continuam funcionando normalmente.
Carregáveis ou não, os drivers são sempre específicos dos dispositivos que devem disponibilizar para o sistema; portanto, embora sejam algumas vezes partes "opcionais" do sistema operacional, eles participam durante a operação.
fonte
O termo "SO" pode significar muitas coisas.
Enquanto na maioria dos sistemas operacionais, o kernel é o pedaço de código que está gerenciando e "executando" tudo e arbitragem os acessos ao hardware, mas geralmente não pode fazer nada interessante por si só - seu trabalho é fornecer uma estrutura para os aplicativos executarem " no topo "se isso. A definição de um sistema operacional para muitas pessoas inclui utilitários, shells e programas que compõem um ambiente familiar e padronizado.
Os drivers dependem do kernel, e provavelmente é mais correto dizer que o "estendem", como plugins. O Linux suporta a noção de "módulos carregáveis do kernel" - e todos os drivers de dispositivo podem ser um módulo carregável do kernel. Também é possível construir um kernel onde um ou mais desses módulos estejam "embutidos" e não separados do kernel. Então, você realmente pode criar um kernel "sem módulo" no Linux, e ele não seria capaz de suportar nenhum outro hardware além dos módulos que você construiu nele.
Estou menos familiarizado com as entranhas do Windows, mas acredito que, com exceção de poucos drivers de "miniporta", todos os drivers são arquivos externos carregados na inicialização. Se você se interessar um pouco pela criação de serviços no Windows, parece que os drivers são realmente apenas formas especiais de serviços no Windows. Alguns programas instalam drivers para acessar o hardware em um nível baixo, mas não necessariamente para acionar um dispositivo, geralmente são os drivers "Não plug and play" no Gerenciador de dispositivos. Portanto, também parece que os drivers cumprem a mesma função conceitualmente dos módulos carregáveis do kernel no Linux.
Por simplicidade, eu diria que eles fazem parte do sistema operacional, pois realmente não podem ser usados sem o sistema operacional e não são úteis a menos que o sistema operacional seja inicializado, mas a linha traçada é arbitrária em qualquer caso.
fonte
Nenhum driver não faz parte do sistema operacional. Você pode dizer que os drivers ajudam o sistema operacional a se comunicar com o dispositivo ou hardware. Por padrão, o SO não contém todos os drivers, como no Windows XP e Vista, mas no Windows 7 a maioria dos drivers necessários estão incluídos, para que você não confunda que eles não façam parte do SO.
fonte