SEARCH KEYWORD -- memory
How to make select in WinSock exceed the 64-socket limit
When doing cross-platform network programming, the only API available on Windows that corresponds to the epoll/kevent style reactor event model is select. However, it has a limitation: the number of sockets passed into select cannot exceed FD_SETSIZE, which is set to 64. Therefore, select in Java’s NIO on Windows also has the same limit. Many services ported to Windows that use the reactor model face this constraint, which often gives the impression that server programs on Windows hav...
An ex-Mozilla employee's view about Chrome
Chrome now becomes the most popular web browser on the planet because it provides excellent user experience. As a general user, we think it's fast and easy to use. How about those who develop web browsers? How do they think about Chrome? Abhinav Sharma ,an ex-Mozilla employee and now Facebook employee, shared his opinion about Chrome. Mozilla fights an uphill battle given Google's advertising budget and capacity to have some incredibly good engineers and designers work on Chrome. They also came ...
Some thoughts about competitive programming
Many programmers may have experience in participating different kinds of coding competition while they are in college. Many of them are hired by top IT companies for their excellent performance during these kinds of coding competitions. There are some famous competitions organized by IT companies such as Google Code Jam, Facebook hackathons etc. Coding competitions are places where programmers can show their talents in programming and the skills they have. Usually programmers will solve some to...
Coding,competition 2014-03-02 07:26:21
The tips of learning Linux kernel
As the Linux kernel has become one of the most gigantic and complex software project in the world, its complication scare many novices away. In this post, I will give some personal experience on how to learn Linux kernel, and hope these tips can offer some help to newcomers. (1) Download vanilla kernel and install it. Yes, I suggest you can find a physical machine, or if you really don’t have one at hand, virtual machine is also OK. Download the newest vanilla k...
Data as code
What is a good command line parser API? A good command line parser should consider below 5 aspects: Support convenient help information generation Support sub commands, for example, git has push,pull,commit sub commands. Support single character option, word option, flag option and option with parameter. Support default option, for example, if no -port is set, set it as 5037 Support usage model, for example, tar's -c and -x is mutually exclusive, they belong to different usage models. Here are...
Command line,API 2013-08-08 22:40:36
System programming is still there
System programming is the practice of writing system software. System software lives at a low level, interfacing directly with the kernel and core system libraries. Your shell and your text editor, your compiler and your debugger, your core utilities and system daemons are all system software. But so are the network server, the web server, and the database. These components are entirely system software, primarily if not exclusively interfacing with the kernel and the C library. But nowadays more...
System programming 2014-02-27 05:46:48
What to put on whiteboard during an interview
As a programmer, you may go through different kinds of programming tests while interviewing for jobs. The most famous and difficult one may be the whiteboard test for lots of people. Usually the interviewer will give the candidate an algorithm problem or case study and ask the candidate to implement the algorithm with his/her favorite programming language. The code to be written is not too much but it requires the candidate to thoroughly consider different edge cases. So wha...
TIPS,INTERVIEW,WHITEBOARD TEST 2014-08-29 20:34:52
How to maintain a software project?
For a software engineer, at least from my own experience, maintaining an existing software project would take up a considerable amount of time: adding new features, fixing tricky bugs, and so on. In this post, I will share some some tips about how to become a veteran from a novice quickly when facing a new project. (1) Get familiar with the background knowledge of the project. Every software has its own purposes and users: a device driver serves the specified hardware, whilst a SMS gateway helps...
Upcoming Product from Nokia: Nokia 2
With the emergence of telephone, the field of communication has seen a revolution. It was the time when people were able to talk to each other on the phone directly, and the reliance on letters was just reduced. Later entered the cell phones where the users were able to communicate with a phone call or even with SMS. The cell phones made it easy for the users to talk to each other even if they are moving from one place to another. To add value to the cell phones then entered the smartphones to t...
SMARTPHONE,NOKIA 2 2017-11-06 23:29:02
The Go Pointer Magic
Go is a language with the pointer type, by which we can Pass pointer into a function and update value in-place. Add methods to a struct as (* T) A, which is different from (T) A(). However, the pointer is type-safe in Go, meaning that there are such restrictions of the pointer. Different types of pointers are unconvertible. Pointer type cannot be used for calculation. Pointer types cannot be compared, either == nor !=. No mutual assignment between different pointer-...
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>