20145239 Du Wenshu "Basic design of Information security system" course Summary

Source: Internet
Author: User

20145239 Du Wenshu "Fundamentals of Information Security system Design" Summary of weekly activity links
    • No. 0 Week Assignment:
      • Brief content: Install VirtualBox, install Ubuntu, preview Linux basics.
      • Two-dimensional code:
    • First week homework:
      • Brief: Learn about the Linux operating system and master the core Linux commands.
      • Two-dimensional code:
    • Second week assignment:
      • Brief content: Familiar with Linux system development environment, VI Basic operation, GCC compiler basic principle, gcc compiler common options, how to use GDB debugging technology.
      • Two-dimensional code:
    • Third week assignment:
      • Brief content: Understanding "information = bit + context".
      • Two-dimensional code:
    • Week Five homework:
      • Brief content: Understand the reverse, familiar with the X86 Assembly Foundation, ISA.
      • Two-dimensional code:
    • Six weeks Homework:
      • Brief content: Introduces the ISA abstraction, grasps the pipeline and realizes the way, installs the Y86 processor.
      • Two-dimensional code:
    • Seventh Week Assignment:
      • Brief content: Learn about common storage technologies (RAM, ROM, disk, SSD, etc.), master the principle of locality, cache idea, local principle and application of cache thought in storage hierarchy, and the principle and application of cache.
      • Two-dimensional code:
    • Eighth Week assignment:
      • Brief content: Interim summary.
      • Two-dimensional code:
    • Nineth Week Assignment:
      • Summary: Learn how to unix/linux system-level I/O, Rio, and I/O redirection.
      • Two-dimensional code:
    • Tenth Week Assignment:
      • Summary: Learn the video, compile and run, and analyze the practice code.
      • Two-dimensional code:
    • 11th Week Assignment:
      • Summary: Distinguish between array pointers, pointer arrays, function pointers, pointer functions, and understand the kinds, processes, and concurrency concepts of exceptions.
      • Two-dimensional code:
    • 12th Week Assignment:
      • Summary: Consolidate the Nineth Week code, the tenth Week code, and the 11th week code.
      • Two-dimensional code:
    • 13th Week Assignment:
      • Summary: Learn about thread concurrency, threading control and related system calls, thread synchronization mutexes, and related system calls.
      • Two-dimensional code:
    • 14th Week Assignment:
      • Brief content: Mastering the concept and function of virtual memory, the concept of address translation, memory mapping, dynamic memory allocation methods, garbage collection, and memory-related errors in C language.
      • Two-dimensional code:
Summary of LAB Report links
      • Familiarity with the experimental development environment

      • Experimental two firmware development

      • Transplantation of experimental three-time system

      • Experimental four-driver program design

      • Experimental Five network communication

Code Hosting Links
    • Code Cloud: Http://git.oschina.net/929210354/Linux

    • My computer's hard drive was damaged on December 18, all contents of the hard drive were lost, and the virtual machine that was used for a semester after maintenance was gone. Therefore, the code volume summary can not be counted, the situation sentence is true, but also look at the teacher understanding! I'm really sorry.

    • Is code-driven learning done?

To do the code-driven learning. Before the sixth week I hit Code run code is very casual, all files are thrown in a folder, disorganized inefficient, resulting in a once into the ranks, so quickly refer to the teacher's blog "code-driven learning" to re-establish the tree-like code storage directory, and re-git the previous weeks of code, Develop a good habit of knocking a code commit, learning efficiency greatly enhanced, only a week away from the to pass.

    • What lessons do you have in practice?

Starting with the installation of virtual machines, the process of learning this course is a process of constantly discovering problems and solving problems. Many times the face of an unresolved problem is easy to get angry, may rage to escape from the problem or simply give up, so many students to the end of the end to install the virtual machine. I would like to say that in fact, as long as there is a successful operation of the students, stating that you have encountered the problem is not a big problem, it can be resolved, from the mentality of the need to maintain a kind of not afraid of difficulties, the courage to take the initiative to solve the difficult mentality. Whether you are having trouble installing software or compiling code, you should think more and complain less. Think of a way to do it first, and then ask the classmate or teacher.

    • Overall evaluation of the NO. 0 week in the work of their own question is not to seize the focus of learning

Part of the focus of this semester, but the problem itself is too general and superficial.

    • Answer the questions you asked in your No. 0 week's homework.

1. How is the space between various storage devices properly distributed?

Pyramid structure, with optimal control scheduling algorithm and reasonable cost, constitute a storage system with performance acceptable.

2. What are the differences between different encodings?

The number of operands and modes of operation are different for bit bits.

3. How is the operation of the various arrays implemented?

A variety of stack frame structure, register, transfer control and data transfer instructions for the coordination.

4. What is the pipelining principle of the processor?

The CPU divides the operation into one phase (stage). Each stage is composed of a combination logic circuit and a pipeline register.
The CPU controls the signal through the clock cycle, and if it encounters the rising edge of the clock, it moves to the next stage.
Within the CPU, a set of command-decode-execute-fetch-write-back hardware design is formed.
When there is data to complete the operation of the command, you can send a signal to the next command, so that the hardware logic to take instructions will not idle.

