Symfony2で名前的に混乱しやすそうなのがKernelとHttpKernelで、 Kernelはアプリケーション全体のベースとなる HttpKernelは1つのHTTPリクエストのベースとなる という感じで、Kernelの方がベースよりです。これは説明するまでもないかもしれませんが、フロントコントローラーで一番最初に作られるAppKernelがKernelの方を継承しています。 で、ポイントはHttpKernelの初期化のあたりですが、これはDIコンテナ経由で行われます。 (※DIコンテナ自身はKernelが作ります) Kernel::handle()内部で、 <?php return $this->container->getHttpKernelService()->handle($request, $type, $raw); とコンテナ経由でHttpKernelサービスにアクセスし