desenvolvimento de sistemas Linu e rotas de aprendizagem entrevista FAQ

C / C ++ relacionada

  • c ++ princípio funções virtuais

  • ponteiros inteligentes

  • Como a linguagem c c ++ objetos, bem como membros privados

  • c ++ implementação polimórfica

  • A diferença entre o novo eo malloc ea implementação dos princípios subjacentes

  • A expansão como STL vector

  • processo de inicialização ponteiro de função virtual

  • c ++ 11 átomos de Variáveis ​​Descrição

  • c ++ 11 Quais são as características que costumavam

  • Como entender e reescrever sobrecarregado

  • Como entender a palavra-chave estática em c ++

  • A diferença entre o vector e da lista

  • c ++ alocação de memória

  • E definir o mapa subjacente para alcançar

  • inicialização de variáveis ​​de classe estática

  • O destruidor pode ser virtual? Porquê

  • cópia profunda e cópia superficial

  • Distinção constante ponteiro, o ponteiro constante

c sintaxe da linguagem livros recomendados: "c especialistas de programação", "c ponteiro"
linguagem C ++ livros recomendados: "c ++ Primer", "c ++ Effect"
++ STL subjacente linguagem c princípio: "avião análise stl-source"

rede de computadores

  • Introduzido no reactor e proactor
  • A composição do reactor
  • danos TIME_WAIT
  • TIME_WAIT tempo, e por quê?
  • fragmentação Por IP
  • Ele disse que o projeto usou o pool de threads, muito aberto, porque o uso de pool de threads?
  • selecionar e diferença epoll
  • selecionar o que retorna 0
  • O legível caso epoll
  • Quando eu preciso de quatro vezes TCP acenando?
  • Como configurar um non-blocking
  • O que é um de cópia zero?
  • tcp e udp diferença e cenários
  • Como desenhar um udp confiável
  • Como resolver o pacote de vara
  • Discussão sobre o controle de congestionamento e controle de fluxo
  • a diferença entre o http e https
  • Para saber se o princípio da hijacking intermediário
  • O que http formato do protocolo, vários métodos, funções
  • Chunked bloquear saber? introduzido para
  • Há fragmentada como era quando ContentLength
  • Semijoin em que fase
  • Three-way handshake detalhado processo de handshake de quatro vias, mais detalhado, melhor
  • estrutura libevent, a aplicação interna
  • Onde a confiabilidade é refletida em tcp
  • fluxo de trabalho protocolo ARP
  • O modo epoll ET e LT
  • janela deslizante Introdução
  • A diferença entre um ponteiro e de referência
  • Aceitar que fase ocorre em três vias aperto de mão
  • A diferença entre o tampão e o buffer de recepção e transmitir o TCP de Udp
  • diferença http entre a ligação de conexão longo e curto
  • comprimento de pacote UDP
  • Um processo que vai experimentar visita url
  • Pacotes fora de ordem será processado?
  • seq 1000, enviando os dados de 1000, o próximo seq Quanto?
  • syn se perdidos, quantas vezes retransmissão

TCP / IP relacionados com livros recomendados: "TCP / Comentários: 1"
familiarizados com a ferramenta de captura de pacotes Wireshark que pode ser usado para aprofundar a impressão de uma biblioteca python, scapy / dpkt.

estrutura de dados

  • Métodos de hash de lidar com conflitos
  • Binary Pesquisa e suas variantes
  • A diferença entre uma matriz e uma lista ligada
  • Redis estrutura de dados que usada para entender a tabela de salto?
  • Quais são as vantagens existem mais de árvore binária equilibrada vermelho-preto árvore
  • árvore binária, árvores B +, mistura, busca binária diferença árvore
  • Fale sobre propriedades de árvore vermelho-preto
  • Todos os tipos de árvores, tipo de complexidade de tempo
  • indexação do banco de dados, operação, nível de transação
  • isolamento da transação, sem considerar os problemas que surgirão
  • nível de isolamento transação
  • index tipo
  • AC complexidade de tempo autômatos

livro Estrutura de Dados "Viagem à estrutura de dados."

banco de dados relacionados

  • Como acelerar a busca?

  • Além disso, um índice sobre o jejum?

  • A estrutura subjacente dos índices da base de dados

  • A diferença entre mysql e cache de memória

  • mysql comum de três mecanismo de armazenamento

  • MySQL B + Tree diferença índice entre o índice e Hash?

  • B + índice de árvore significativamente diferentes e os índices hash são:

  • bancos de dados não relacionais e diferença de banco de dados relacional, vantagem comparativa?

  • otimização de consultas mysql comum

recomendações do livro mysql: "mysql deve saber vai ser", "High Performance Mysql", "mysql45 tensões"