5. What are the methods for optimizing program performance?

Suitable algorithm and data structure, write the compiler can effectively optimize to transform into efficient executable code source code, multithreading parallel algorithm.

6. What are the units of memory?

Memory, address register, address decoding drive circuit, read/write control logic, data register, read/write Drive

7. How is relocation implemented?

Cases:

First create the file File1          vi file1
Create file File2 vi file2

Cat File1 file2 >file3

8. How to avoid the risk of errors in signal transmission?

The pending signal is blocked. Pending signals are not queued for processing. System calls can be interrupted. Synchronization stream.

9. What are the functions of virtual storage?

When running a program, if the memory he requires exceeds the capacity of the physical memory, the program runs in step. To complete this part of the function, this part of the program will exit the memory, the memory space to the following to run the program. This way the program will appear to be quite slow to run. Virtual memory is when physical memory is not enough when the physical memory, that is, take out some of the hard disk space to act as memory, when the memory is exhausted, the computer will automatically call the hard disk to act as memory, to alleviate the memory tension. Significantly improve the speed of the program

10. What I/O functions should we use?

Open File Descriptor
Read Reading
Write writes
Close File descriptor
Fcntl Modify the file descriptor, for example, to not block
Lseek the current location of the move file read and write
The IOCTL is similar to FCNTL
Readdir Reading Directory
Select Multi-Channel selection
Readlink Reading Symbolic Links
Stat Read File properties

How is the 11.web server built?

This problem is too general, mainly to learn socket programming, understand the code.

12. What does concurrent programming mean?

Concurrent programming refers to the "simultaneous" processing of multiple tasks on a single processor. Concurrency is a multiple event on the same entity. Multiple events occur at the same time interval.

Plus deduction sub-item
    • What items you have been added to, talk about your experience:

Excellent work

Tenth Week Assignment:

Two-dimensional code:

Tutorial

Using Dosemu to write a compilation in a Linux environment

    • What items have you been deducted from, talk about your lessons:

There are two times after the completion of the blog to forget to submit homework, the lesson is to finish one thing and then to think more about whether things are perfect, there are no gaps and improvements.

    • Advantages and disadvantages of the management system to be passed:

Once entered the ranks, still remember was pulled into a called "Liangshan heroes" group, Inside are to pass the small partner, but I only stayed inside for one weeks, so feel not deep. This system I think it is necessary to continue to carry out, it is to urge the students in the latter part of the enthusiasm of the study has played a big role. The disadvantage is that I feel that writing two blog posts a week is not realistic, to pass the students can seriously independent completion of a blog has been very difficult, two a little imposition, it may be counterproductive.

    • Lessons learned and deficiencies

Your own gains and needs for improvement:

Said harvest is quite abundant too false, said no harvest that is more lies, after all, this is my semester to devote the most time of a course, although the final result is not very ideal, but I know that this achievement and my efforts are proportional to, I can obviously feel their own and high scores of students of the investment and learning attitude Gap. I feel that it is easy to pass the course, because there are a lot of points to get out of the weekly test, and many of the items that can be scored by outside help are relatively high, but it is difficult to get high marks. I feel that this semester also spent a lot of time reading the code, but for many of the contents of the textbook is still smattering, I have been online check our textbook "In-depth understanding of computer systems", he was likened to the computer industry, one of the three "Bible." Why cost so much energy to make every effort to let us read this book, in fact, I can really feel Lou Teacher's good intentions, I also know that I each Sunday red eyes tired knocked down the summary is not useless work. From the beginning to the end of the semester, I saw a lot of students on the course of the change of attitude, many of them may be forced, but I found that they are really computer, code, programming is not so rejection and fear, I really appreciate this course on my thinking attitude changes. However, in the end may be because of their own sometimes lazy, did not take this course to the point of mastery, can only say that understand a general, but a lot of programming and learning habits have left a deep imprint on me, I hope they can really help me on the road ahead.

    • To the beginning of the school you and the study of the younger sisters learn the advice:

The practice of doing a thing can not be lazy, do not always want to say anyway to do is that, or do not understand the sense of no meaning, you first do, finished and then see if there is no meaning.

    • Questionnaire Survey:
      • How long do you spend on average per week in this course? --15-20 hours.
      • Do you improve your weekly learning efficiency? --there is.
      • Are you satisfied with your learning effect? -General, not very satisfied.
      • Will you continue at least one blog post at the end of the course? --Probably not.
      • What do you think the teacher of this class should continue to do? --to implement the management system to pass.
      • What do you think the teacher of this class should stop doing? -There are no clear rules, unfair, subjective discretionary points or deductions.
      • What do you think the teacher of this course should start to do new things? --level teaching, students ' qualifications, Cluth to some students is a imposition.

    • Give your summary of links and QR codes:

This article link: http://www.cnblogs.com/dwc929210354/p/6217325.html

Two-dimensional code:

20145239 Du Wenshu "Basic design of Information security system" course Summary

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.