text:
Em computação, o núcleo ou kernel é o componente central do sistema operativo da maioria dos computadores; ele serve de ponte entre aplicativos e o processamento real de dados feito a nível de hardware. As responsabilidades do núcleo incluem gerenciar os recursos do sistema (a comunicação entre componentes de hardware e software). Geralmente como um componente básico do sistema operativo, um núcleo pode oferecer a camada de abstração de nível mais baixo para os recursos (especialmente processadores e dispositivos de entrada/saída) que softwares aplicativos devem controlar para realizar sua função. Ele tipicamente torna estas facilidades disponíveis para os processos de aplicativos através de mecanismos de comunicação entre processos e chamadas de sistema.
 Tarefas de sistemas operativos são feitas de maneiras diferentes por núcleos diferentes, dependendo do seu desenho e abordagem. Enquanto núcleos monolíticos tentam alcançar seus objetivos executando todos os códigos de sistema no mesmo espaço de endereçamento para aumentar a performance do sistema, micronúcleos executam a maioria dos serviços do sistema no espaço de usuário como servidores, buscando melhorar a manutenção e a modularidade do sistema operativo.
 Visão geral
 Na definição de núcleo, Jochen Liedtke disse que a palavra é "tradicionalmente usada para definir a parte do sistema operativo que é obrigatória e comum a todo software no sistema."
 A maioria dos sistemas operativos depende do conceito de núcleo. A existência de um núcleo é uma consequência natural de projetar um sistema de computador como séries de camadas de abstração, cada uma das funções dependendo das funções das camadas abaixo de si. O núcleo deste ponto de vista, é simplesmente o nome dado ao nível mais inferior de abstração que é implementado em software. Para evitar ter um núcleo, ter-se-ia que projetar todo o software no sistema de modo a não utilizar abstração alguma; isto iria aumentar a complexidade e o projeto a tal ponto que apenas os sistemas mais simples seriam capazes de ser implementados.
 Enquanto isto hoje é chamado núcleo, originalmente a mesma parte do sistema também foi chamado o nucleus ou caroço (Nota, no entanto, este termo caroço também foi usado para se referir a memória primordial de um sistema de computador, por que alguns dos primeiros computadores usaram uma forma de memória chamada memória de caroços magnéticos), e foi concebido originalmente como contendo apenas os recursos de suporte essenciais do sistema operativo.
 Na grande maioria dos casos, o processo de iniciação começa executando o núcleo no modo supervisor. O núcleo depois inicializa a si e depois o primeiro processo. Depois disto, tipicamente, o núcleo não executa diretamente, apenas em resposta para eventos externos (ex., através de chamadas de sistema usados pelos aplicativos para requisitar serviços do núcleo, ou via interrupções usadas pelo hardware para notificar o núcleo sobre eventos). Além disso, tipicamente o núcleo fornece um laço que é executado sempre que nenhum processo esta disponível para execução; geralmente chamado de processo desocupado.
 O desenvolvimento do núcleo é considerado uma das mais complexas e difíceis tarefas em programação. Sua posição central em um sistema operativo implica a necessidade de bom desempenho, que define o núcleo como peça de software crítica e torna seu desenvolvimento correto e implementação correta difícil. Devido a diversas razões, o núcleo pode até não ser capaz de utilizar mecanismos de abstração, que ele fornece a outro software. Tais razões incluem preocupações com o gerenciamento de memória e a falta de reentrância, logo o seu desenvolvimento torna-se ainda mais difícil para engenheiros de software. A otimização do uso de memória faz-se necessária, pois o núcleo não pode utilizar recursos de paginação por demanda, já que ele próprio fornece esta facilidade, tendo, então, que permanecer na memória para tal.
 Geralmente um núcleo vai fornecer recursos para escalonamento de processos de baixo nível, comunicação entre processos, sincronização de processos, troca de contexto, manipulação de blocos de controle de processo, gerenciamento de interrupções, criação e destruição de processos, e suspensão e continuação de processos (veja estados de processos).
 Finalidades básicas do núcleo
 O principal propósito do núcleo é gerenciar os recursos do computador e permitir que outros programas rodem e usem destes recursos. Tipicamente estes recursos consistem de:
 Unidade de processamento central (CPU, o processador): principal parte de um sistema de computação, responsável por executar programas nele. O núcleo tem a responsabilidade de decidir, em qualquer momento, qual dos programas em execução deve ser alocado para o processador ou processadores (cada um dos quais geralmente pode executar um programa por vez)
 Memória: usada para armazenar instruções do programa e dados. Tipicamente, ambos precisam estar presentes na memória de modo a tornar a execução do programa possível. Frequentemente múltiplos programas buscarão acesso à memória ao mesmo tempo, na maioria das vezes exigindo mais memória do que o computador pode disponibilizar. O núcleo é responsável pela decisão de que memória cada processo pode utilizar, e determinar o que fazer quando menos do suficiente está disponível.
 Dispositivos de entrada/saída, tais como teclado, mouse, entradas de disquete, impressoras, telas etc. O núcleo aloca pedidos de aplicativos para realizar entrada/saída para um dispositivo apropriado (ou subseção de um dispositivo, no caso de arquivos em um disco ou janelas em uma tela) e fornece métodos convenientes para o uso do dispositivo (tipicamente abstraído ao ponto onde o aplicativo não precisa mais conhecer os detalhes da implementação do dispositivo).
 Aspectos importantes no gerenciamento de recursos são a definição de um domínio de execução (espaço de endereçamento) e o mecanismo de proteção utilizado para mediar o acesso a recursos dentro de um domínio.
 Núcleos geralmente não oferecem métodos para sincronização e comunicação entre processos (IPC ).
 Um núcleo pode implementar estes recursos ele mesmo, ou depender de alguns processos que ele executa para fornecer estas facilidades a outros processos, no entanto neste caso ele deve oferecer algum modo do IPC permitir que processos acessem as facilidades fornecidas um pelo outro.
 Finalmente, um núcleo deve oferecer um método de acesso a estas facilidades para os programas em execução.
 Gerenciamento de Processos
 A principal tarefa de um núcleo é permitir a execução de aplicativos e ajudá-los com recursos como abstrações de hardware. Um processo define-se por um fluxo de atividades que se utiliza de recursos. Nesse caso, a execução de uma aplicação gera um processo. Processo este que delimita as porções da memória o aplicativo pode acessar. O gerenciamento de processos do núcleo deve levar em conta o equipamento de hardware embarcado para proteção de memória.
 Para executar um aplicativo, um núcleo geralmente cria um espaço de endereçamento, carrega o arquivo contendo as instruções do programa na memória (talvez via paginação por demanda), cria uma pilha para o programa e ramos para uma dada localização dentro do programa, iniciando, portanto, a sua execução.
 Núcleos multitarefa são capazes de dar ao usuário a ilusão de que um número de processos que está sendo executado simultaneamente no sistema é maior do que o número de processos que aquele sistema é fisicamente capaz de executar. Usualmente, o número de processos que um sistema pode executar simultaneamente é igual ao número de CPUs que ele possui instaladas (no entanto, isto pode não ser o caso de processadores que suportam múltiplas linhas de execução simultâneas).
 Em um sistema multitarefas preemptivo, o núcleo dá a todos programas uma parcela do tempo e alterna entre os processos tão rapidamente que dá ao usuário a impressão de que eles estão sendo executados simultaneamente. O núcleo utiliza algoritmos de escalonamento para determinar qual processo será executado a seguir e quanto tempo lhe será dado. O algoritmo escolhido pode permitir que alguns processos tenham uma prioridade mais alta que muitos outros. O núcleo geralmente também provê a esses processos uma maneira de comunicarem-se; isto é chamado comunicação entre processos (IPC ) e as principais implementações são memória compartilhada, troca de mensagens e chamadas de procedimento remoto (veja computação concorrente).
 Outros sistemas (particularmente em computadores menos potentes) podem fornecer multitarefa de cooperação, em que para cada processo é permitida execução ininterrupta até que ele faça uma requisição especial ao núcleo para que ele alterne para outro processo. Tais requisições são conhecidos como "indulgências" (yield ), e tipicamente ocorrem ou em resposta a um pedido para comunicação entre processos, ou para esperar até o acontecimento de um evento. Versões mais antigas do Microsoft Windows e do Mac OS utilizaram o conceito de multitarefa cooperativa, mas alternaram para esquemas preemptivos conforme a potência dos computadores alvo de seu mercado aumentava.
 O sistema operativo pode também suportar o multiprocessamento (multiprocessamento simétrico (SMP ), ou, acesso não-uniforme a memória); neste caso, diferentes programas e linhas de execução podem rodar em diferentes processadores. Um núcleo para tal sistema deve ser projetado para ser reentrante, o que significa que ele pode rodar seguramente duas partes de seu código simultaneamente. Isto tipicamente significa oferecer mecanismos de sincronização (como trava-giros) para assegurar que dois processadores não tentarão modificar os mesmos dados ao mesmo tempo.
 Gerenciamento de Memória
 O núcleo possui acesso completo à memória do sistema e deve permitir que processos acessem a memória com segurança conforme suas necessidades. Frequentemente, o primeiro passo para isso é o endereçamento virtual, geralmente alcançado através da paginação e/ou segmentação. O endereçamento virtual permite ao núcleo fazer com que um endereço físico pareça ser outro, o endereço virtual. Espaços de endereço virtual podem ser diferentes para diferentes processos; a memória acessada por um processo através de um endereço virtual particular pode ser diferente da acessada por um outro processo através do mesmo endereço virtual. Isto possibilita que todos os programas funcionem como se estivessem sendo executados sozinhos, além do núcleo, e por isso evita que aplicativos travem uns aos outros.
 Em vários sistemas, o endereço virtual de um programa pode se referir a dados que não estão na memória atualmente. A cama de indireção oferecida pelo endereçamento virtual permite que o sistema utilize meios de armazenagem de dados, como um disco rígido, para armazenar o que de outro modo teria que permanecer na memória RAM. Como resultado. sistemas operativos podem permitir que programas usem mais memória do que está fisicamente disponível. Quando um programa precisa de dados que não estão na RAM, a CPU avisa o núcleo que isto ocorre, e este responde escrevendo o conteúdo de um bloco de memória inativo para o disco (se necessário) e substituindo-o na memória com os dados requisitados pelo programa. O programa pode então continuar sua execução do ponto em que foi suspenso. Este esquema é geralmente conhecido como paginação por demanda.
 Endereçamento virtual também permite a criação de partições virtuais de memória em duas áreas separadas, uma sendo reservada para o núcleo (espaço de núcleo) e o outra para os aplicativos (espaço de usuário). Os aplicativos não têm permissão do processador para acessar a memória do núcleo, prevenindo, portanto, que um aplicativo possa danificar o núcleo em execução. Esta partição fundamental de espaço de memória contribuiu muito para os projetos de núcleos realmente de propósito geral e é quase universal em tais sistemas, embora alguns núcleos de pesquisa (como o Singularity) usem outros métodos.
 Gerenciamento de dispositivos
 Para realizar funções úteis, processos precisam acessar periféricos conectados ao computador, que são controlados pelo núcleo através do driver do dispositivo. Por exemplo, para mostrar ao usuário algo utilizando a tela, um aplicativo teria que fazer uma requisição ao núcleo que encaminharia a requisição para o seu driver de tela, que é o responsável por gerar a imagem através dos pixels.
 Um núcleo deve manter uma lista de dispositivos disponíveis. Esta lista pode ser conhecida de antemão (como em um sistema embarcado em que o núcleo será reescrito se o hardware disponível mudar), configurada pelo usuário (típico em computadores pessoais antigos e em sistemas projetados para uso pessoal) ou detectada pelo sistema durante a execução (normalmente chamado Plug and Play).
 Num sistema "Plug and Play", um dispositivo realiza primeiro uma sondagem nos diferentes barramentos de hardware, como Interconector de Componentes Periféricos (PCI ) ou Barramento Serial Universal (USB ), para detectar os dispositivos instalados e depois procura os drivers apropriados.
 Como a gestão de dispositivos é uma tarefa muito especifica do SO, os drivers são manipulados de forma diferente pelo tipo de arquitetura do núcleo. Em todos os casos, porém, o núcleo deve fornecer a entrada/saída para permitir que os drivers acessem fisicamente seus dispositivos através de alguma porta ou localização da memória. Decisões muito importantes precisam ser feitas ao projetar o sistema de gestão de dispositivos, já que alguns projetos de acesso podem envolver trocas de contexto, tornando a operação custosa para o processador e causando um gasto excessivo de recursos.
 Chamadas do Sistema
 Para realmente realizar algo útil, um processo deve acessar os serviços oferecidos pelo núcleo. Isto é implementado por cada núcleo, mas a maioria oferece uma Biblioteca padrão do C ou uma Interface de programação de aplicativos, que envolve as funções relativas ao núcleo.
 O método de invocar as funções do núcleo varia entre diferentes núcleos. Se o isolamento de memória está sendo usado, é impossível para um processo de usuário chamar o núcleo diretamente, visto que isso seria uma violação das regras de controle de acesso do processador. Algumas possibilidades são:
 Usar uma interrupção de software simulada. Este método está disponível na maioria dos hardwares, e é, portanto, muito comum.
 Usando um portão de chamada. Um portão de chamada é um endereço especial armazenado pelo núcleo em uma lista na memória do núcleo em uma localização conhecida pelo processador. Quando o processador detecta uma chamada para este endereço, ele ao invés disso redireciona para a localização alvo sem causar nenhuma violação de acesso. Exige suporte no hardware, mas este tipo de hardware é muito comum.
 Usando uma instrução de chamada de sistema especial. Esta técnica exige suporte especial no hardware, que em algumas arquiteturas habituais não possuem (notavelmente, x86). Instruções de chamadas de sistema foram adicionadas a modelos recentes de processadores x86, embora, poucos (mas não todos) sistemas operativos fazem uso destes quando disponíveis.
 Usando uma fila baseada na memória. Um aplicativo que faz um grande número de requisições, mas não precisa esperar o resultado de cada uma pode adicionar detalhes das requisições em uma área da memória que o núcleo sonda periodicamente para encontrar requisições.
 Decisões de desenho do Núcleo
 Problemas com o suporte do núcleo para proteção
 Uma consideração importante no desenho do núcleo é o suporte que ele oferece para proteção contra faltas (tolerância a falhas) e comportamentos mal-intencionados (segurança). Estes dois aspectos geralmente não são claramente distinguidos, e a separação no desenho do núcleo leva a rejeição de uma estrutura hierárquica de proteção.
 Os mecanismos ou políticas oferecidas pelo núcleo podem ser classificados de acordo com vários critérios, como: estático (forçado durante o tempo de compilação) ou dinâmico (forçado durante o tempo de execução); preemptivo ou pós-detecção; de acordo com os princípios de proteção a que eles correspondem (ex. Denning); quer eles sejam suportados pelo hardware ou baseados em linguagem; quer eles sejam mais um mecanismo aberto ou má política compulsiva; e muito mais.
 Tolerância a falhas
 Uma medida útil para o nível de tolerância a falhas de um sistema é quão estrito ele é com relação ao princípio do menor privilégio. Em casos onde múltiplos programas estão rodando em um único computador, é importante prevenir falhas em um dos programas de afetar negativamente outro. Estendendo-se ao desenho com más-intenções mais do que a falha em si, isto também implica a segurança, quando é necessário impedir processos de acessar informações sem que lhes seja dada a devida permissão.
 As duas principais implementações via hardware para proteção (de informações sensíveis) são domínios hierárquicos de proteção (também chamadas arquiteturas anel, arquiteturas de segmento ou modo supervisor), e endereçamento baseado em capacidades.
 Domínios hierárquicos de proteção são muito menos flexíveis, como no caso de qualquer núcleo com uma estrutura hierárquica presumida como um critério de desenvolvimento global. No caso de proteção não é possível designar diferentes privilégios a processos que não estão no mesmo nível de privilégio, e por isso não é possível corresponder aos quatro princípios de Denning para a tolerância a falhas, particularmente o princípio do menor privilégio. Domínios hierárquicos de proteção também carregam uma enorme desvantagem na performance, já que a interação entre diferentes níveis de proteção, quando um processo tem que manipular uma estrutura de dados em ambos 'modo usuário' e 'modo supervisor', sempre exige cópia de mensagens (transmissão por valor). Um núcleo baseado em capacidades, no entanto, é mais flexível em designar privilégios, pode corresponder aos princípios de Denning para a tolerância a falhas, e geralmente não sofrem de problemas de performance da cópia por valor.
 Ambas implementações tipicamente exigem algum suporte de hardware ou firmware para serem operáveis e eficientes. O suporte de hardware para domínios hierárquicos de proteção geralmente é de "modos de CPU." Um modo simples e eficiente de fornecer suporte a hardware é delegar à unidade de gerenciamento de memória a responsabilidade por checar as permissões de acesso para todos acessos a memória, um mecanismo chamado endereçamento baseado em capacidades. Falta na maioria das arquiteturas comerciais, o suporte a MMU para capacidades.
 Uma abordagem alternativa é simular capacidades usando domínios hierárquicos comumente suportados; nesta abordagem, cada objeto protegido deve residir num espaço de endereçamento ao qual o aplicativo não possui acesso; o núcleo também mantém uma lista de capacidades em tal memória. Quando um aplicativo precisa acessar um objeto protegido por uma capacidade, ele realiza uma chamada de sistema e o núcleo realiza o acesso a ele. O custo de performance de trocar de espaço de endereçamento limita a praticabilidade desta abordagem em sistemas com interações complexas entre objetos, mas é utilizado nos sistemas operativos atuais para objetos que não são acessados frequentemente ou que não devem ser feitos rapidamente.
 Implementações onde os mecanismos de proteção não suportados pelo firmware, mas são, ao invés disso, simulados em níveos mais altos (ex. simulando capacidades ao manipular tabelas de páginas em hardware que não possui suporte direto), são possíveis, mas há implicações de performance. No entanto, falta de suporte no hardware pode não ser problema, para sistemas que escolhem usar uma proteção baseada em linguagem.
 Uma decisão importante no projeto do núcleo é a escolha dos níveis de abstração em que os mecanismos e políticas de segurança devem ser implementados. Os mecanismos de segurança do núcleo têm um papel crítico no suporte a segurança nos níveis superiores.<ref>J. Lepreau e outros. A Relevância Persistente do Ssistema Operativo Local aos Aplicativos Globais. Procedimentos da 7a ACM SIGOPS Eur</noinclude>cshelf/book001/book001.html Segurança da Informação: Uma Coleção Integrada de Dissertações], IEEE Comp. 1995.</ref><ref>J. Anderson, Estudo de Planejamento de Segurança de Computadores , Air Force Elect. Systems Div., ESD-TR-73-51, Outubro de 1972.</ref>
 Uma abordagem é utilizar suporte no núcleo e firmware para tolerância a falhas (ver acima), e montar as políticas de segurança para comportamento malicioso em cima disso (adicionando recursos como mecanismos de criptografia quando necessário), delegar mais responsabilidade para o compilador. Implementações que delegam a aplicação de políticas de segurança para o compilador e/ou nível do aplicativo são geralmente chamados segurança baseada em linguagem.
 A falta de muitos mecanismos críticos de segurança nos principais sistemas operativos impede a implementação adequada de políticas de segurança no nível de abstração do aplicativo. Na verdade, um engano muito comum na segurança de computadores é que qualquer política de segurança pode ser implementada no aplicativo, independentemente do suporte no núcleo.
 Proteção baseada em hardware ou linguagem
 Hoje, típicos sistemas de computação usam regras aplicadas pelo hardware sobre quais programas têm permissão para acessar quais dados. O processador monitora a execução e desliga um programa que viole uma regra (ex., um processo de usuário que tenta ler ou escrever na memória do núcleo, e assim por diante). Em sistemas que não possuem suporte para capacidades, processos são isolados um do outro, utilizando-se espaços de endereçamento separados. Chamadas de um processo de usuário no núcleo são regidas pela exigência de que eles usem um dos métodos de chamada do sistema descritos acima.
 Uma abordagem alternativa é usar proteção baseada em linguagem. Em um sistema de proteção baseado em linguagem, o núcleo vai permitir a execução apenas de código produzido por um compilador em que ele confie. A linguagem pode então, ser projetada de modo tal que será impossível para o programador instruir algo que violaria os requisitos de segurança.
 Desvantagens incluem:
 Demora maior para a inicialização efetiva do aplicativo. Aplicações devem ser verificadas sempre que são iniciadas para garantir que foram compiladas utilizando um compilador "correto" ou podem necessitar de recompilação de código fonte ou bytecode.
 Sistemas de tipo inflexível. Em sistemas tradicionais, aplicativos realizam frequentemente operações que não são de tipagem forte. Tais operações não podem ser permitidas em um sistema de proteção baseado em linguagem, o que significa que aplicativos podem precisar ser reescritos e podem, em alguns casos, perder performance.
 Vantagens desta abordagem incluem:
 Separação de espaços de endereçamento desnecessária. A troca de espaços de endereçamento é uma operação lenta que causa grande degradação na performance, e muito trabalho de otimização é feito atualmente para prevenir trocar desnecessárias nos sistemas operativos. Trocar é complemente desnecessário em um sistema de proteção baseada em linguagem, já que todo código opera no mesmo espaço de endereçamento.
 Flexibilidade. Qualquer esquema de proteção que possa ser desenvolvida para ser expresso através de linguagem de programação pode ser implementada através deste método. Mudanças no esquema de proteção (ex. de um sistema hierárquico para um baseado em capacidades) não exigem novo hardware.
 Exemplos de sistemas com proteção baseada em linguagem incluem o JX e Singularity.
 Cooperação de processos
 Edsger Dijkstra provou que partindo de um ponto de vista lógico, operações atômicas de travamento e destravamento operando em semáforos binários são suficientemente primitivos para expressar a qualquer funcionalidade de cooperação entre processos. No entanto esta abordagem é geralmente tomada como deficiente em termos de segurança e eficiência, enquanto que uma abordagem via troca de mensagens é mais flexível.
 Gerenciamento de dispositivos de entrada/saída
 A ideia de um núcleo onde dispositivos de entrada/saída são gerenciados uniformemente com outros processos, como processos paralelos em cooperação, foi proposta e implementada primeiramente por Brinch Hansen (embora ideias similares tenham sido sugeridas em 1967). Na descrição de Hansen disto, os processos "comuns" são chamados processos internos, enquanto que os dispositivos de entrada/saída são chamados processos externos.
 Abordagens de desenvolvimento de todo o núcleo
 Naturalmente, as tarefas e recursos listados acima podem ser fornecidas de vários modos que diferem entre si em projeto e implementação.
 O princípio da separação entre o mecanismo e a política é a diferença substancial entre a filosofia de micronúcleo e núcleo monolítico.Levin 75 Aqui um mecanismo é o apoio que permite a implementação de várias políticas diferentes, enquanto uma política é um "modo de operação" particular. Por exemplo, um mecanismo pode oferecer às tentativas de entrada de um usuário um método de chamar um servidor de autorização para determinar se um acesso deve ser dado; uma política pode ser para o servidor de autorização exigir uma senha e checá-la contra uma senha embaralhada armazenada numa base de dados. Devido ao fato de o mecanismo ser genérico, a política pode ser alterada com mais facilidade (ex. ao exigir o uso de um passe) do que se um mecanismo e política fossem integrados no mesmo módulo.
 Em um micronúcleo mínimo algumas políticas básicas são incluídas, e seus mecanismos permite que o que está rodando sobre o núcleo (a parte remanescente do sistema operativo e outras aplicações) decida quais políticas adotar (como gerenciamento de memória, escalonamento de processo de alto nível, gerenciamento de sistema de arquivos, etc.). Um núcleo monolítico ao invés disso, tende a incluir várias políticas, então restringindo o resto do sistema dependente delas.
 Per Brinch Hansen apresentou um argumento convincente a favor da separação do mecanismo e da política. A falha em preencher completamente esta separação, é uma das maiores causas para a falta de inovação nos sistemas operativos existentes atualmente, um problema comum nas arquiteturas de computador.Jürgen Nehmer A Imoralidade dos sistemas operativos, ou: Pesquisa nos sistemas operativos ainda é Justificável? Notas em Ciência da Computação; Vol. 563. Processo da Oficina Internacional sobre sistemas operativos dos anos 90 em diante. pp. 77 - 83 (1991) ISBN 3-540-54987-0 citação: "Os últimos 25 anos mostraram que a pesquisa sobre arquiteturas de sistemas operativos teve pouco efeito nos principais sistemas operativos." O projeto monolítico é induzido pela abordagem de arquitetura "modo núcleo"/"modo usuário" para proteção (tecnicamente chamada de domínios hierárquicos de proteção), que é comum em sistemas comercias convencionais; na verdade, todo módulo que necessite de proteção é, portanto, preferivelmente incluído no núcleo. Esta ligação entre projeto e "modo privilegiado" pode ser reconduzida até o problema chave da separação do mecanismo e da política; de fato, a abordagem de arquitetura de "modo privilegiado" se funde ao mecanismo de proteção com as políticas de segurança, enquanto a principal abordagem de arquitetura alternativa, endereçamento baseado em capacidades, claramente distingue ambos, levando naturalmente ao desenvolvimento de um micronúcleo design (veja Separação entre proteção e segurança).
 Enquanto núcleos monolíticos executam todo seu código no mesmo espaço de endereçamento (espaço de núcleo) micronúcleos tentam executar a maior parte dos seus serviços no espaço de usuário, buscando aprimorar a manutenção e modulabilidade do código base. A maioria dos núcleos não se encaixa exatamente em uma destas categorias, sendo mais encontrados entre estes dois projetos. Os chamados núcleos híbridos. Projetos mais exóticos como nanonúcleos e exonúcleos estão disponíveis, mas são usados raramente em sistemas produtivos. O virtualizador Xen, por exemplo, é um exonúcleo.
 Núcleos monolíticos
 Em um núcleo monolítico, todos os serviços do sistema operativo rodam junto com a linha de execução principal do núcleo, portanto, também se encontram na mesma área de memória. Esta abordagem permite o acesso vasto e poderoso de hardwares. Alguns desenvolvedores, como desenvolvedor do UNIX Ken Thompson, defendem que é "mais fácil de implementar um núcleo monolítico" que micronúcleos. As principais desvantagens de núcleos monolíticos são as dependências entre os componentes do sistema - um defeito em um driver de dispositivo pode paralisar todo o sistema - e o fato de núcleos grandes podem se tornar muito difíceis de manter.
 BSD
 Linux
 MS-DOS e derivados, incluindo Windows 95, Windows 98 e Windows ME
 Solaris
 Palm OS
 Micronúcleos
 A abordagem de micronúcleo consiste em definir abstrações simples sobre o hardware, com um conjunto de primitivos ou chamadas de sistema para implementar serviços mínimos do sistema operativo como gerenciamento de memória, multitarefas, e comunicação entre processos. Outros serviços, incluindo aqueles normalmente fornecidos por um núcleo monolítico como rede, são implementados em programas de espaço de usuário, conhecidos como servidores. Micronúcleos são mais fáceis de manter do que núcleos monolíticos, mas um grande número de chamadas de sistemas de trocas de contexto podem desacelerar o sistema por que eles geralmente geram mais degradação na performance do que simples chamadas de função.
 Um micronúcleo permite a implementação das partes restantes do sistema operativo como aplicativos normais escritos em linguagem de alto nível, e o uso de diferentes sistemas operativos sobre o mesmo núcleo não-modificado. Ele também torna possível alternar dinamicamente entre sistemas operativos e manter mais de um deles ativos simultaneamente.
 Hurd
 MINIX
 Mach
 Núcleos monolíticos x micronúcleos
 Conforme o núcleo do computador crescem, um número de problemas se torna evidente. Um dos mais óbvios é que o espaço de memória aumenta. Isto é mitigado de certo modo ao aperfeiçoar o sistema de memória virtual, mas nem todas arquitetura de computador suportam memórias virtuais. Para reduzir o espaço utilizado pelo núcleo, modificações extensivas precisam ser realizadas para remover cuidadosamente código inútil, que pode ser muito difícil devido a dependências pouco aparentes entre partes de um núcleo com milhões de linhas de código.
 Pelo começo dos anos 1990, devido a vários problemas de núcleos monolíticos em comparação a micronúcleos, núcleos monolíticos foram considerados obsoletos por virtualmente todos pesquisadores de sistemas operativos. Como resultado, o projeto do Linux, um núcleo monolítico mais do que um micronúcleo foi o tópico da famosa discussão inflamada entre Linus Torvalds e Andrew Tanenbaum. Há méritos em ambos argumentos presentes no debate Tanenbaum–Torvalds.
 Performance
 Núcleos monolíticos são projetados para que todo o seu código fique no mesmo espaço de endereçamento (espaço de núcleo), que alguns desenvolvedores argumentam ser necessário para aumentar a performance do sistema. Alguns desenvolvedores também sustentam a hipótese de que núcleos monolíticos são extremamente eficientes se forem bem escritos.
 A performance de micronúcleos construídos nos anos 1980 e começos dos 1990 era terrível.Härtig 97 Estudos empíricos que mediram a performance destes micronúcleos não analisaram os motivos para tal ineficiência. As explicações para estes dados foram deixadas para o "folclore", com a suposição de que eles eram devido ao aumento da frequência da troca de modo núcleo para modo usuário, devido a maior frequência de comunicação entre processos e a maioria frequência de trocas de contexto.
 De fato, como foi conjeturado em 1995, os motivos para a terrível performance dos micronúcleos podem também ter sido: (1) uma real ineficiência na implementação de toda a abordagem de micronúcleo, (2) conceitos particulares implementados nesses micronúcleos, e (3) a implementação individual destes conceitos. Portanto ainda falta estudar se a solução para construir um micronúcleo eficiente foi, ao contrário de tentativas anteriores, a de aplicar as técnicas corretas de construção.
 No outro extremo, a arquitetura de domínios hierárquicos de proteção que leva a um projeto de núcleo monolítico gera impactos significativos na performance cada vez que há uma interação entre diferentes níveis de proteção (ex. quando um processo tem que manipular uma estrutura de dados em ambos 'modo usuário' e 'modo supervisor'), desde que isto exija cópia de mensagem por valor.
 Em meados de 1990, a maioria dos pesquisadores abandonou a crença de que ajustes cuidadosos poderiam reduzir estes impactos dramaticamente, mas recentemente, novos micronúcleos, otimizados para performance, tais como os L4 e K42 vêm trabalhando nestes problemas.
 Núcleos híbridos
 Núcleos híbridos são um acordo entre o desenvolvimento de micronúcleos e núcleos monolíticos. Isto implica executar alguns serviços (como a pilha de rede ou o sistema de arquivos) no espaço do núcleo para reduzir o impacto na performance de um micronúcleo tradicional, mas ainda executar o código no núcleo (como drivers de dispositivos) como servidores no espaço de usuário.
 BeOS / Haiku
 Microsoft Windows NT
 XNU (núcleo do Darwin utilizado no Mac OS X)
 Nanonúcleos
 Um nanonúcleo delega virtualmente todos os serviços — incluindo até os mais básicos como controlador de interrupções ou o temporizador — para drivers de dispositivo para tornar o requerimento de memória do núcleo ainda menor do que o dos tradicionais micronúcleos.
 Adeos
 Dycos
 EROS
 EKA2
 Jari Operating System
 JNode
 KeyKOS
 LSE/OS
 Mac OS nanonúcleo
 OZONE
 Trion Operating System
 XtratuM
 Exonúcleos
 Um exonúcleo é um tipo de núcleo que não abstrai hardware em modelos teóricos. Ao invés disso, ele aloca recursos físicos de hardware (como o tempo de um processador), páginas de memória e blocos de disco, para diferentes programas. Um programa rodando em um exonúcleo pode ligar para uma biblioteca do sistema operacional que usa o exonúcleo para simular as abstrações de um sistema operativo conhecido, ou ele pode desenvolver abstrações específicas para aquele aplicativo para uma performance superior.
 História do desenvolvimento do núcleo
 Núcleos dos primeiros sistemas operativos
 Falando estritamente, um sistema operativo (e, isto inclui um núcleo) não é obrigado a rodar um computador. Programas podem ser carregados diretamente e executados na máquina de "bare metal", desde que os autores destes programas estiverem dispostos a trabalhar sem nenhuma abstração de hardware ou suporte a sistema operativo. Os primeiros computadores operaram desta maneira durante os anos de 1950, começo dos 1960, eram reiniciados e recarregados entre cada execução de diferentes programas. Eventualmente, pequenos programas auxiliares como carregadores de programas e depuradores foram mantidos na memória entre as execuções, ou carregados de memória somente de leitura. Conforme estas eram desenvolvidas, elas formaram a base do que depois se tornaria o núcleo dos sistemas operativos. A abordagem de "bare metal" ainda é usada hoje em alguns consoles de videogame e sistemas embarcados, mas no geral, computadores novos usam sistemas operativos e núcleos modernos.
 Em 1969 o RC 4000 Multiprogramming System introduziu a filosofia de desenvolvimento de sistemas de pequeno núcleo "na qual sistemas operativos para diferentes propósitos poderiam ser criados de maneira metódica", algo que poderia ser chamado de abordagem de micronúcleo.
 Sistemas operativos de tempo compartilhado
 Na década precedendo o fenômeno Unix, computadores aumentaram muito em poder de processamento — ao ponto de os operadores de computador estarem buscando novos modos de conseguir com que as pessoas usassem o tempo livre em suas máquinas. Uma das maiores evoluções durante esta era foi o tempo compartilhado, em que um número de usuários conseguiria pequenas parcelas do tempo do computador, em uma taxa que fazia parecer que cada um estava conectado à sua própria máquina, embora mais lenta.
 O desenvolvimento dos sistemas de tempo compartilhado levou a inúmeros problemas. Um deles foi que usuários, particularmente em universidades, em que os sistemas estavam sendo desenvolvidos, pareciam tentar hackear o sistema para conseguir mais tempo de processamento. Por esta razão, segurança e controles de acesso se tornaram um foco principal do projeto Multics em 1965. Outro problema corrente era gerenciar apropriadamente os recursos do sistema: usuários gastavam a maior parte do tempo iniciando na tela e pensando ao invés de realmente utilizar os recursos do computador, e o sistema de tempo compartilhado deveria dar tempo de processamento para um usuário ativo durante estes períodos. Por fim, tipicamente os sistemas ofereciam uma hierarquia de memória de várias camadas de profundidade, e particionar este recurso caro levou a um grande desenvolvimento nos sistemas de memória virtual.
 Unix
 Durante a fase de projeto do Unix, os programadores decidiram modelar todo dispositivo de alto nível como um arquivo, por que eles acreditavam que o propósito da computação era a transformação de dados. Por exemplo, impressoras eram representadas como um "ficheiro" em uma localização conhecida — quando dados eram copiados para o arquivo, ela realizava a impressão destes. Outros sistemas, para fornecer uma funcionalidade similar, possuem a tendência de virtualizar dispositivos em um nível mais baixo — ou seja, ambos dispositivos e ficheiros seriam instâncias de algum conceito de nível inferior. Virtualizar o sistema a nível de ficheiros permitiu aos usuários manipular todo o sistema usando seus conceitos e ferramentas de gerenciamento de ficheiros, simplificando a operação dramaticamente. Como uma extensão do mesmo paradigma, o Unix permite que programadores manipulem arquivos usando uma série de pequenos programas, usando o conceito de encadeamento, que permite aos usuários completar operações em etapas, alimentando um ficheiro através de uma cadeia de ferramentas de propósito único. Embora o resultado final fosse o mesmo, usar programas menores aumentou drasticamente a flexibilidade, assim como o uso e desenvolvimento, permitindo que o usuário modificasse seu fluxo de trabalho ao adicionar ou remover um programa da cadeia.
 No modelo Unix, o sistema operativo consiste de duas partes: a primeira é uma enorme coleção de programas de utilidades que guiam a maioria das operações; a segunda, o núcleo que executa os programas. No Unix, do ponto de vista da programação, a distinção entre os dois é extremamente tênue: o núcleo é um programa rodando no modo supervisor, que age como um carregador de programas e supervisor para os pequenos programas de utilidade que integram o resto do sistema e fornecem travas e serviços de entrada/saída para estes programas; além disso, o núcleo não intervém de modo algum no espaço de usuário.
 Ao longo dos anos o modelo de computação mudou, e o tratamento do Unix de tudo como um ficheiro ou fluxo de bytes não era mais universalmente aplicável como antes. Embora um terminal pudesse ser tratado como um ficheiro ou fluxo de bytes, de que se exibia ou lia, o mesmo não parecia ser verdade para a interface gráfica. As redes se tornaram outro problema. Mesmo se a comunicação de rede pudesse ser comparada ao acesso de ficheiros, a arquitetura de baixo nível orientada a pacotes lidava com pedaços discretos de dados e não com ficheiros completos. Conforme a capacidade dos computadores crescia, o Unix se tornava cada vez mais desorganizado com relação a código. Enquanto núcleos podiam ter 100.000 linhas de código nos anos 1970 e 1980, núcleos sucessores modernos do núcleo do Unix como o Linux possuem mais de 4,5 milhões de linhas.
 Derivados modernos do Unix são geralmente baseados em núcleos monolíticos que carregam módulos. Exemplos disto são o Linux, um núcleo monolítico com suporte a núcleos, e diversas distribuições que o incluem, assim como os núcleos das variantes do BSD como FreeBSD, DragonflyBSD, OpenBSD, NetBSD etc. Além destas alternativas, desenvolvedores amadores mantém uma comunidade ativa de desenvolvimento de sistemas operativos, cheia de núcleos que são criados como passatempo que acabam compartilhando vários dos recursos com o Linux e/ou os núcleos do FreeBSD, DragonflyBSD, OpenBSD e NetBSD e/ou sendo compatíveis com eles.
 macOS
 A Apple lançou Mac OS pela primeira vez em , empacotado com o seu computador pessoal Apple Macintosh. Nos primeiros lançamentos, o Mac OS (ou Sistema de Software, como ele foi chamado) careceu de muitos recursos básicos, como multitarefas e um sistema hierárquico. Com o passar tempo, o sistema operacional evoluiu e se tornou o Mac OS 9 com alguns recursos adicionados, mas o núcleo se manteve basicamente o mesmo. Em oposição a isto, o macOS é baseado no Darwin, que utiliza um conceito de núcleo híbrido chamado XNU, criado combinando o núcleo do 4.3BSD e o Mach.
 Amiga
 O Amiga da Commodore foi lançado em , e estava dentre os primeiros (e certamente mais bem sucedidos) computadores domésticos a apresentar um sistema operativo com um micronúcleo. O núcleo do Amiga, a exec.library, era pequena mas capaz, oferecendo multitarefas rápidas e preemptivas em hardware similar ao do Apple Macintosh, e um sistema avançado de ligações dinâmicas que permitia uma expansão fácil.
 Microsoft Windows
 O Microsoft Windows foi lançado em 1985 como uma extensão para o MS-DOS. Devido à sua dependência de outro sistema operativo, todas as versões até a 95 são consideradas um ambiente operacional (e não um sistema operativo propriamente dito). Tal linha de produtos continuou por 1980 e 1990, resultando nos lançamentos das séries Windows 9x, atualizando as capacidades do sistema para endereçamento de 32 bits e multitarefas preemptivo, ao longo dos anos 1990, terminando com o lançamento do Windows Me em 2000.
 O lançamento do Windows XP em outubro de 2001 uniu as duas linhas de produto, com a intenção de combinar a estabilidade do núcleo NT com os recursos ao consumidor das séries 9x. A arquitetura do núcleo do Windows NT é considerada híbrida pois o próprio núcleo contém tarefas como o gerenciador de janelas e o gerenciador de comunicação entre processos, mas vários subsistemas são executados no modo de usuário. O ponto de quebra exato entre espaço de usuário e espaço de núcleo têm deslocado conforme a versão, mas a introdução do UMDF (User-Mode Driver Framework) no Windows Vista e do escalonamento de linha de execução no espaço de usuário no Windows 7, deslocou mais recursos do núcleo para processos no espaço de usuário.
 Desenvolvimento de micronúcleos
 Embora o Mach, desenvolvido na Universidade Carnegie Mellon de a , é o micronúcleo de propósito geral mais conhecido, outros micronúcleos foram desenvolvidos com objetivos mais específicos. Uma família de micronúcleos L4 (principalmente o micronúcleo L3 e o L4) foi criada para demonstrar que micronúcleos não são necessariamente lentos. Implementações mais novas como Fiasco e Pistachio são capazes de executar o Linux junto com outros processos L4 em espaços de endereçamento separados.
 QNX é um Sistema operativo de tempo-real com um projeto de micronúcleo minimalista que vem sendo desenvolvido desde , sendo mais bem-sucedido do que o Mach em alcançar os objetivos do paradigma do micronúcleo. Ele é usado principalmente em sistemas embarcados e em situações em que o software não pode falhar, como nos braços robóticos do ônibus espacial e máquinas que controlam a moeção de vidro a tolerâncias extremamente finas, onde um minúsculo erro poderia custar centenas de milhares de reais.
 Ver também
 Comparação entre núcleos
 Compilador
 Driver de dispositivo
 Entrada/saída
 Falha (tecnologia)
 Filosofia Unix
 Pedido de interrupção
 Memória
 Memória de acesso aleatório
 Memória virtual
 Paginação, Segmentação
 Espaço de troca
 Espaço de usuário
 Unidade de gerenciamento de memória
 Multitarefa
 Processo
 Linha de execução
 Escalonamento
 Tempo compartilhado
 Troca de contexto
 Comunicação entre processos
 Sistema operativo
 Referências
 incluído em livro:
 Hermann Härtig, Michael Hohmuth, Jochen Liedtke, Sebastian Schönberg, Jean Wolter A performance de sistemas baseados no núcleo μ ACM SIGOPS Operating Systems Review, v.31 n.5, p. 66-77, Dec. 1997
 Houdek, M. E., Soltis, F. G., and Hoffman, R. L. 1981. IBM System/38 support for capability-based addressing. In Proceedings of the 8th ACM International Symposium on Computer Architecture. ACM/IEEE, pp. 341–348.
 Intel Corporation (2002) The IA-32 Architecture Software Developer’s Manual, Volume 1: Basic Architecture
 Liedtke, Jochen. Sobre a construção do núcleo μ, Proc. 15th ACM Symposium on Operating System Principles (SOSP), December 1995
 Swift, Michael M; Brian N. Bershad , Henry M. Levy, Improving the reliability of commodity operating systems, ACM Transactions on Computer Systems (TOCS), v.23 n.1, p. 77-110, February 2005
 Leituras importantes
 Andrew Tanenbaum, Operating Systems - Design and Implementation (Third edition);
 Andrew Tanenbaum, Modern Operating Systems (Second edition);
 Daniel P. Bovet, Marco Cesati, The Linux Kernel;
 David A. Peterson, Nitin Indurkhya, Patterson, Computer Organization and Design, Morgan Koffman (ISBN 1-55860-428-6);
 B.S. Chalk, Computer Organisation and Architecture, Macmillan P.(ISBN 0-333-64551-0).
 Ligações externas
 KERNEL.ORG, sítio oficial do Linux.
 Núcleos de Sistemas Operativos no SourceForge
 Núcleos de Sistemas Operativos no Freshmeat
 MIT Sistemaoperacional de Exonúcleo
 Imagem de núcleo - Wiki Debian
 A arquitetura do nanonúcleo do KeyKOS, um artigo de 1992 por Norman Hardy e outros.''.
 Uma visão geral do Ssistema Operativo NetWare, um artigo de 1994 por Drew Major, Greg Minshall, e Kyle Powell (arquitetos pfincipais por trás do SO NetWare).
 Kernelnewbies, uma comunidade para aprender a hackear o Linux.
 Comparação detalhada entre os núcleos dos sistemas operativos mais populares