sistema operacional

  • A diferença entre os processos e segmentos
  • Multi-processo e diferença de multi-threaded, cenários de aplicação
  • variáveis ​​de diferença átomos voláteis e
  • sistema de arquivos proc
  • A diferença entre os bloqueios de rotação e bloqueio comuns
  • memória virtual
  • processo de distribuição de memória
  • Por alocação de memória pilha e deallocation automaticamente pelo sistema
  • Como criar um daemon
  • Comunicação e diferenças entre processos, cenários de aplicação
  • Impasse condição e liberado
  • agendamento de processos
  • Compreensão da conexão compilador
  • O princípio da memória compartilhada
  • O processo zumbi é como lidar
  • Spinlock usado em cpu única e multi a cpu
  • modo de usuário e modo kernel

Operando livros recomendados do sistema: "a compreensão em profundidade do sistema operacional", "Linux Kernel concepção e implementação."

Linux Básico e Application Programming

  • Como visualizar os arquivos abertos processos

  • Introduzir comando nm e ldd

  • comando a memória verificação, o porto, o tráfego IO, ler e taxas de gravação

  • aplicações específicas awk grep

  • Hard links e conexão suave, possíveis de usar os links de disco rígido de diretório

  • comum comando netstat topo tcpdump iptable

  • MakeFile introduzir (CEfectue introduzir)

  • Ver todos gdb pilha travessia

  • gdb Ver shared_ptr

    Apontando para o conteúdo

  • Como gdb depuração multi-processo multi-threaded

  • g ++ e gcc compilador qualquer diferença

  • Impasse como depurar

  • O que é os arquivos principais arquivo core, gdb depuração

  • Como ler um arquivo de 10G, gato um arquivo que acontece 10g

comandos básicos Linux livros recomendados: "Linux em relação a um tal estudo,"
Linux Application Programming livros Recomendado: "O desenvolvimento de back-end de tecnologias de núcleo e aplicação da prática" "Linux multi-threaded de programação do lado do servidor", "Alto desempenho programação do servidor Linux" "ambiente de programação Linux: a partir da aplicação para o kernel "" unix avançado ambiente de programação "
informações suplementares: gdb manual e makefile em detalhes

O problema de um grande número

  • Qq 20 bilhões, mas na verdade apenas 25 milhões de usuários, encontrar qq duplicado
  • 2,5 bilhões qq ocupa muita memória
  • 1-100 milhões e calculado para encontrar todos os números primos (tarefas de computação intensiva), como lidar com um single-threaded e multi-threaded
  • procedimento escrito 1 arquivo G, enviado de máquina A para B máquina, como o cabelo?
  • 100G texto, ou 80 caracteres por linha de 80k, sugerindo várias máquinas, multi-processo, multi-threaded, para obter a linha mais repetida. A memória da máquina 8G, calculado para cada máquina sobre quantos pontos? 100G pode ler o texto dele? Encontrar taxa de repetição texto do top ten
  • Três ordenou seqüência, para encontrar as partes comuns, pela primeira vez, eu disse com uma tabela hash, ele disse seqüência é muito grande, a complexidade espaço é baixo, eu disse de busca binária, ele pediu para encontrar e sequenciar o fim de três complexidade de tempo. (Tempo de complexidade N * * log N log N)
  • 100WURL, como armazenar
  • 10 servidores, usuário 100w, como balanceamento de carga, como é que vamos ter uma trava de servidores até
  • 10000 dados para encontrar o menor 100? complexidade de tempo?
  • perguntas Cena: QQ número QQ do servidor salva o usuário conectado, enquanto o login, arquivo, haverá um registro, que agora precisa contar o número QQ logado, como fazer? (Deixe-me falar uma partição com um arquivo pequeno, ele disse que, além disso, eu disse matriz de bits, ele perguntou quanta memória?)

O problema de grandes números é a habitual rotina da mistura, divisão e conquista, Bloom, bitmap

algoritmo Shredded

  • Tem lista de anel Analisando
  • A implementação de um singleton
  • Determinar um número de palavras para string
  • algoritmo de evolução
  • escadas do salto de rã
  • Comumente usado triagem (descarga de gravação rápida e a fusão de descarga)
  • lista reversa
  • Duas listas, encontrar nó comum
  • substring encontrar a cadeia mais longa não será repetido
  • LRU
  • código escrito à mão necessário profundidade da árvore
  • produtores e consumidores de escrita
  • Programação classe string
  • Duas matrizes A, B, A B tem alguns busca BA;
  • A entrada para a cadeia, a sua saída do conjunto completo
  • Quantas estatísticas completas nó da árvore binária
  • memcpy alcançar

Aprender algoritmo livros recomendação "para provar a segurança da oferta"
leetcode dividida prática coluna algumas perguntas, não mais, está bem.

Acho que você gosta

Origin www.cnblogs.com/edge0-0/p/12667534.html
Recomendado
Clasificación