type: wikipedia

text:
Bagrāmī är ett distrikt i Afghanistan. Det ligger i provinsen Kabul, i den nordöstra delen av landet, kilometer öster om huvudstaden Kabul.
 Omgivningarna runt Bagrāmī är i huvudsak ett öppet busklandskap. Runt Bagrāmī är det ganska tätbefolkat, med invånare per kvadratkilometer. I trakten råder ett kallt ökenklimat. Årsmedeltemperaturen i trakten är °C. Den varmaste månaden är juli, då medeltemperaturen är °C, och den kallaste är januari, med °C. Genomsnittlig årsnederbörd är millimeter. Den regnigaste månaden är februari, med i genomsnitt mm nederbörd, och den torraste är juli, med mm nederbörd.
 Källor
 Indelningar i Kabul (provins)


text:
Το Διαδίκτυο () είναι παγκόσμιο σύστημα διασυνδεδεμένων δικτύων υπολογιστών, οι οποίοι χρησιμοποιούν καθιερωμένη ομάδα πρωτοκόλλων, η οποία συχνά αποκαλείται "TCP/IP" (αν και αυτή δεν χρησιμοποιείται από όλες τις υπηρεσίες του Διαδικτύου) για να εξυπηρετεί δισεκατομμύρια χρήστες καθημερινά σε ολόκληρο τον κόσμο. Οι διασυνδεδεμένοι ηλεκτρονικοί υπολογιστές ανά τον κόσμο, οι οποίοι βρίσκονται σε ένα κοινό δίκτυο επικοινωνίας, ανταλλάσσουν μηνύματα (πακέτα) με τη χρήση διαφόρων πρωτοκόλλων (τυποποιημένοι κανόνες επικοινωνίας), τα οποία υλοποιούνται σε επίπεδο υλικού και λογισμικού. Το κοινό αυτό δίκτυο καλείται Διαδίκτυο.
 Η εμφάνιση του διαδικτύου αποτελεί μια πολύ σημαντική καινοτομία στην τεχνολογία.
 Έχει συμβάλλει στην δημιουργία μιας παγκόσμιας αγοράς και το ποσοστό της έγκρισης του διαδικτύου ξεπερνά τους 4000 χρήστες ανα ώρα ( e Marketer,1999)
 Επιτρέπει στους ανθρώπους σε όλο τον κόσμο να επικοινωνούν και αποτελεί σημαντικό μέσο για την διεξαγωγή των επιχειρήσεων. (F. T. Rothaermel, S. Sugiyama)
 Παρέχει έναν μηχανισμό για την δημιουργία κοινοτήτων η οποία θεωρείται ως μια ομάδα όπου τα άτομα αλληλοϋποστηρίζονται, ανταλλάσσουν απόψεις, έχουν κοινά συμφέροντα και κοινό στόχο (Fernback & Thomson, 1995)
 Χαρακτηρίζεται και ώς κοινότητα του μυαλού που υποδηλώνει την συντονισμένη δράση που αποσκοπεί σε κοινό στόχο και εκφράζει την ψυχική ζωή των ανθρώπων
 Διευκολύνει την έρευνα των μελετητών και χαρακτηρίζεται από διάφορα οφέλη που τους προσφέρει σε σχέση με αυτούς που δεν μπορούν να έχουν πρόσβαση.
 Είναι προσιτό αλλά συγχρόνως ποιοτικά διαφορετικό από τις άλλες μορφές σύνδεσης όπως το τηλέφωνο, το ραδιόφωνο και τη τηλεόραση.
 Συντελεί στην διευκόλυνση και στην διεξαγωγή ψυχολογικών και κοινωνιολογικών πειραμάτων καθώς αποτελεί ένα φθηνό και πρακτικό μέσο χωρίς όμως να σημαίνει οτι αντικαθιστά την υψηλή εγκυρότητα και αποδοτικότητα κατα την επαφή πρόσωπο με πρόσωπο αν και όπως παρατηρήθηκε υπάρχει μια πτώση στην κατ’ ιδίαν επαφή.(Goyder, 1985)
 Το Διαδίκτυο και η επικοινωνία
 Σύμφωνα με την προσέγγιση της "ιντερνετοφιλίας" (ένα μείγμα κλασικής "πλουραλιστικής" προσέγγισης και τεχνολογικού "ντετερμινισμού"), το Διαδίκτυο, αλλά και η ψηφιακή τεχνολογία γενικότερα, έχουν την ικανότητα να δημιουργούν "εικονικούς χώρους", "εικονικές κοινότητες", όπου παύουν να υφίστανται οι κοινωνικές και πολιτιστικές διαχωριστικές γραμμές που υπάρχουν στον πραγματικό κόσμο και που τα παραδοσιακά μέσα επικοινωνίας αδυνατούν να ξεπεράσουν εύκολα. Η επικοινωνία μέσω του διαδικτύου καθίσταται άμεση και αμφίδρομη. Δίνεται η δυνατότητα σε κάθε χρήστη ηλεκτρονικού υπολογιστή συνδεδεμένου στο Διαδίκτυο, να πληροφορηθεί αλλά και να πληροφορήσει ανταλλάσσοντας απόψεις μέσω ενός πιο συμμετοχικού και λιγότερο ελεγχόμενου διαύλου επικοινωνίας. Οι χρήστες αποκτούν ολοένα και περισσότερο την ιδιότητα του παγκοσμίου πολίτη. Υπάρχει έντονη τάση, ήδη από την αρχή της εμφάνισής του διαδικτύου, να θεωρείται ένα άκρως δημοκρατικό μέσο μαζικής επικοινωνίας, το οποίο αποδιαμεσολαβεί την επικοινωνία και καθιστά ισχυρότερο τον μέσο άνθρωπο, καθώς δίνει στον τελευταίο τη δυνατότητα πρόσβασης σε μεγάλο όγκο πληροφοριών συγκεντρωμένων σε ένα "χώρο" και την δυνατότητα της προσωπικής επιλογής των πληροφοριών αυτών. Συνεπώς, η βασική θέση της προσέγγισης αυτής είναι ότι το Διαδίκτυο θα εκδημοκρατίσει την κοινωνία με το να βελτιώσει την επικοινωνία καταργώντας την ανάγκη για διαμεσολάβηση.
 Η τεχνολογία του Διαδικτύου
 Το Διαδίκτυο είναι επικοινωνιακό δίκτυο που επιτρέπει την ανταλλαγή δεδομένων μεταξύ οποιωνδήποτε διασυνδεδεμένων υπολογιστών. Η τεχνολογία του είναι κυρίως βασισμένη στην διασύνδεση επιμέρους δικτύων ανά τον κόσμο και σε πολυάριθμα πρωτόκολλα επικοινωνίας. Στην πιο εξειδικευμένη και περισσότερο χρησιμοποιούμενη μορφή του, με τον όρο Διαδίκτυο περιγράφεται το παγκόσμιο πλέγμα διασυνδεδεμένων υπολογιστών και των υπηρεσιών και πληροφοριών που παρέχει στους χρήστες του. Το Διαδίκτυο χρησιμοποιεί μεταγωγή πακέτων και τη στοίβα πρωτοκόλλων.
 Σήμερα, ο όρος Διαδίκτυο κατέληξε στο να αναφέρεται στο παγκόσμιο αυτό δίκτυο. Για να ξεχωρίζει, το παγκόσμιο αυτό δίκτυο γράφεται με κεφαλαίο το αρχικό "Δ". Η τεχνική της διασύνδεσης δικτύων μέσω μεταγωγής πακέτων και της στοίβας πρωτοκόλλων ονομάζεται διαδικτύωση.
 Η ιστορία του Διαδικτύου
 Οι πρώτες απόπειρες για την δημιουργία ενός διαδικτύου ξεκίνησαν στις ΗΠΑ κατά την διάρκεια του ψυχρού πολέμου. Η Σοβιετική Ένωση είχε ήδη στείλει στο διάστημα τον δορυφόρο Σπούτνικ 1 κάνοντας τους Αμερικανούς να φοβούνται όλο και περισσότερο για την ασφάλεια της χώρας τους. Θέλοντας λοιπόν να προστατευτούν από μια πιθανή πυρηνική επίθεση των Ρώσων δημιούργησαν την υπηρεσία προηγμένων αμυντικών ερευνών ARPA (Advanced Research Project Agency) γνωστή ως DARPA (Defense Advanced Research Projects Agency) στις μέρες μας. Αποστολή της συγκεκριμένης υπηρεσίας ήταν να βοηθήσει τις στρατιωτικές δυνάμεις των ΗΠΑ να αναπτυχθούν τεχνολογικά και να δημιουργηθεί ένα δίκτυο επικοινωνίας το οποίο θα μπορούσε να επιβιώσει σε μια ενδεχόμενη πυρηνική επίθεση.
 Το αρχικό θεωρητικό υπόβαθρο δόθηκε από τον Τζ. Λικλάιντερ (J.C.R. Licklider) που ανέφερε σε συγγράμματά του το "γαλαξιακό δίκτυο". Η θεωρία αυτή υποστήριζε την ύπαρξη ενός δικτύου υπολογιστών που θα ήταν συνδεδεμένοι μεταξύ τους και θα μπορούσαν να ανταλλάσσουν γρήγορα πληροφορίες και προγράμματα. Το επόμενο θέμα που προέκυπτε ήταν ότι το δίκτυο αυτό θα έπρεπε να ήταν αποκεντρωμένο έτσι ώστε ακόμη κι αν κάποιος κόμβος του δεχόταν επίθεση να υπήρχε δίοδος επικοινωνίας για τους υπόλοιπους υπολογιστές. Τη λύση σε αυτό έδωσε ο Πολ Μπάραν (Paul Baran) με τον σχεδιασμό ενός κατανεμημένου δικτύου επικοινωνίας που χρησιμοποιούσε την ψηφιακή τεχνολογία. Πολύ σημαντικό ρόλο έπαιξε και η θεωρία ανταλλαγής πακέτων του Λέοναρντ Κλάινροκ (Leonard Kleinrock), που υποστήριζε ότι πακέτα πληροφοριών που θα περιείχαν την προέλευση και τον προορισμό τους μπορούσαν να σταλούν από έναν υπολογιστή σε έναν άλλο.
 Στηριζόμενο λοιπόν σε αυτές τις τρεις θεωρίες δημιουργήθηκε το πρώτο είδος διαδικτύου γνωστό ως ARPANET. Εγκαταστάθηκε και λειτούργησε για πρώτη φορά το 1969 με 4 κόμβους μέσω των οποίων συνδέονται 4 μίνι υπολογιστές (mini computers 12k): του πανεπιστημίου της Καλιφόρνια στην Σάντα Μπάρμπαρα του πανεπιστημίου της Καλιφόρνια στο Λος Άντζελες, το SRI στο Στάνφορντ και το πανεπιστήμιο της Γιούτα. Η ταχύτητα του δικτύου έφθανε τα 50 kbps και έτσι επιτεύχθηκε η πρώτη dial up σύνδεση μέσω γραμμών τηλεφώνου. Μέχρι το 1972 οι συνδεδεμένοι στο ARPANET υπολογιστές έχουν φτάσει τους 23, οπότε και εφαρμόζεται για πρώτη φορά το σύστημα διαχείρισης ηλεκτρονικού ταχυδρομείου (e-mail).
 Παράλληλα δημιουργήθηκαν και άλλα δίκτυα, τα οποία χρησιμοποιούσαν διαφορετικά πρωτόκολλα(όπως το x.25 και το UUCP) τα οποία συνδέονταν με το ARPANET. Το πρωτόκολλο που χρησιμοποιούσε το ARPANET ήταν το NCP (Network Control Protocol), το οποίο, όμως, είχε το μειονέκτημα ότι λειτουργούσε μόνο με συγκεκριμένους τύπους υπολογιστών. Έτσι, δημιουργήθηκε η ανάγκη στις αρχές του 1970 για ένα πρωτόκολλο που θα ένωνε όλα τα δίκτυα που είχαν δημιουργηθεί μέχρι τότε. Το 1974 λοιπόν, δημοσιεύεται η μελέτη των Βιντ Σερφ (Vint Cerf) και Μπομπ Κάαν (Bob Kahn) από την οποία προέκυψε το πρωτόκολλο TCP (Transmission Control Protocol) που αργότερα το 1978 έγινε TCP/IP, προσετέθη δηλαδή το Internet Protocol (IP), ώσπου το 1983 έγινε το μοναδικό πρωτόκολλο που ακολουθούσε το ARPANET.
 Το 1984 υλοποιείται το πρώτο DNS (Domain Name System) σύστημα στο οποίο καταγράφονται 1000 κεντρικοί κόμβοι και οι υπολογιστές του διαδικτύου πλέον αναγνωρίζονται από διευθύνσεις κωδικοποιημένων αριθμών. Ένα ακόμη σημαντικό βήμα στην ανάπτυξη του Διαδικτύου έκανε το Εθνικό Ίδρυμα Επιστημών (National Science Foundation, NSF) των ΗΠΑ, το οποίο δημιούργησε την πρώτη διαδικτυακή πανεπιστημιακή ραχοκοκκαλιά (backbone), το NSFNet, το 1986. Ακολούθησε η ενσωμάτωση άλλων σημαντικών δικτύων, όπως το Usenet, το Fidonet και το Bitnet.
 Ο όρος Διαδίκτυο/Ίντερνετ ξεκίνησε να χρησιμοποιείται ευρέως την εποχή που συνδέθηκε το ARPANET με το NSFNet και Internet σήμαινε οποιοδήποτε δίκτυο χρησιμοποιούσε TCP/IP. Η μεγάλη άνθιση του Διαδικτύου όμως, ξεκίνησε με την εφαρμογή της υπηρεσίας του Παγκόσμιου Ιστού από τον Τιμ Μπέρνερς-Λι στο ερευνητικό ίδρυμα CERN το 1989, ο οποίος είναι στην ουσία, η "πλατφόρμα", η οποία κάνει εύκολη την πρόσβαση στο Ίντερνετ, ακόμη και στη μορφή που είναι γνωστό σήμερα.
 Οι πληροφορίες στο Διαδίκτυο
 Το Διαδίκτυο, σε συνδυασμό με την ολοένα αναπτυσσόμενη ψηφιακή τεχνολογία, έχει δημιουργήσει μία τεράστια αγορά γνώσεων/πληροφοριών. Παραδοσιακές μορφές τέχνης (όπως για παράδειγμα ο κινηματογράφος και η μουσική) μέσω της ψηφιακής τεχνολογίας παίρνουν την ίδια μορφή (αρχείων δεδομένων) με αντικείμενα που εκ πρώτης όψεως είναι εντελώς διαφορετικά (όπως για παράδειγμα η ιατρική επιστήμη ή κάποιο πρόγραμμα λογισμικού).
 Παρατηρείται λοιπόν μία συγκέντρωση γνώσης ή, αν είναι δυνατό να λεχθεί, πολιτιστικής κληρονομιάς, που σχετίζεται άμεσα με το Ίντερνετ. Το μεγάλο ερώτημα που προκύπτει πλέον είναι το "ποιος θα διοικήσει, ποιος θα ελέγξει την γνώση αυτή".
 Από τη στιγμή που το Διαδίκτυο είναι ένα δίκτυο συνδεδεμένων υπολογιστών, κάθε χρήστης έχει τη δυνατότητα να μοιραστεί πληροφορίες με άλλους χρήστες γενόμενος, πολλές φορές, ο ίδιος δημιουργός και πάροχος των πληροφοριών αυτών. Δεν υπάρχει άμεσος έλεγχος των πληροφοριών που "ανεβαίνουν" στο Διαδίκτυο από κάποιον ιεραρχικά ανώτερο χρήστη ή οργανισμό. Το θέμα της μη ιεραρχημένης πληροφορίας, όμως, τίθεται υπό αμφισβήτηση. Ο όγκος της πληροφορίας στο Διαδίκτυο είναι πράγματι μεγάλος. Παρ' όλα αυτά, υπάρχουν πληροφορίες ευκολότερα και δυσκολότερα προσβάσιμες από τον χρήστη.
 Το Διαδίκτυο κατέστησε εφικτή τη συγκέντρωση μεγάλου όγκου πληροφοριών και επηρέασε σημαντικά τον τρόπο διάθεσής τους, δεν συμβαίνει όμως στον ίδιο βαθμό το ίδιο και στον τρόπο παραγωγής αυτών. Για παράδειγμα, ο τρόπος παραγωγής μιας κινηματογραφικής ταινίας δεν έχει επηρεαστεί σημαντικά από την ύπαρξη του Διαδικτύου, ανεξάρτητα από το αν έχει επηρεαστεί ή όχι από την ψηφιακή τεχνολογία. Παρ' όλα αυτά, και σύμφωνα με την "ιντερνετοφιλική" προσέγγιση, το Διαδίκτυο ασκεί μεγάλη επίδραση στην διαδικασία παραγωγής δημοσιογραφικών προϊόντων. Η δημιουργία της είδησης παύει να είναι πλέον μονοπώλιο λίγων, αφού ο κάθε χρήστης μπορεί εάν το επιθυμεί να δημιουργήσει πληροφορία ανά πάσα στιγμή. Το πιο τρανταχτό παράδειγμα της επίδρασης αυτής είναι τα ιστολόγια (blogs), όπου μπορεί κανείς να εκφέρει απόψεις και να σχολιάσει γεγονότα πάσης φύσεως (βλ. δημοσιογραφία στον ιστό και δημοσιογραφία των πολιτών).
 Ως αποτέλεσμα της επιρροής αυτής του Ίντερνετ στη παραγωγή ειδήσεων, τα όρια μεταξύ ενός απλού χρήστη του Διαδικτύου και ενός επαγγελματία δημοσιογράφου γίνονται περισσότερο δυσδιάκριτα. Αυτό με τη σειρά του οδηγεί στην ανάγκη για επαναπροσδιορισμό της έννοιας της δημοσιογραφίας καθώς και της απαραίτητης εκπαίδευσης των δημοσιογράφων. Η ανάγκη για τον επαναπροσδιορισμό της δημοσιογραφίας, όμως, δεν είναι τόσο μεγάλη σύμφωνα με τους υποστηρικτές της "αντι-πλουραλιστικής" προσέγγισης, καθώς θεωρούν πως το Ίντερνετ δεν μπορεί να ασκήσει ουσιαστική επίδραση στην επικοινωνία γενικότερα και στη δημοσιογραφία ειδικότερα.
 Επίσης, λόγω της μεγάλης συγκέντρωσης γνώσης στο Διαδίκτυο, η έννοια της κοινωνικής ισότητας παίρνει και πάλι μεγάλη σημασία. Το χάσμα ανάμεσα σε πληροφοριακά πλούσιους και πληροφοριακά φτωχούς θα διευρύνεται όσο αυξάνεται η συγκέντρωση της γνώσης αυτής. Το παραπάνω αποτελεί ακόμη έναν λόγο που κάνει πιο επιτακτική την ανάγκη για διερεύνηση του αρχικού ερωτήματος "ποιος θα ελέγξει τη γνώση αυτή".
 Η γλώσσα που χρησιμοποιείται περισσότερο στη διακίνηση της πληροφορίας στο Διαδίκτυο είναι η Αγγλική. Έχοντας αναπτυχθεί τα τελευταία χρόνια, το Διαδίκτυο περιλαμβάνει πλέον ποιοτικά και ποσοτικά ευρύ περιεχόμενο και στις υπόλοιπες γλώσσες των περισσότερο αναπτυγμένων χωρών. Ωστόσο, υπάρχουν ακόμη δυσλειτουργίες και τεχνικά προβλήματα σχετικά με την κωδικοποίηση, όπως το mojibake.
 Νομικά και ηθικά ζητήματα
 Η παραβίαση πνευματικών δικαιωμάτων, η πορνογραφία, η ψευδοπροσωπία και η προσφορά παρανόμων προϊόντων είναι φαινόμενα υπαρκτά στο Ίντερνετ και ο περιορισμός τους είναι ιδιαίτερα δύσκολος. Για παράδειγμα, η λέξη "sex" παραμένει μία από τις πλέον δημοφιλείς στις μηχανές αναζήτησης. Συχνά, η ανησυχία αυτή, που θεωρείται αβάσιμη, μπορεί να υποστηριχθεί από κάποια εγκλήματα ή αποτρόπαιες καταστάσεις (συνήθως περιπτώσεις παιδεραστίας κ.ά.).
 Το Διαδίκτυο έχει κατηγορηθεί ως παράγοντας που έπαιξε ρόλο σε θανάτους. Ο Μπράντον Βέντας (Brandon Vedas) πέθανε από υπερβολική δόση ενός μείγματος νομίμων και παρανόμων ναρκωτικών παρακινούμενος από συνομιλητές του στο IRC. Ο Σων Γούλεϊ (Shawn Woolley) αυτοκτόνησε με πιστόλι για λόγους που σχετίζονται με τον εθισμό του με το EverQuest, ένα Μαζικά Πολυχρηστικό Διαδικτυακό Παιχνίδι Ρόλων (MMORPG), όπως ισχυρίστηκε η μητέρα του. Ο Άρμιν Μάιβες (Armin Meiwes) μαχαίρωσε μέχρι θανάτου και έφαγε μέρος του σώματος του Μπερντ-Γιούργκεν Μπράντες (Bernd Jürgen Brandes) όταν ο τελευταίος απάντησε στην αγγελία του πρώτου που ζητούσε έναν «μεγαλόσωμο άνδρα έτοιμο να σφαγιαστεί και μετά να καταβροχθιστεί».
 Επιπλέον, το Διαδίκτυο είναι μη ελεγχόμενο, με την έννοια ότι δεν υπάρχει κάποια ενιαία κυβερνητική ή άλλη αντίστοιχη αρχή, η οποία θα ελέγχει το περιεχόμενό του πριν αυτό δημοσιευθεί -σύμφωνα με πολλούς χρήστες αυτό θα αποτελούσε λογοκρισία. Όπως χαρακτηριστικά λέγεται "το Διαδίκτυο ελέγχεται από τους χρήστες του". Βεβαίως, οι κρατικές υπηρεσίες και αστυνομίες σε κάθε χώρα, καθώς και οι αντίστοιχες νομοθετικές ρυθμίσεις, παρεμβαίνουν για την αναστολή των αξιόποινων πράξεων που διαπράττονται μέσω Διαδικτύου.
 Επίσης, ένα ακόμη ηθικό ζήτημα είναι ο συγκεντρωτισμός των Μ.Μ.Ε. και αναφέρεται στο ολιγοπώλιο μικρού σχετικά αριθμού εταιριών που κατέχουν τα μέσα και ελέγχουν όλη την αλυσίδα διανομής του προϊόντος. Στα πλαίσια του Διαδικτύου τίθεται το ερώτημα του κατά πόσο οι οικονομικές διαδικασίες στο παρόν καπιταλιστικό γίγνεσθαι περιορίζουν τη δημόσια σφαίρα και το αν είναι αποδεκτή ή κατακριτέα η πρωτοφανής ισοτιμία στην παρουσία και διαχείριση της πληροφορίας και του εμπορεύματος στο χώρο του Ίντερνετ. Επίσης παρά το γεγονός ότι το Ίντερνετ συχνά περιγράφεται ως αποκεντρωμένο, με απροσπέλαστο όγκο πληροφοριών και, συνεπώς, χωρίς κεντρικό έλεγχο, είναι εμφανής η εκτενής ιεράρχηση του περιεχομένου από μηχανές αναζήτησης και η γενικότερη διαιώνιση των ιστοτόπων με την υψηλότερη επισκεψιμότητα.
 Πρόσβαση στο Διαδίκτυο
 Κοινές μέθοδοι πρόσβασης στο Διαδίκτυο είναι η επιλογική και η ευρυζωνική. Δημόσιοι χώροι για χρήση του Διαδικτύου περιλαμβάνουν τις βιβλιοθήκες και τα Internet cafes, όπου υπάρχουν διαθέσιμοι υπολογιστές με σύνδεση στο Διαδίκτυο. Υπάρχουν επίσης, σημεία πρόσβασης στο Διαδίκτυο σε δημόσιους χώρους όπως είναι οι αίθουσες αναμονής αεροδρομίων, μερικές φορές μόνο για σύντομη χρήση ενόσω περιμένουμε. Τέτοια σημεία είναι γνωστά και με διάφορους άλλους όρους, όπως «δημόσια περίπτερα Διαδικτύου», «δημόσια τερματικά Διαδικτύου» και «ιστο - τηλέφωνα».
 Η δικτύωση μέσω Wi-Fi παρέχει ασύρματη πρόσβαση στο Διαδίκτυο. Ασύρματα σημεία πρόσβασης (hotspot) που παρέχουν τέτοια πρόσβαση περιλαμβάνουν τα Wifi-cafes, όπου κάποιος αρκεί να φέρει τις δικές του/της ασύρματες συσκευές όπως φορητό Η/Υ ή PDA. Οι υπηρεσίες αυτές μπορεί να είναι δωρεάν σε όλους, είτε δωρεάν μόνο σε πελάτες, είτε επί πληρωμή. Ένα hotspot δεν χρειάζεται να περιορίζεται σε ένα συγκεκριμένο περιβάλλον. Ολόκληρες πανεπιστημιουπόλεις και πάρκα έχουν αυτή τη δυνατότητα, ακόμη και ολόκληρες περιοχές. Προσπάθειες να συνδεθεί και ο αγροτικός πληθυσμός έχουν οδηγήσει στα ασύρματα κοινοτικά δίκτυα.
 Τα πλεονεκτήματα της πρόσβασης ενός χρήστη μέσω του δικού του υπολογιστή (αντί μέσω δημόσιου τερματικού) περιλαμβάνουν τη δυνατότητα για κατέβασμα και ανέβασμα αρχείων χωρίς περιορισμούς, τη χρήση του αγαπημένου του φυλλομετρητή (ή προγράμματος ανάγνωσης ιστοσελίδων, το οποίο αποτελεί ορθότερη ορολογία των λέξεων: web browser) και των ρυθμίσεων αυτού (το μενού των ρυθμίσεων μπορεί να απενεργοποιηθεί σε έναν δημόσιο υπολογιστή) και την εκτέλεση δραστηριοτήτων στο Διαδίκτυο με τη χρήση δικών του προγραμμάτων και δεδομένων.
 Χώρες με πολύ καλή πρόσβαση στο Ίντερνετ περιλαμβάνουν τη Νότια Κορέα, όπου το 50% του πληθυσμού έχει ευρυζωνική πρόσβαση, τη Σουηδία και τις ΗΠΑ.
 Διαδίκτυο και Ευρωπαϊκή Ένωση
 Το δικαίωμα των Ευρωπαίων πολιτών για ελεύθερη πρόσβαση στο Διαδίκτυο κατοχυρώνεται στο άρθρο 11 του Χάρτη των Θεμελιωδών Δικαιωμάτων της Ευρωπαϊκής Ένωσης περί ελευθερίας της έκφρασης και της ενημέρωσης. Πρόσφατα στο Ευρωπαϊκό Κοινοβούλιο ψηφίστηκε τροπολογία σύμφωνα με την οποία «δεν μπορεί να επιβάλλεται περιορισμός επί των θεμελιωδών δικαιωμάτων και ελευθεριών των τελικών χρηστών, χωρίς να προηγηθεί δικαστική απόφαση... εκτός από περιπτώσεις όπου απειλείται η ασφάλεια των πολιτών και στις οποίες η απόφαση δύναται να είναι αντίστοιχη». Ακόμη όμως και με την εν λόγω τροπολογία η πρόσβαση στο Διαδίκτυο θα μπορεί να απαγορευτεί με σχετικές δικαστικές αποφάσεις που θα επιβάλλει η εκάστοτε εθνική νομοθεσία στο όνομα της απειλής της ασφάλειας. Συγκεκριμένα, η τροπολογία αναφέρει επίσης «...η πρόσβαση στο Διαδίκτυο δεν μπορεί να περιοριστεί χωρίς να προηγηθεί δικαστική απόφαση. Εξαιρούνται οι περιπτώσεις όπου απειλείται η ασφάλεια των πολιτών.» Χαρακτηριστικό παράδειγμα αποτελεί η Βρετανία, στην οποία οι πάροχοι απαγόρευσαν την πρόσβαση σε μια λίστα ιστοσελίδων στην οποία μέχρι τώρα βρίσκονταν σελίδες παιδικής πορνογραφίας, όμως πρόσφατα προστέθηκαν και άλλες, όπως αυτή που αφορά το χάκινγκ (hacking). Στους χρήστες που θα επιχειρούν να εισέλθουν σε κάποια από αυτές τις σελίδες θα απαγορεύεται η είσοδος, ενώ τα ηλεκτρονικά τους ίχνη θα καταγράφονται. Έτσι, παρά την εν λόγω τροπολογία, εξακολουθεί να μην λαμβάνεται υπ’ όψη ότι το αδιάσειστο δικαίωμα της πρόσβασης των πολιτών στο Διαδίκτυο αποτελεί προαπαιτούμενο για την προάσπιση και άλλων θεμελιωδών δικαιωμάτων όπως η γνώση, η παιδεία η ελευθερία έκφρασης και πολιτικής δράσης.
 Είναι σημαντικό, επίσης, να κατανοηθεί πως οι χρήστες του Διαδικτύου δεν είναι πελάτες αλλά πολίτες και ως τέτοιοι θα πρέπει να λογίζονται σε θέματα που αφορούν αφενός την υποδομή του διαδικτύου και αφετέρου το δικαίωμα πρόσβασης σε αυτό. Σχετικά με την υποδομή οφείλει η εκάστοτε εθνική αρχή να μεριμνά για την επέκταση του δικτύου, ακόμη και σε περιοχές που η ιδιωτική πρωτοβουλία αρνείται να προβεί στην απαιτούμενη επένδυση, όταν τη θεωρεί οικονομικά ασύμφορη. Έτσι θα διασφαλιστεί το δικαίωμα των πολιτών για ενημέρωση και ελευθερία έκφρασης. Όσον αφορά την πρόσβαση πρέπει να κατοχυρώνεται το δικαίωμα των πολιτών για ελεύθερη και ισότιμη πρόσβαση όπως αναφέρθηκε και με τα παραπάνω.
 Κίνδυνοι του Διαδικτύου
 Η πρόσβαση στο Διαδίκτυο σήμερα δεν είναι ακίνδυνη, ανεξάρτητα από τον τρόπο χρήσης των υπηρεσιών του. Υπάρχουν κακόβουλοι χρήστες και αρκετές δυνατότητες πρόκλησης ζημιών, τόσο στο επίπεδο του χρησιμοποιούμενου λογισμικού και υλικού, όσο και σε προσωπικό επίπεδο.
 Πρόκληση ζημιών στο υπολογιστικό σύστημα
 Ο κύριος κίνδυνος πρόκλησης ζημιών στο υπολογιστικό σύστημα ενός ανυποψίαστου χρήστη είναι η μόλυνση του συστήματος με κάποιον ιό. Η μόλυνση γίνεται όταν ο χρήστης καλείται να λάβει κάποιο -φαινομενικά αθώο- αρχείο όπως ένα κείμενο ή μια φωτογραφία και, όταν δοκιμάσει να το χρησιμοποιήσει, ο ιός αναλαμβάνει δράση μολύνοντας το σύστημα. Μπορεί να καταστρέψει αρχεία ή και ολόκληρο τον σκληρό δίσκο του συστήματος. Άλλες φορές είναι δυνατή η αποστολή ιού απευθείας από τον ιστοτόπο που επισκέπτεται ο χρήστης, χωρίς να εμφανισθεί κάποια ένδειξη λήψης αρχείου. Η περίπτωση αυτή εκμεταλλεύεται κενά ασφαλείας στο λογισμικό του χρήστη (φυλλομετρητή ή Λειτουργικό σύστημα).
 Παρόμοιας δράσης είναι και ένα πρόγραμμα που αποκαλείται worm (=σκουλήκι). Είναι παρόμοιο σε αποτέλεσμα με τον ιό, αλλά, αντίθετα από αυτόν, δεν απαιτεί την "προσκόλλησή" του σε ένα αρχείο, έχοντας έτσι περισσότερη αυτονομία. Η βλάβη που προκαλεί το worm δεν είναι τόσο ευρεία στο σύστημα, όσο στο δίκτυο σύνδεσης, επειδή καταναλώνει σημαντικό εύρος ζώνης (bandwidth).
 Άλλος κίνδυνος είναι ο Δούρειος Ίππος, ένα πρόγραμμα που ξεγελά τον χρήστη του, ο οποίος χρησιμοποιώντας το νομίζει ότι εκτελεί κάποια εργασία, ενώ στην πραγματικότητα εκτελεί κάποια άλλη, συνήθως εγκατάσταση άλλων κακόβουλων προγραμμάτων. Αντίθετα από τους ιούς, οι δούρειοι ίπποι δεν επιμολύνουν αρχεία.
 Πρόκληση ζημιών σε προσωπικά δεδομένα
 Στην κατηγορία αυτή υπάγονται τόσο οι δούρειοι ίπποι που προαναφέρθηκαν, όσο και κακόβουλα μηνύματα ηλεκτρονικού ταχυδρομείου. Με τον τρόπο αυτό όχι μόνον είναι δυνατό να υφαρπαγούν προσωπικά δεδομένα κάποιου χρήστη, όπως ο αριθμός ταυτότητάς του ή το ΑΦΜ του, όσο και, πιο σημαντικό, αριθμοί πιστωτικών καρτών, λογαριασμών τραπέζης κτλ. Ανάλογη μέθοδος ακολουθείται και από ορισμένους ιστοτόπους, στους οποίους ο ανύποπτος χρήστης καταχωρεί παρόμοια στοιχεία παραγγέλοντας ένα προϊόν, το οποίο όχι μόνο δε θα λάβει ποτέ, αλλά τα δεδομένα του μπορούν να χρησιμοποιηθούν από τους δημιουργούς του ιστοτόπου για να πραγματοποιήσουν οι ίδιοι αγορές, χρεώνοντας τον "πελάτη" τους. Η μέθοδος υφαρπαγής προσωπικών δεδομένων μέσω ηλεκτρονικού ταχυδρομείου αποκαλείται "Phishing" (παραφθορά της λέξης fishing = ψάρεμα). Αρκετά προγράμματα περιήγησης (browsers) αναγνωρίζουν τους ιστοτόπους στους οποίους παραπέμπουν τα παραπλανητικά μηνύματα, ωστόσο αυτό δεν συμβαίνει σε ποσοστό 100%. Οι χρήστες είναι καλό να γνωρίζουν ότι κανείς χρηματοπιστωτικός φορέας δεν χρησιμοποιεί το Διαδίκτυο για να ανανεώσει προσωπικές πληροφορίες, ενώ ένας προστατευμένος ιστότοπος αρχίζει πάντα με το πρόθεμα https (secure, ασφαλής).
 Παραπλάνηση
 Αρκετές φορές οι χρήστες του Διαδικτύου χρησιμοποιούν τις υπηρεσίες του για να βρουν πληροφορίες που χρειάζονται. Μερικοί ιστότοποι εμφανίζουν πληροφορίες, οι οποίες φαινομενικά είναι ακριβείς ή αναφέρουν απόλυτα αξιόπιστους δημιουργούς ή πηγές. Το κίνητρο για τέτοιες πράξεις μπορεί να είναι είτε η αποκομιδή ιδίου οφέλους είτε, απλά, η χαρά της παραπλάνησης των (αγνώστων) χρηστών. Ο όρος που περιγράφει αυτού του τύπου την παραπλάνηση είναι "Hoax". Για περισσότερες πληροφορίες δείτε το Μουσείο των Hoaxes (αγγλικά).
 Προστασία
 Υπάρχουν τρεις τρόποι προστασίας, οι οποίοι θα πρέπει να χρησιμοποιούνται σε συνδυασμό:
 Χρήση τείχους προστασίας (firewall)
 Χρήση λογισμικού προστασίας ενάντια σε ιούς και προγράμματα κατασκοπείας (spyware).
 Συνεχής ενημέρωση των χρηστών.
 Οι πλέον συνηθισμένοι τρόποι εξαπάτησης των χρηστών είναι το Phishing και το Pharming:
 Phishing
 Το phishing είναι η πράξη με την οποία κάποιος προσπαθεί να αποκτήσει πληροφορίες, όπως ονόματα χρηστών, κωδικούς πρόσβασης καθώς και στοιχεία πιστωτικών καρτών (και συνήθως άμεσα ή έμμεσα χρήματα), αφού έχει μεταμφιεστεί σε μια αξιόπιστη οντότητα μιας ηλεκτρονικής επικοινωνίας.
 Οι ανακοινώσεις που υποτίθεται ότι είναι από δημοφιλείς κοινωνικές ιστοσελίδες, ιστοσελίδες δημοπρασιών, απευθείας σύνδεση επεξεργαστών πληρωμής ή διαχειριστές, συνήθως χρησιμοποιούνται για να δελεάσουν το ανυποψίαστο κοινό. Phishing emails μπορεί να περιέχουν συνδέσμους προς ιστοσελίδες που έχουν μολυνθεί με κακόβουλο λογισμικό.
 Το phishing συνήθως εκτελείται από πλαστογραφημένο e-mail ή instant messaging, και συχνά κατευθύνει τους χρήστες να εισάγουν τα στοιχεία σε μια πλαστή ιστοσελίδα, η εμφάνιση και αίσθηση της οποίας είναι σχεδόν πανομοιότυπη με τη νόμιμη. Το phishing είναι ένα από τα παραδείγματα της τεχνικής κοινωνικής μηχανικής που χρησιμοποιούνται για να εξαπατήσουν τους χρήστες, και εκμεταλλεύεται την κακή χρηστικότητα των σημερινών τεχνολογιών ασφαλείας web. Οι προσπάθειες για την αντιμετώπιση του αυξανόμενου αριθμού των αναφερόμενων περιστατικών phishing περιλαμβάνουν τη νομοθεσία, την εκπαίδευση των χρηστών, την ευαισθητοποίηση του κοινού και τεχνικά μέτρα ασφαλείας.
 Μια τεχνική phishing περιγράφεται με λεπτομέρεια το 1987 και (σύμφωνα με τον δημιουργό του) η πρώτη καταγεγραμμένη χρήση του όρου «phishing» έγινε το 1995. Ο όρος είναι μια παραλλαγή της αλιείας, πιθανώς επηρεασμένος από phreaking και παραπέμπει στο «δόλωμα». Χρησιμοποιείται με την ελπίδα ότι το ενδεχόμενο θύμα θα "δαγκώνει" κάνοντας κλικ σε ένα κακόβουλο link ή το άνοιγμα ενός κακόβουλου αρχείου, προγραμματισμένου να αντιγράψει οικονομικά στοιχεία ή και κωδικούς πρόσβασης.
 Η μέθοδος “phishing” συχνά συνδέεται με την αθέμιτη απόκτηση δεδομένων ή τη διάπραξη απάτης στο διαδίκτυο. Η έκφραση “phishing” προέρχεται από την συνήθεια των hackers να χαρακτηρίζουν τους ηλεκτρονικούς τόπους στους οποίους έχουν πρόσβαση “phish”.
 Ειδικότερα, ως “phishing” χαρακτηρίζεται η αποστολή ηλεκτρονικών μηνυμάτων (e-mails) που σκοπό έχουν να προκαλέσουν την κλοπή εμπιστευτικών στοιχείων που ανήκουν στον παραλήπτη του ηλεκτρονικού μηνύματος. Τα ηλεκτρονικά αυτά μηνύματα δίνουν την εντύπωση πως προέρχονται από κάποια τράπεζα και ζητούν από τον παραλήπτη με διάφορες δικαιολογίες και προφάσεις την αποκάλυψη ευαίσθητων δεδομένων, π.χ. τον αριθμό τραπεζικού λογαριασμού του, τον προσωπικό αριθμό αναγνώρισης (PIN). Αν ο ανυποψίαστος παραλήπτης αποκαλύψει τις πληροφορίες αυτές, οι δράστες (phishers) “εισβάλλουν” άμεσα στο λογαριασμό του και, αφού μεταφέρουν χρήματα από αυτόν τον λογαριασμό σε άλλον, τον αδειάζουν.
 Επειδή η μέθοδος “phishing” βασίζεται στην πλάνη του θύματος με σκοπό την περιουσιακή του ζημία, είναι προφανές ότι οι Phishers μέσω αυτής προσπορίζουν στον εαυτό τους ή/και σε τρίτους παράνομο περιουσιακό όφελος. Επειδή δε οι δράστες έχουν γνώση και θέληση σχετικά με την παράνομη δραστηριότητά τους, συμπεραίνεται ότι το “phishing” συνιστά απάτη, κατά το άρθρο 386 του Ποινικού Κώδικα, σύμφωνα με το οποίο «όποιος με σκοπό να αποκομίσει ο ίδιος ή άλλος παράνομο περιουσιακό όφελος βλάπτει ξένη περιουσία πείθοντας κάποιον σε πράξη, παράλειψη ή ανοχή με την εν γνώσει παράσταση ψευδών γεγονότων σαν αληθινών ή την αθέμιτη απόκρυψη ή παρασιώπηση αληθινών γεγονότων τιμωρείται με φυλάκιση τουλάχιστον τριών μηνών και αν η ζημία που προξενήθηκε είναι ιδιαίτερα μεγάλη, με φυλάκιση τουλάχιστον δύο ετών».
 Pharming
 Η τεχνική του “pharming” αποτελεί μέθοδο εξαπάτησης μέσω του διαδικτύου παρόμοια με το “phishing” αλλά σαφώς πιο επικίνδυνη από αυτό. Ένα ειδικό πρόγραμμα εκμεταλλεύεται κενά ασφαλείας του συστήματος, διεισδύει στον υπολογιστή του θύματος και το επηρεάζει κατά τέτοιο τρόπο, ώστε, ακόμη και αν ο χρήστης πληκτρολογεί τη σωστή διεύθυνση του διαδικτυακού τόπου που θέλει να επισκεφτεί, θεωρώντας πως βρίσκεται σε ασφαλή χώρο, ο συγκεκριμένος υπολογιστής τον “οδηγεί” μόνο σε πλαστές ιστοσελίδες. Ειδικότερα, αν πρόκειται για ιστοσελίδα τράπεζας, η προσπάθεια του θύματος να πραγματοποιήσει τις συναλλαγές του μέσω on-line banking καταλήγει στη μεταφορά των χρημάτων του στους δράστες (pharmers).
 Είναι σαφές ότι η αύξηση των ωρών χρήσης του διαδικτύου πολλαπλασιάζει τον κίνδυνο εγκατάστασης προγραμμάτων που καθιστούν δυνατό το “pharming”, το οποίο βαθμιαία εξελίσσεται σε μία από τις σοβαρότερες μορφές εγκληματικότητας στο διαδίκτυο.
 Η μέθοδος “pharming” αποτελεί ένα είδος διείσδυσης μέσω του διαδικτύου, χωρίς τη συναίνεση του νόμιμου κατόχου των στοιχείων. Συνεπώς, η μέθοδος αυτή, εφόσον είναι ολοφάνερο ότι τελείται με δόλο, συνιστά παραβίαση απορρήτου κατά το άρθρο 370 Γ § 2 του Ποινικού Κώδικα, σύμφωνα με το οποίο «όποιος αποκτά πρόσβαση σε στοιχεία που έχουν εισαχθεί σε υπολογιστή ή σε περιφερειακή μνήμη υπολογιστή ή μεταδίδονται με συστήματα τηλεπικοινωνιών, εφόσον οι πράξεις αυτές έγιναν χωρίς δικαίωμα, ιδίως με παραβίαση απαγορεύσεων ή μέτρων ασφαλείας που είχε λάβει ο νόμιμος κάτοχός τους, τιμωρείται με φυλάκιση μέχρι τρεις μήνες ή με χρηματική ποινή τουλάχιστον 29,00 € (...)».
 Συμπερασματικά, οι ανωτέρω δύο μέθοδοι μπορούν να τιμωρηθούν, σύμφωνα με τις ισχύουσες διατάξεις του Ποινικού Κώδικα. Για την αντιμετώπιση τέτοιων φαινομένων κρίνεται απαραίτητη η λήψη τεχνικών μέτρων ασφαλείας, καθώς και η ευαισθητοποίηση των χρηστών του Ίντερνετ, ώστε να μην γίνονται εύκολα θύματα των phishers και των pharmers.
 Δείτε επίσης
 Μουντάνεουμ
 Χάκερ
 Extranet
 Internet Archive
 Intranet
 Πλοηγός Web
 MatterNet
 Διαδίκτυο των πραγμάτων
 Παραπομπές
 Πηγές
 Robins, Kevin & Frank Webster (1999). Times of the Technoculture: From the Information Society to the Virtual Life, London: Routledge.
 Hauben, M. (1994) 'Netizens an Anthology'
 Παναγιωτοπούλου, Ρ. (2003) Η ψηφιακή πρόκληση: ΜΜΕ και Δημοκρατία. Τυπωθήτω
 Graham, G. (2001) Το Ίντερνετ: μια κοινωνιολογική προσέγγιση. Αθήνα: Περίπλους
 Εξωτερικοί σύνδεσμοι
 Η Ελλάδα στο Διαδίκτυο
 Έθνος, 4 Δεκεμβρίου 2007: Η χρήση του Διαδικτύου στην Ελλάδα και στην Ευρώπη.
 Ι. Παναγόπουλος, Κ.Σ. Φίλος, «Ιατρική και Διαδίκτυο: Μέρος 2ον. Ποιότητα πληροφοριών και Διαδίκτυο», Ελληνική Αναισθησιολογία, 2005; 38: 33-40 .
 World of Ends, What the Internet Is and How to Stop Mistaking It for Something Else by Doc Searls and David Weinberger
 The Internet Society (ISOC)
 Internet Mapping Project
 RFC 801, planning the TCP/IP switchover
 Access and usage statistics: , , (pdf)
 Access and usage statistics: «September 2003 Internet Usage Stats» reported by Nielsen//NetRatings Inc. Αρχειοθετήθηκε 1/2/2018
 V7ndotcom Elursrebmem
 Access at home, by native language
 John Walker: The Digital Imprimatur
 Εισαγωγή στην προσβασιμότητα στο διαδίκτυο
 χρήσιμα εργαλεία για το διαδίκτυο στα ελληνικά
 Μανιφέστο
 Στο ekriti.gr άρθρο Η ιστορία του Διαδικτύου.
 Ψηφιακή τεχνολογία
 Εικονική πραγματικότητα
 Τεχνολογία των μέσων ενημέρωσης
 Διαδικτυο


text:
El beso fraternal socialista era una forma especial de saludo entre los líderes socialistas. El acto demostraba la especial conexión que había entre los países socialistas, consistente en un abrazo, seguido de una serie de tres besos en mejillas alternas. En casos poco frecuentes, cuando los dos líderes se consideraban excepcionalmente cercanos, los besos se daban en la boca en lugar de en las mejillas.
 El abrazo fraternal socialista consiste en una serie de tres abrazos intensos, alternados entre el lado izquierdo y derecho del cuerpo, sin besos. Este saludo modificado, sin beso, fue adoptado por los líderes comunistas de Asia, donde no existe la tradición de besarse en la mejilla para saludar. Durante la Guerra Fría, líderes comunistas de Asia aceptaron recibir besos de otros líderes europeos y cubanos, pero entre ellos omitían el beso.
 Historia
 Este ritual tiene su origen en la práctica europea de besarse en la mejilla como saludo entre familiares o amigos cercanos. También se ha asociado con el beso fraternal ortodoxo, una variante del saludo de paz cristiano.
 Con la expansión del comunismo después de la Segunda Guerra Mundial, la Unión Soviética dejó de estar aislada como único país comunista. El beso o abrazo fraternal socialista se convirtió en un saludo solemnizado entre los líderes de los países socialistas o comunistas. El saludo también fue adoptado por líderes socialistas del tercer mundo, así como por líderes de movimientos de liberación alineados con los socialistas, como la Organización para la Liberación de Palestina y el Congreso Nacional Africano.
 Kremlinología
 Los kremlinólogos prestaban atención a si el abrazo fraterno se intercambiaba en los encuentros entre los líderes comunistas, ya que la omisión del habitual saludo indicaba un menor nivel de relaciones entre los dos países.
 Después de la ruptura sino-soviética, los chinos se negaron a abrazar a sus homólogos soviéticos o a dirigirse a ellos como «camaradas». Cuando el primer ministro soviético Nikita Jrushchov trató de abrazar al presidente del Partido Comunista Chino, Mao Zedong, en una visita a Pekín en 1959, Mao dio un paso atrás para evitar el abrazo y ofreció un apretón de manos en su lugar. Incluso con la normalización de las relaciones en 1989, los chinos continuaron omitiendo el abrazo fraternal al saludar a los líderes soviéticos. Esto se hizo para enfatizar que las relaciones sino-soviéticas no estaban regresando al nivel previo a la ruptura de la década de 1950; el protocolo chino insistió específicamente en «un apretón de manos, no un abrazo».
 Debido a su significado simbólico, los líderes comunistas a menudo intercambiaban el abrazo fraternal incluso si tenían importantes desacuerdos, con tal de evitar dar la impresión pública de que sus relaciones eran tensas. Por ejemplo, aunque China y Vietnam se disputan la propiedad de las islas Spratly, sus respectivos líderes siguen intercambiando entre ellos el abrazo fraternal socialista.
 Beso en la mejilla
 El beso fraternal socialista no tiene que ser confundido con los habituales besos en la mejilla entre algunos líderes mundiales. Por ejemplo, es tradicional que el presidente de Francia salude a otros líderes con un beso en ambas mejillas.
 Referencias
 Enlaces externos
 Socialismo
 Beso
 Bloque del Este
 Comunismo


type: contracts

jurisdiction: EU

text:
 4.8.2016
 RO
 Jurnalul Oficial al Uniunii Europene
 L 211/53
 DECIZIA NR. 101/2015 A COMITETULUI MIXT AL SEE
 din 30 aprilie 2015
 de modificare a anexei VI (Securitate socială) la Acordul privind SEE [2016/1284]
 COMITETUL MIXT AL SEE,
 având în vedere Acordul privind Spațiul Economic European („Acordul privind SEE”), în special articolul 98,
 întrucât:
 (1)
 Regulamentul (UE) nr. 1372/2013 al Comisiei din 19 decembrie 2013 de modificare a Regulamentului (CE) nr. 883/2004 al Parlamentului European și al Consiliului privind coordonarea sistemelor de securitate socială și a Regulamentului (CE) nr. 987/2009 al Parlamentului European și al Consiliului de stabilire a procedurii de punere în aplicare a Regulamentului (CE) nr. 883/2004 (1) trebuie încorporat în Acordul privind SEE.
 (2)
 Regulamentul (UE) nr. 1368/2014 al Comisiei din 17 decembrie 2014 de modificare a Regulamentului (CE) nr. 987/2009 al Parlamentului European și al Consiliului de stabilire a procedurii de punere în aplicare a Regulamentului (CE) nr. 883/2004 privind coordonarea sistemelor de securitate socială și a Regulamentului (UE) nr. 1372/2013 al Comisiei de modificare a Regulamentului (CE) nr. 883/2004 privind coordonarea sistemelor de securitate socială și a Regulamentului (CE) nr. 987/2009 al Parlamentului European și al Consiliului de stabilire a procedurii de punere în aplicare a Regulamentului (CE) nr. 883/2004 (2) trebuie încorporat în Acordul privind SEE.
 (3)
 Prin urmare, anexa VI la Acordul privind SEE ar trebui modificată în consecință,
 ADOPTĂ PREZENTA DECIZIE:
 Articolul 1
 Anexa VI la Acordul privind SEE se modifică după cum urmează:
 1.
 La punctul 1 [Regulamentul (CE) nr. 883/2004 al Parlamentului European și al Consiliului] se adaugă următorul text:
 „—
 32013 R 1372: Regulamentul (UE) nr. 1372/2013 al Comisiei din 19 decembrie 2013 (JO L 346, 20.12.2013, p. 27), astfel cum a fost modificat prin:
 —
 32014 R 1368: Regulamentul (UE) nr. 1368/2014 al Comisiei din 17 decembrie 2014 (JO L 366, 20.12.2014, p. 15).”
 2.
 La punctul 2 [Regulamentul (CE) nr. 987/2009 al Parlamentului European și al Consiliului] se adaugă următoarele liniuțe:
 „—
 32013 R 1372: Regulamentul (UE) nr. 1372/2013 al Comisiei din 19 decembrie 2013 (JO L 346, 20.12.2013, p. 27),
 —
 32014 R 1368: Regulamentul (UE) nr. 1368/2014 al Comisiei din 17 decembrie 2014 (JO L 366, 20.12.2014, p. 15).”
 Articolul 2
 Textele Regulamentului (UE) nr. 1372/2013 și ale Regulamentului (UE) nr. 1368/2014 în limbile islandeză și norvegiană, care urmează să fie publicate în suplimentul SEE al Jurnalului Oficial al Uniunii Europene, sunt autentice.
 Articolul 3
 Prezenta decizie intră în vigoare la 1 mai 2015, cu condiția să se fi efectuat toate notificările prevăzute la articolul 103 alineatul (1) din Acordul privind SEE (*).
 Articolul 4
 Prezenta decizie se publică în secțiunea SEE și în suplimentul SEE ale Jurnalului Oficial al Uniunii Europene.
 Adoptată la Bruxelles, 30 aprilie 2015.
 Pentru Comitetul mixt al SEE
 Președintele
 Gianluca GRIPPA
 (1) JO L 346, 20.12.2013, p. 27.
 (2) JO L 366, 20.12.2014, p. 15.
 (*) Nu au fost semnalate obligații constituționale.


type: caselaw

text:
 14.5.2005
 SL
 Uradni list Evropske unije
 C 115/2
 SODBA SODIŠČA
 (tretji senat)
 z dne 3. marca 2005
 v zadevi 32/03 (predlog za sprejem predhodne odločbe Højesteret): I/S Fini H. proti Skatteministeriet (1)
 (Šesta direktiva DDV - Status davčnega zavezanca - Pravica do odbitka - Likvidacija - Neposredna in takojšnja zveza - Postopki, značilni za skupino gospodarskih dejavnosti)
 (2005/C 115/03)
 Jezik postopka: danščina
 V zadevi C-32/03, katere predmet je predlog za sprejem predhodne odločbe na podlagi člena 234 ES, naslovljen na Sodišče z odločbo Højesteret (Danska) z dne 22. januarja 2003, ki je prispel na Sodišče dne 28. januarja 2003, v postopku v glavni stvari, ki poteka med I/S Fini H. in Skatteministeriet, je Sodišče (tretji senat), v sestavi A. Rosas, predsednik senata, A. Borg Barthet, J.-P. Puissochet, J. Malenovský in U. Lõhmus (poročevalec), sodniki, generalni pravobranilec: F. G. Jacobs, sodni tajnik: H. von Holstein, namestnik sodnega tajnika, dne 3. marca 2005 razglasilo sodbo, katere izrek se glasi:
 Člen 4(1) do (3) Šeste direktive Sveta 77/388/EGS z dne 17. maja 1977 o usklajevanju zakonodaje držav članic o prometnih davkih — Skupni sistem davka na dodano vrednost: enotna osnova za odmero je treba razlagati tako, da mora oseba, ki je prenehala s tržno dejavnostjo, a še naprej plačuje najemnino in stroške lokala, ki je služil za to dejavnost, ker najemna pogodba ne vsebuje klavzule o razdrtju, šteti za davčnega zavezanca v smislu tega člena in lahko od tako plačanih zneskov odbije DDV, ker obstaja neposredna in takojšnja zveza med izvedenimi plačili in tržno dejavnostjo, in ker ni bilo ugotovljenega goljufivega namena ali namena zlorabe.
 (1) UL C 83, 5.4.2003.